首页
简历
直播
统计
壁纸
留言
友链
关于
Search
1
PVE开启硬件显卡直通功能
2,551 阅读
2
在k8s(kubernetes) 上安装 ingress V1.1.0
2,056 阅读
3
二进制安装Kubernetes(k8s) v1.24.0 IPv4/IPv6双栈
1,914 阅读
4
Ubuntu 通过 Netplan 配置网络教程
1,836 阅读
5
kubernetes (k8s) 二进制高可用安装
1,791 阅读
默认分类
登录
/
注册
Search
chenby
累计撰写
197
篇文章
累计收到
142
条评论
首页
栏目
默认分类
页面
简历
直播
统计
壁纸
留言
友链
关于
搜索到
197
篇与
cby
的结果
2021-12-30
一键部署十个服务脚本--可拆分---java+mysql+redis+nginx+rocketmq..等等
java + mysql +redis + minio + nginx + rocketmq + rocketmq-console + elasticsearch + kibana + logstash 一键部署可拆分#!/bin/bash ## 作者:陈步云 ## 微信:15648907522 ## ## ## 将基本环境yum安装的包放入如下目录 ## /Basic-package/basic-rpm ## ## ## 将基础环境服务包放入如下目录 ## /Basic-package ## ## ## function 0-basic-install () { ## 基础环境安装 cd /Basic-package/basic-rpm || exit yum -y install *.rpm systemctl disable firewalld systemctl stop firewalld } function 1-java-install () { ## 作者:陈步云 ## 微信:15648907522 if [ "$(java -version)" ]; then echo "command \"java\" exists on system" else if [ -d "/cby/backend/base-service/" ]; then echo "directory \"/cby/backend/base-service/\" exists" else ## 安装Java程序 cd /Basic-package || exit mkdir -p /cby/backend/base-service/ cp jdk-8u102-linux-x64.tar.gz /cby/backend/base-service/ cd /cby/backend/base-service/ || exit tar -xf jdk-8u102-linux-x64.tar.gz mv /cby/backend/base-service/jdk1.8.0_102/ /cby/backend/base-service/jdk8/ fi if [ "$(grep "JAVA_HOME=/usr/local/jdk1.8.0_151" /etc/profile)" ]; then echo 'JAVA_HOME in profile' else ## 添加Java环境变量 echo 'export JAVA_HOME=/cby/backend/base-service/jdk8' >> /etc/profile echo -e 'export PATH=$PATH:$JAVA_HOME/bin' >> /etc/profile echo -e 'export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar' >> /etc/profile source /etc/profile fi fi echo "java version:" java -version } function 2-mysql-install () { ## 作者:陈步云 ## 微信:15648907522 if [ "$(mysql -V)" ]; then echo "command \"mysql\" exists on system" else cd /Basic-package || exit if [ -x "mysql-5.7.34-1.el7.x86_64.rpm-bundle.tar" ]; then echo "file \"mysql-5.7.34-1.el7.x86_64.rpm-bundle.tar\" is executable" else ## 解压安装包的文件 tar xvf mysql-5.7.34-1.el7.x86_64.rpm-bundle.tar yum install ./*.rpm -y fi ## 启动服务,并开机自启 if [ "$(mysql -V)" ]; then systemctl start mysqld systemctl enable mysqld fi ## 查看MySQL默认密码 echo 'mysql password:' sudo grep 'temporary password' /var/log/mysqld.log | awk '{print $11}' ## 默认密码获取 mysqlpssswd=$(sudo grep 'temporary password' /var/log/mysqld.log | awk '{print $11}') ## 一系列授权操作 mysql -u root -p$mysqlpssswd -e "set global validate_password_length=0;" --connect-expired-password mysql -u root -p$mysqlpssswd -e "set global validate_password_policy=0;" --connect-expired-password mysql -u root -p$mysqlpssswd -e "set password for 'root'@'localhost' = password('123456');" --connect-expired-password mysql -u root -p$mysqlpssswd -e "use mysql;" --connect-expired-password mysql -u root -p$mysqlpssswd -e "grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;" --connect-expired-password mysql -u root -p123456 -e "flush privileges;" --connect-expired-password fi } function 3-redis-install () { ## 作者:陈步云 ## 微信:15648907522 yum install -y gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel if [ "$(redis-server --version)" ]; then echo "command \"redis\" exists on system" else if [ -d "/cby/backend/base-service/" ]; then echo "directory \"/cby/backend/base-service/\" exists" else mkdir -p /cby/backend/base-service/ fi if [ -d "/cby/backend/base-service/" ]; then ## 解压安装服务 cd /Basic-package || exit cp redis-5.0.12.tar.gz /cby/backend/base-service/ cd /cby/backend/base-service/ || exit tar xf redis-5.0.12.tar.gz mv /cby/backend/base-service/redis-5.0.12/ /cby/backend/base-service/redis/ else mkdir -p /cby/backend/base-service/ fi if [ -d "/cby/backend/base-service/redis/" ]; then cd /cby/backend/base-service/redis/ || exit ## 写入配置文件 cat >redis.conf<<EOF bind 0.0.0.0 protected-mode no daemonize yes EOF ## 编译此服务 make -j "$(cat /proc/cpuinfo |grep "processor"|wc -l)" fi if [ -d "/cby/backend/base-service/redis/src/" ]; then cd /cby/backend/base-service/redis/src/ || exit make install fi ## 进入安装目录后启动服务 cd /cby/backend/base-service/redis/ || exit redis-server redis.conf fi } function 4-minio-install () { #!/bin/bash ## 作者:陈步云 ## 微信:15648907522 if [ "$(/cby/backend/base-service/minio/minio -v)" ]; then echo "command \"minio\" exists on system" else if [ -d "/cby/backend/base-service/minio/" ]; then echo "directory \"/cby/backend/base-service/minio/\" exists" else ## 添加执行权限并将服务拷贝到目的地 cd /Basic-package || exit mkdir -p /cby/backend/base-service/minio/ cp minio /cby/backend/base-service/minio/ cd /cby/backend/base-service/minio/ || exit chmod +x minio fi if [ "$(grep "MINIO_ACCESS_KEY" /etc/profile)" ]; then echo 'MINIO_ACCESS_KEY in profile' else ## 将账号密码写入环境变量 echo -e 'export MINIO_ACCESS_KEY=minio' >> /etc/profile echo -e 'export MINIO_SECRET_KEY=thinker@123' >> /etc/profile source /etc/profile fi if [ -d "/cby/backend/base-service/minio/data" ]; then echo "directory \"/cby/backend/base-service/minio/data\" exists" else mkdir -p /cby/backend/base-service/minio/data fi if [ -x "/cby/backend/base-service/minio/minio" ]; then echo "file \"/cby/backend/base-service/minio/minio\" is executable" source /etc/profile nohup /cby/backend/base-service/minio/minio server --address 0.0.0.0:9000 /cby/backend/base-service/minio/data > minio.log 2>&1 & fi fi } function 5-nginx-install () { ## 作者:陈步云 ## 微信:15648907522 if [ "$(/cby/backend/base-service/nginx/sbin/nginx -v)" ]; then echo "command \"nginx\" exists on system" else if [ -d "/cby/backend/base-service/" ]; then echo "directory \"/cby/backend/base-service/\" exists" else mkdir -p /cby/backend/base-service/ fi if [ -d "/cby/backend/base-service/nginx-1.18.0/" ]; then echo "directory \"/cby/backend/base-service/nginx-1.18.0/\" exists" else ## 解压所需包并安装所需依赖 cd /Basic-package || exit cp nginx-1.18.0.tar.gz /cby/backend/base-service/ cd /cby/backend/base-service/ || exit tar -zxf nginx-1.18.0.tar.gz yum install -y gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel fi if [ -d "/cby/backend/base-service/nginx" ]; then echo "directory \"/cby/backend/base-service/nginx\" exists" else mkdir -p /cby/backend/base-service/nginx fi if [ -d "/cby/backend/base-service/nginx-1.18.0/" ]; then ## Nginx编译 echo "directory \"/cby/backend/base-service/nginx-1.18.0/\" exists" cd /cby/backend/base-service/nginx-1.18.0/ || exit ./configure --prefix=/cby/backend/base-service/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module make -j "$(cat /proc/cpuinfo |grep "processor"|wc -l)" make install else exit 1 fi if [ "$(/cby/backend/base-service/nginx/sbin/nginx -v)" ]; then echo "command \"nginx\" exists on system" echo 'nginx version is :' /cby/backend/base-service/nginx/sbin/nginx -v fi fi } function 6-rocketmq-install () { ## 作者:陈步云 ## 微信:15648907522 if [ "$(ls /cby/backend/base-service/rocketmq/startup.sh)" ]; then echo "command \"rocketmq\" exists on system" else if [ -d "/cby/backend/base-service/" ]; then echo "directory \"/cby/backend/base-service/\" exists" else mkdir -p /cby/backend/base-service/ fi if [ -d "/cby/backend/base-service/package/rocketmq/" ]; then echo "directory \"/cby/backend/base-service/package/rocketmq/\" exists" else mkdir -p /cby/backend/base-service/package/rocketmq/ fi if [ -d "/cby/backend/base-service/rocketmq/" ]; then echo "directory \"/cby/backend/base-service/rocketmq/\" exists" else cd /Basic-package || exit yum -y install unzip cp -r rocketmq/ /cby/backend/base-service/package/ cd /cby/backend/base-service/package/rocketmq/ || exit unzip rocketmq-all-4.5.2-bin-release.zip mv rocketmq-all-4.5.2-bin-release/ /cby/backend/base-service/rocketmq/ cp *.sh /cby/backend/base-service/rocketmq/ cd /cby/backend/base-service/rocketmq/ || exit sh /cby/backend/base-service/rocketmq/startup.sh fi ## 测试消息 if [ -x "/cby/backend/base-service/rocketmq/bin/tools.sh" ]; then echo "file \"/cby/backend/base-service/rocketmq/bin/tools.sh\" is executable" echo '发送测试消息' bash /cby/backend/base-service/rocketmq/bin/tools.sh /cby/backend/base-service/rocketmq/org.apache.rocketmq.example.quickstart.Producer echo '接受测试消息' bash /cby/backend/base-service/rocketmq/bin/tools.sh /cby/backend/base-service/rocketmq/org.apache.rocketmq.example.quickstart.Consumer fi fi } function 7-rocketmq-console-install () { ## 作者:陈步云 ## 微信:15648907522 if [ "$(ls /cby/backend/base-service/rocketmq-console/startup.sh)" ]; then echo "command \"rocketmq-console\" exists on system" else if [ -d "/cby/backend/base-service/" ]; then echo "directory \"/cby/backend/base-service/\" exists" else mkdir -p /cby/backend/base-service/ fi if [ -d "/cby/backend/base-service/rocketmq-console" ]; then echo "directory \"/cby/backend/base-service/rocketmq-console\" exists" else ## 将所需包拷贝过去并启动 cd /Basic-package || exit cp -r rocketmq-console/ /cby/backend/base-service/rocketmq-console cd /cby/backend/base-service/rocketmq-console/ || exit sh startup.sh fi fi } function 8-Elasticsearch-install () { ## 作者:陈步云 ## 微信:15648907522 if [ "$(ls /openes/elasticsearch)" ]; then echo "command \"elasticsearch\" exists on system" else ## 修改一些配置 cat >>/etc/security/limits.conf<<EOF ## 添加以下内容 * soft nofile 65536 * hard nofile 131072 * soft nproc 4096 * hard nproc 4096 EOF cat >"$(ls /etc/security/limits.d/*.conf)"<<EOF # Default limit for number of user's processes to prevent # accidental fork bombs. # See rhbz #432903 for reasoning. * soft nproc 4096 root soft nproc unlimited EOF cat >>/etc/sysctl.conf<<EOF vm.max_map_count=655360 EOF if [ -d "/openes/" ]; then echo "directory \"/openes/\" exists" else cd /Basic-package || exit mkdir -p /openes/ ## 创建目录后将安装包拷贝过去 cp elasticsearch-7.13.2-linux-x86_64.tar.gz /openes/ ## 添加用户并设置密码 useradd openes echo "es" | passwd --stdin openes chown -R openes:openes /openes/ sysctl -p su - openes <<! cd /openes tar xf elasticsearch-7.13.2-linux-x86_64.tar.gz mv elasticsearch-7.13.2/ elasticsearch/ if [ -d "/openes/es_repo/data" ]; then echo "directory \"/openes/es_repo/data\" exists" else mkdir -p /openes/es_repo/data fi if [ -d "/openes/es_repo/logs" ]; then echo "directory \"/openes/es_repo/logs\" exists" else mkdir -p /openes/es_repo/logs fi cat >>/openes/elasticsearch/config/elasticsearch.yml<<EOF ## 修改以下配置 node.name: node-1 ## 数据目录位置 path.data: /openes/es_repo/data ## 日志目录位置 path.logs: /openes/es_repo/logs cluster.initial_master_nodes: ["node-1"] ## 绑定到0.0.0.0,允许任何ip来访问 network.host: 0.0.0.0 EOF /openes/elasticsearch/bin/elasticsearch -d ! fi sleep 20s curl -I http://127.0.0.1:9200/ fi } function 9-Kibana-install () { ## 作者:陈步云 ## 微信:15648907522 if [ "$(ls /openes/kibana)" ]; then echo "command \"elasticsearch\" exists on system" else cd /Basic-package || exit mkdir -p /openes/ ## 创建目录后将安装包拷贝过去 ## 并赋予权限 cp -r kibana/ /openes/package/ chown -R openes:openes /openes/ su - openes <<! cd /openes/package/ tar xf kibana-7.13.2-linux-x86_64.tar.gz mv kibana-7.13.2-linux-x86_64/ /openes/kibana/ mv *.sh /openes/kibana/ cat >>/openes/kibana/config/kibana.yml<<EOF ## 修改以下配置 server.port: 5601 server.host: "0.0.0.0" elasticsearch.hosts: ["http://127.0.0.1:9200"] kibana.index: ".kibana" i18n.locale: "zh-CN" EOF cd /openes/kibana/ sh startup.sh ! sleep 20s ## 测试验证 curl -I http://127.0.0.1:5601/ fi } function 10-Logstash-install () { ## 作者:陈步云 ## 微信:15648907522 if [ "$(ls /openes/logstash)" ]; then echo "command \"logstash\" exists on system" else cd /Basic-package || exit mkdir -p /openes/ ## 创建目录后将安装包拷贝过去 ## 并赋予权限 cp logstash-7.13.2-linux-x86_64.tar.gz /openes/ chown -R openes:openes /openes/ ## 切换用户在另一个用户中执行 su - openes <<! cd /openes/ tar xf logstash-7.13.2-linux-x86_64.tar.gz mv logstash-7.13.2/ /openes/logstash/ if [ -d "/openes/es_repo/data" ]; then echo "directory \"/openes/es_repo/data\" exists" else mkdir -p /openes/es_repo/data fi if [ -d "/openes/es_repo/logs" ]; then echo "directory \"/openes/es_repo/logs\" exists" else mkdir -p /openes/es_repo/logs fi cat >>/openes/logstash/config/logstash.yml<<EOF ## 修改以下配置 path.data: /openes/logstash_repo/data path.logs: /openes/logstash_repo/logs EOF cat >/openes/logstash/config/logstash-data-govern.conf<<EOF ## Sample Logstash configuration for creating a simple ## tcp -> Logstash -> Elasticsearch pipeline. input { tcp { mode => "server" host => "0.0.0.0" port => 4560 codec => json_lines } } output { elasticsearch { hosts => ["http://127.0.0.1:9200"] index => "data-govern-%{+YYYY.MM.dd}" } } EOF cd /openes/logstash/ || exit chown -R openes:openes /openes/ source /etc/profile nohup ./bin/logstash -f config/logstash-data-govern.conf > logstash.log 2>&1 & ! "ps -aux|grep logstash" fi } 0-basic-install 1-java-install 2-mysql-install 3-redis-install 4-minio-install 5-nginx-install 6-rocketmq-install 7-rocketmq-console-install 8-Elasticsearch-install 9-Kibana-install 10-Logstash-install Linux运维交流社区Linux运维交流社区,互联网新闻以及技术交流。32篇原创内容公众号本文使用 文章同步助手 同步
2021年12月30日
639 阅读
0 评论
0 点赞
2021-12-30
华为 A800-9000 服务器 离线安装MindX DL 可视化环境+监控
MindX DL Sample主要应用于企业的数据中心或超算中心机房中,针对不同的应用场景为客户提供AI深度学习端到端解决方案。 传统行业:用户无自建深度学习平台,希望能够提供简单易用、软硬件一体化的深度学习平台。 互联网和安防行业:用户有自建深度学习平台,希望提供适配客户深度学习平台的开源插件,快速上线昇腾系列AI处理器的深度学习。 超算中心和公有云行业:用户无AI深度学习集群,希望提供大规模AI深度学习集群、支持超高密部署、整柜交付,缩短项目交付周期,加速业务上线,节省安装部署及调测成本。 说明:此文档需要先将基础kubernetes环境下的DL搭建完成,参考《华为 A800-9000 服务器 离线安装MindX DL》 一、 修改ansible配置文件root@ubuntu:/etc/ansible# vim hosts root@ubuntu:/etc/ansible# root@ubuntu:/etc/ansible# root@ubuntu:/etc/ansible# root@ubuntu:/etc/ansible# cat /etc/ansible/hosts [all:vars] # NFS service IP nfs_service_ip=192.168.1.99 # Master IP master_ip=192.168.1.99 [workers] localnode ansible_host=192.168.1.99 ansible_ssh_user=root ansible_ssh_pass=123123 root@ubuntu:/etc/ansible# root@ubuntu:/etc/ansible# root@ubuntu:/etc/ansible# root@ubuntu:/etc/ansible# vi /etc/ansible/ansible.cfg # 取消以下两行内容的注释并更改deprecation_warnings为“False”。 host_key_checking = False deprecation_warnings = False二、下载基础镜像root@ubuntu:/etc/ansible# docker pull redis:5.0.8 5.0.8: Pulling from library/redis 3d48095d71a3: Pull complete 773882920678: Pull complete b04905edf724: Pull complete 90e236b4682b: Pull complete fb7d8181d1c6: Pull complete 532c81fe8c61: Pull complete Digest: sha256:96bdb5e2984b15e3cf4de74077f650c911cb26ec0981e0772df35a1a5cb19798 Status: Downloaded newer image for redis:5.0.8 root@ubuntu:/etc/ansible# root@ubuntu:/etc/ansible# docker pull prom/prometheus:v2.10.0 v2.10.0: Pulling from prom/prometheus 596fa44d463e: Pull complete ae7a0e9c5457: Pull complete 3e3e880277a4: Pull complete d884b32e16d7: Pull complete 6f45dfbc8251: Pull complete e7275b596775: Pull complete d3c1f1d7d1d1: Pull complete f040a278aa08: Pull complete 403fefd2b7ea: Pull complete Digest: sha256:b89e9c7ffbfbc8efebd6d8ff89b33175625bb2c7ae2751fbcd89f0884cfbdcab Status: Downloaded newer image for prom/prometheus:v2.10.0 root@ubuntu:/etc/ansible# root@ubuntu:/etc/ansible# docker pull mysql/mysql-server:8.0.13 8.0.13: Pulling from mysql/mysql-server 5530262403b2: Pull complete 01c05f6b9ab3: Pull complete f521094e248f: Pull complete 495eb6103d23: Pull complete Digest: sha256:59a5854dca16488305aee60c8dea4d88b68d816aee627de022b19d9bead48d04 Status: Downloaded newer image for mysql/mysql-server:8.0.13 root@ubuntu:/etc/ansible# root@ubuntu:/etc/ansible# docker pull grafana/grafana:7.0.2 7.0.2: Pulling from grafana/grafana 29e5d40040c1: Pull complete c33923c8c811: Pull complete 3fd85f7a4ab6: Pull complete 987cf1afe976: Pull complete a27d86f46de8: Pull complete 285316502f38: Pull complete Digest: sha256:5b9c9e18a8279a818144d90431ac0631bc17f520aa5c2fd6dd70bf767b48e632 Status: Downloaded newer image for grafana/grafana:7.0.2 root@ubuntu:/etc/ansible# root@ubuntu:/etc/ansible# docker pull python:3.7.5 3.7.5: Pulling from library/python af4800279257: Pull complete 8fae2ec46cd5: Pull complete 8a8718b9412e: Pull complete 4908f8b44725: Pull complete 54e0fac9e6c6: Pull complete 2b1da11f97bb: Pull complete d93a637093d0: Pull complete c79746565cc4: Pull complete 3dfacccebd97: Pull complete Digest: sha256:88d11783cbbfa06f1c12ca50c73c340b0bff34bf599c6e1dd27fb836a8de506d Status: Downloaded newer image for python:3.7.5 root@ubuntu:/etc/ansible# root@ubuntu:/etc/ansible# docker pull ubuntu:18.04 18.04: Pulling from library/ubuntu fda1cca7a3cc: Pull complete Digest: sha256:7bd7a9ca99f868bf69c4b6212f64f2af8e243f97ba13abb3e641e03a7ceb59e8 Status: Downloaded newer image for ubuntu:18.04 root@ubuntu:/etc/ansible#三、配置NGINX镜像配置root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/src/nginx# vim Dockerfile FROM ubuntu:18.04 #(可选Part1)如用户环境需要配置代理连接网络,此处需要按如下示例配置代理,可直接取消注释并填写相应字段(大括号不保留)。 # ENV http_proxy http://{username}:{password}@{IP}:{port} # ENV https_proxy http://{username}:{password}@{IP}:{port} #(可选Part2)如用户环境需要配置代理连接网络,此处需要按如下示例配置代理,可直接取消注释并填写相应字段(大括号不保留)。 # RUN echo 'Acquire::http::Proxy "http://{username}:{password}@{IP}:{port}"; Acquire::https::Proxy "http://{username}:{password}@{IP}:{port}";' > /etc/apt/apt.conf.d/80proxy ##(可选Part3)配置apt源,ARM环境示例,请根据环境架构在Part3和Part4中二选一 #RUN echo 'deb http://mirrors.aliyun.com/ubuntu-ports/ bionic main restricted universe multiverse \n\ #deb http://mirrors.aliyun.com/ubuntu-ports/ bionic-security main restricted universe multiverse \n\ #deb http://mirrors.aliyun.com/ubuntu-ports/ bionic-updates main restricted universe multiverse \n\ #deb http://mirrors.aliyun.com/ubuntu-ports/ bionic-proposed main restricted universe multiverse \n\ #deb http://mirrors.aliyun.com/ubuntu-ports/ bionic-backports main restricted universe multiverse \n\ #deb-src http://mirrors.aliyun.com/ubuntu-ports/ bionic main restricted universe multiverse \n\ #deb-src http://mirrors.aliyun.com/ubuntu-ports/ bionic-security main restricted universe multiverse \n\ #deb-src http://mirrors.aliyun.com/ubuntu-ports/ bionic-updates main restricted universe multiverse \n\ #deb-src http://mirrors.aliyun.com/ubuntu-ports/ bionic-proposed main restricted universe multiverse \n\ #deb-src http://mirrors.aliyun.com/ubuntu-ports/ bionic-backports main restricted universe multiverse' > /etc/apt/sources.list ##(可选Part4)配置apt源,x86环境示例,请根据环境架构在Part3和Part4中二选一 #RUN echo 'deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse \n\ #deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse \n\ #deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse \n\ #deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse \n\ #deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse \n\ #deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse \n\ #deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse \n\ #deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse \n\ #deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse \n\ #deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse' > /etc/apt/sources.list RUN echo 'deb http://cn.ports.ubuntu.com/ubuntu-ports/ bionic main restricted \n\ deb http://cn.ports.ubuntu.com/ubuntu-ports/ bionic-updates main restricted \n\ deb http://cn.ports.ubuntu.com/ubuntu-ports/ bionic universe \n\ deb http://cn.ports.ubuntu.com/ubuntu-ports/ bionic-updates universe \n\ deb http://cn.ports.ubuntu.com/ubuntu-ports/ bionic multiverse \n\ deb http://cn.ports.ubuntu.com/ubuntu-ports/ bionic-updates multiverse \n\ deb http://cn.ports.ubuntu.com/ubuntu-ports/ bionic-backports main restricted universe multiverse \n\ deb http://ports.ubuntu.com/ubuntu-ports bionic-security main restricted \n\ deb http://ports.ubuntu.com/ubuntu-ports bionic-security universe \n\ deb http://ports.ubuntu.com/ubuntu-ports bionic-security multiverse' > /etc/apt/sources.list RUN apt-get update && \ apt-get install -y build-essential && \ apt-get install -y libtool && \ apt-get install -y libpcre3 libpcre3-dev && \ apt-get install -y zlib1g-dev && \ apt-get install -y openssl && \ apt-get install libssl-dev && \ apt-get install -y wget && \ apt-get install -y git RUN export GIT_SSL_NO_VERIFY=1 && \ git clone https://github.com/masterzen/nginx-upload-progress-module.git && \ git clone https://github.com/fdintino/nginx-upload-module.git && \ wget --no-check-certificate http://nginx.org/download/nginx-1.17.3.tar.gz && \ tar -zxvf nginx-1.17.3.tar.gz && \ cd nginx-1.17.3 && \ ./configure --add-module=../nginx-upload-module/ --add-module=../nginx-upload-progress-module/ --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-g -O2 -fdebug-prefix-map=/tmp/tmp.UI0oSlj34i/nginx-1.17.10=. -fstack-protector-strong -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fPIC' --with-ld-opt='-Wl,-z,relro -Wl,-z,now -Wl,--as-needed -pie' && \ make && make install && ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx && \ mkdir -pv /var/cache/nginx/client_temp && \ cd .. #RUN rm /etc/apt/apt.conf.d/80proxy /etc/apt/sources.list && \ # rm nginx-1.17.3.tar.gz && \ # rm -rf nginx-1.17.3 nginx-upload-module nginx-upload-progress-module #(可选Part5)如在Part1中配置了代理,需要取消下面两行注释取消对应代理配置。 #ENV http_proxy "" #ENV https_proxy "" #(可选Part6)如在Part2中配置了代理,需要取消下面一行注释取消对应代理配置。 #RUN echo "" > /etc/apt/apt.conf.d/80proxy root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/src/nginx# docker build -t nginx-upload:v1 . root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/src/nginx# docker images | grep ng nginx-upload v1 15bbdc3677d7 4 minutes ago 372MB 四、安装前端所需工具,并编译前端代码root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/src/webgui# curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/src/webgui# nvm install node root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/src/webgui# apt install -y npm root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/src/webgui# apt install -y node root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/src/webgui# wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.6/install.sh | bash root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/src/webgui# nvm install node root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/src/webgui# npm config set registry http://r.cnpmjs.org/; root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/src/webgui# npm install --global vue-cli; root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/src/webgui# npm install webpack -g;五、修改TJM配置文件root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/deploy/yamls# vim tjm.yaml root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/deploy/yamls# root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/deploy/yamls# root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/deploy/yamls# root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/deploy/yamls# cat tjm.yaml apiVersion: apps/v1 kind: Deployment metadata: name: tjm namespace: default labels: app: tjm spec: replicas: 1 selector: matchLabels: app: tjm template: metadata: labels: app: tjm spec: nodeSelector: masterselector: dls-master-node containers: - image: tjm:v0.0.1 name: tjm-core imagePullPolicy: IfNotPresent command: - "/bin/bash" - "-c" - "/bin/bash /tjm/start.sh" env: # The following env variables set up basic auth twith the default admin user and admin password. - name: NFS_IP value: 192.168.1.99 - name: NFS_ROOT_DIR value: "/data/atlas_dls" - name: INCLUSTER_FLAG value: "TRUE" - name: SERVICE_DOMAIN_NAME value: 192.168.1.99 - name: CONTAINER_ROOT_DIR value: "/datanfs" - name: TENSORBOARD_IMAGE value: "tensorboard:latest" - name: TENSORBOARD_CPU value: "190" - name: TENSORBOARD_MEMORY value: "200Mi" - name: MINDINSIGHT_IMAGE value: "mindinsight:latest" - name: MINDINSIGHT_CPU value: "190" - name: MINDINSIGHT_MEMORY value: "2048Mi" - name: TIMEZONE value: "8" volumeMounts: - name: dls-data mountPath: /datanfs - name: localtime mountPath: /etc/localtime - name: dls-log mountPath: /var/log/atlas_dls/tjm resources: requests: cpu: "500m" memory: "100Mi" limits: cpu: "5000m" memory: "50000Mi" volumes: - name: dls-data nfs: server: 192.168.1.99 path: /data/atlas_dls - name: localtime hostPath: path: /etc/localtime - name: dls-log hostPath: path: /var/log/atlas_dls/tjm --- kind: Service apiVersion: v1 metadata: labels: app: tjm name: tjm namespace: default spec: ports: - port: 5003 targetPort: 5003 selector: app: tjm root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/deploy/yamls# tjm.yaml 修改env字段中以下参数配置: - name: TENSORBOARD_IMAGE value: "tensorboard:latest" #Tensorboard镜像名和版本。 - name: TENSORBOARD_CPU value: "1" #Tensorboard任务运行所需CPU,建议≥1。 - name: TENSORBOARD_MEMORY value: "200Mi" #Tensorboard任务运行所需内存,建议≥100Mi。 - name: MINDINSIGHT_IMAGE value: "mindinsight:latest" #Mindinsight镜像名和版本。 - name: MINDINSIGHT_CPU value: "4" #Mindinsight任务运行所需CPU,建议≥4。 - name: MINDINSIGHT_MEMORY value: "2048Mi" #Mindinsight任务运行所需内存,建议≥2048Mi。 - name: TIMEZONE value: "8" #默认为8(东八区),根据实际配置时区。 六、修改MMS配置文件root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/deploy/yamls# vim mms.yaml root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/deploy/yamls# cat mms.yaml apiVersion: apps/v1 kind: Deployment metadata: name: dls-mms-deploy namespace: default spec: replicas: 1 selector: matchLabels: app: dls-mms template: metadata: labels: app: dls-mms spec: nodeSelector: masterselector: dls-master-node containers: - name: dls-mms image: mms:v0.0.1 imagePullPolicy: IfNotPresent command: [ "/bin/bash", "-c", "--" ] args: [ "chmod 550 /data/mms/start.sh;/data/mms/start.sh" ] ports: - containerPort: 5000 env: - name: NFS_IP value: 192.168.1.99 - name: NFS_ROOT_DIR value: "/data/atlas_dls" - name: INCLUSTER_FLAG value: "TRUE" - name: CONTAINER_ROOT_DIR value: "/datanfs" - name: MODEL_CONVERT_IMAGE value: "tf-c73:b033-with-atc" volumeMounts: - name: dls-data mountPath: /datanfs - name: dls-log mountPath: /var/log/atlas_dls/mms - name: localtime mountPath: /etc/localtime resources: requests: cpu: "500m" memory: "100Mi" limits: cpu: "5000m" memory: "50000Mi" volumes: - name: dls-data nfs: server: 192.168.1.99 path: "/data/atlas_dls" - name: dls-log hostPath: path: /var/log/atlas_dls/mms - name: localtime hostPath: path: /etc/localtime --- apiVersion: v1 kind: Service metadata: name: dls-mms namespace: default labels: app: atlas-dls spec: ports: - name: dls-mms port: 5002 protocol: TCP targetPort: 5002 selector: app: dls-mms root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/deploy/yamls# mms.yaml 修改env字段中以下参数配置: - name: MODEL_CONVERT_IMAGE value: "tf-c73:b033-with-atc" #模型转换镜像名七、自动化安装,SHELL回显略root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/deploy/playbooks# ansible-playbook deploy.yaml八、拉去训练镜像 https://ascendhub.huawei.com/#/indexroot@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/deploy/playbooks# docker login -u 15648907522 -p tDYqC45NFQ2VVb1Wk48C0AK4PC02SBjBpoUDOjo7oqIpdjBSaPzZyR112lzbzBWve ascendhub.huawei.com WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /root/.docker/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/deploy/playbooks# docker pull ascendhub.huawei.com/public-ascendhub/ascend-mindspore-arm:21.0.1.spc001 21.0.1.spc001: Pulling from public-ascendhub/ascend-mindspore-arm fda1cca7a3cc: Already exists 11c90fde7ae4: Pull complete 7253b5e27781: Pull complete bbd60ae31b0e: Pull complete 5ff0775b62ee: Pull complete 4bd7bd3ffee1: Pull complete 8f7e244558aa: Pull complete 2782e4575e5b: Pull complete 6082e54e59ee: Pull complete bd1b2e5f115e: Pull complete 53142cd42310: Pull complete d746749ab006: Pull complete 691a8a68558b: Pull complete ecbb81572dc3: Pull complete 65d85230814c: Pull complete Digest: sha256:29069b29542554d5ac8f79c2be3ba78ace77751546bfad24b480acf782e39fa7 Status: Downloaded newer image for ascendhub.huawei.com/public-ascendhub/ascend-mindspore-arm:21.0.1.spc001 root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/deploy/playbooks# docker pull ascendhub.huawei.com/public-ascendhub/ascend-tensorflow-arm:21.0.1 21.0.1: Pulling from public-ascendhub/ascend-tensorflow-arm 04da93b342eb: Pull complete b235194751de: Pull complete 606a67bb8db9: Pull complete 4af9b0a6671e: Pull complete aa86c517c858: Pull complete 7d232de65c7f: Pull complete 396a8ab7f029: Pull complete bc0d0369a1f9: Pull complete 86f265d63edf: Pull complete 0cef5083e917: Pull complete 360419151a16: Pull complete 06436a96fc81: Pull complete 13611bc87943: Pull complete 2127513261ef: Pull complete Digest: sha256:0e6fac7ec1cb09bb57bbd076d6b6054f44f91afe6dfadfca2270a51ba2fc53e0 Status: Downloaded newer image for ascendhub.huawei.com/public-ascendhub/ascend-tensorflow-arm:21.0.1 root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/deploy/playbooks# docker pull ascendhub.huawei.com/public-ascendhub/ascend-pytorch-arm:21.0.1 21.0.1: Pulling from public-ascendhub/ascend-pytorch-arm 04da93b342eb: Already exists b235194751de: Already exists 606a67bb8db9: Already exists e93c757bff45: Pull complete 3cf04b2262e0: Pull complete b747b6b075df: Pull complete 9d1ca426ec5d: Pull complete 6709e46dffeb: Pull complete c9a5fa495f7c: Pull complete 88232903df71: Pull complete ef57b6fb083b: Pull complete ea40e63aedc6: Pull complete fb00b3f33bf9: Pull complete 7fa0e069227a: Pull complete c875eb36de84: Pull complete Digest: sha256:57f724d4b938753102d09d0ffbab5b0c0697cf3e37b1e8ac948bb8a8df356958 Status: Downloaded newer image for ascendhub.huawei.com/public-ascendhub/ascend-pytorch-arm:21.0.1 root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/deploy/playbooks# root@ubuntu:~/123/mindxdl-sample-20210715-V2.0.2/deploy/playbooks#九、构建jupyter-notebook镜像root@ubuntu:~/123# mkdir jupyter-notebook root@ubuntu:~/123# root@ubuntu:~/123# cd jupyter-notebook/ root@ubuntu:~/123/jupyter-notebook# ls root@ubuntu:~/123/jupyter-notebook# root@ubuntu:~/123/jupyter-notebook# root@ubuntu:~/123/jupyter-notebook# vi Dockerfile root@ubuntu:~/123/jupyter-notebook# root@ubuntu:~/123/jupyter-notebook# root@ubuntu:~/123/jupyter-notebook# docker build -t notebook .^C root@ubuntu:~/123/jupyter-notebook# root@ubuntu:~/123/jupyter-notebook# root@ubuntu:~/123/jupyter-notebook# root@ubuntu:~/123/jupyter-notebook# cat Dockerfile From python:3.7.5 # -------------------------(Optional) Configure the proxy and source.----------------------- #ENV http_proxy http://<user>:<password>@ip:port #ENV https_proxy http://<user>:<password>@ip:port #ENV ftp_proxy ftp://<user>:<password>@ip:port RUN mkdir -p ~/.pip \ && echo '[global] \n\ index-url=https://pypi.doubanio.com/simple/\n\ trusted-host=pypi.doubanio.com' >> ~/.pip/pip.conf RUN pip install jupyter \ && jupyter notebook --generate-config \ && echo "c.NotebookApp.ip='0.0.0.0' \n\ c.NotebookApp.open_browser = False \n\ c.NotebookApp.token = '' \n\ c.NotebookApp.port =8888" >> ~/.jupyter/jupyter_notebook_config.py RUN apt-get update \ && apt-get install -y openssh-server RUN sed -ri 's/UsePAM yes/#UsePAM yes/g' /etc/ssh/sshd_config \ && sed -ri 's/^#?PermitRootLogin\s+.*/PermitRootLogin yes/' /etc/ssh/sshd_config ENV http_proxy '' ENV https_proxy '' ENV ftp_proxy '' RUN useradd -d /home/hwMindX -u 9000 -m -s /bin/bash hwMindX && \ useradd -d /home/HwHiAiUser -u 1000 -m -s /bin/bash HwHiAiUser && \ usermod -a -G HwHiAiUser hwMindX RUN echo root:123123 | chpasswd USER hwMindX ENTRYPOINT jupyter notebook --allow-root root@ubuntu:~/123/jupyter-notebook# docker build -t notebook . Sending build context to Docker daemon 3.072kB Step 1/12 : From python:3.7.5 ---> a4356c370cda Step 2/12 : RUN mkdir -p ~/.pip && echo '[global] \nindex-url=https://pypi.doubanio.com/simple/\ntrusted-host=pypi.doubanio.com' >> ~/.pip/pip.conf ---> Running in 841fef0bfec2 Removing intermediate container 841fef0bfec2 ---> 2e9619b95f3c Step 3/12 : RUN pip install jupyter && jupyter notebook --generate-config && echo "c.NotebookApp.ip='0.0.0.0' \nc.NotebookApp.open_browser = False \nc.NotebookApp.token = '' \nc.NotebookApp.port =8888" >> ~/.jupyter/jupyter_notebook_config.py ---> Running in e8a384542bf2 Looking in indexes: https://pypi.doubanio.com/simple/ Collecting jupyter Downloading https://pypi.doubanio.com/packages/83/df/0f5dd132200728a86190397e1ea87cd76244e42d39ec5e88efd25b2abd7e/jupyter-1.0.0-py2.py3-none-any.whl Collecting nbconvert Downloading https://pypi.doubanio.com/packages/fd/12/7b225ea00a5fe32df30b2c303dcc8c21c8db533ea7c0e38b4ac5a41bd8f0/nbconvert-6.1.0-py3-none-any.whl (551kB) Collecting qtconsole Downloading https://pypi.doubanio.com/packages/3a/57/c8fc1fc6fb6bc03caca20ace9cd0ac0e16cc052b51cbe3acbeeb53abcb18/qtconsole-5.1.1-py3-none-any.whl (119kB) Collecting ipykernel Downloading https://pypi.doubanio.com/packages/d4/9a/59010716573b2aae10ccf88ea275c9a50943a7f8d4a123ad3c6f385a6c94/ipykernel-6.2.0-py3-none-any.whl (122kB) Collecting ipywidgets Downloading https://pypi.doubanio.com/packages/11/53/084940a83a8158364e630a664a30b03068c25ab75243224d6b488800d43a/ipywidgets-7.6.3-py2.py3-none-any.whl (121kB) Collecting notebook Downloading https://pypi.doubanio.com/packages/3c/0e/9883ebfa204c7328fab473e04bda8066b00960fadc6698972afa62ddf0ce/notebook-6.4.3-py3-none-any.whl (9.9MB) Collecting jupyter-console Downloading https://pypi.doubanio.com/packages/59/cd/aa2670ffc99eb3e5bbe2294c71e4bf46a9804af4f378d09d7a8950996c9b/jupyter_console-6.4.0-py3-none-any.whl Collecting nbformat>=4.4 Downloading https://pypi.doubanio.com/packages/e7/c7/dd50978c637a7af8234909277c4e7ec1b71310c13fb3135f3c8f5b6e045f/nbformat-5.1.3-py3-none-any.whl (178kB) Collecting testpath Downloading https://pypi.doubanio.com/packages/ac/87/5422f6d056bfbded920ccf380a65de3713a3b95a95ba2255be2a3fb4f464/testpath-0.5.0-py3-none-any.whl (84kB) Collecting traitlets>=5.0 Downloading https://pypi.doubanio.com/packages/f6/7d/3ecb0ebd0ce8dcdfa7bd47ab85c1d4a521e6770ef283d0824f5804994dfe/traitlets-5.0.5-py3-none-any.whl (100kB) Collecting mistune<2,>=0.8.1 Downloading https://pypi.doubanio.com/packages/09/ec/4b43dae793655b7d8a25f76119624350b4d65eb663459eb9603d7f1f0345/mistune-0.8.4-py2.py3-none-any.whl Collecting defusedxml Downloading https://pypi.doubanio.com/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl Collecting bleach Downloading https://pypi.doubanio.com/packages/b6/23/d06c0bddcef0df58dd2c9ac02f8639533a6671bed0ef3e236888bb3b0a3c/bleach-4.0.0-py2.py3-none-any.whl (146kB) Collecting pandocfilters>=1.4.1 Downloading https://pypi.doubanio.com/packages/28/78/bd59a9adb72fa139b1c9c186e6f65aebee52375a747e4b6a6dcf0880956f/pandocfilters-1.4.3.tar.gz Collecting entrypoints>=0.2.2 Downloading https://pypi.doubanio.com/packages/ac/c6/44694103f8c221443ee6b0041f69e2740d89a25641e62fb4f2ee568f2f9c/entrypoints-0.3-py2.py3-none-any.whl Collecting jupyter-core Downloading https://pypi.doubanio.com/packages/53/40/5af36bffa0af3ac71d3a6fc6709de10e4f6ff7c01745b8bc4715372189c9/jupyter_core-4.7.1-py3-none-any.whl (82kB) Collecting pygments>=2.4.1 Downloading https://pypi.doubanio.com/packages/78/c8/8d9be2f72d8f465461f22b5f199c04f7ada933add4dae6e2468133c17471/Pygments-2.10.0-py3-none-any.whl (1.0MB) Collecting jupyterlab-pygments Downloading https://pypi.doubanio.com/packages/a8/6f/c34288766797193b512c6508f5994b830fb06134fdc4ca8214daba0aa443/jupyterlab_pygments-0.1.2-py2.py3-none-any.whl Collecting nbclient<0.6.0,>=0.5.0 Downloading https://pypi.doubanio.com/packages/a7/ed/b764fa931614cb7ed9bebbc42532daecef405d6bef660eeda882f6c23b98/nbclient-0.5.4-py3-none-any.whl (66kB) Collecting jinja2>=2.4 Downloading https://pypi.doubanio.com/packages/80/21/ae597efc7ed8caaa43fb35062288baaf99a7d43ff0cf66452ddf47604ee6/Jinja2-3.0.1-py3-none-any.whl (133kB) Collecting ipython-genutils Downloading https://pypi.doubanio.com/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl Collecting pyzmq>=17.1 Downloading https://pypi.doubanio.com/packages/61/48/308d03af40bf44c86ef826d942b12bdab5fbae6282e858bdff8bd55b0818/pyzmq-22.2.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8MB) Collecting jupyter-client>=4.1 Downloading https://pypi.doubanio.com/packages/b0/21/2104133f07e34f58712c87f0feaacdd38b5baff1ddb6ab72bb4baf16fc4a/jupyter_client-7.0.1-py3-none-any.whl (122kB) Collecting qtpy Downloading https://pypi.doubanio.com/packages/21/0d/1cc56aa1df049d9f989520ee8214a6ccfd236095d56060967afdb0b8f0d8/QtPy-1.10.0-py2.py3-none-any.whl (54kB) Collecting tornado<7.0,>=4.2 Downloading https://pypi.doubanio.com/packages/27/27/95912ec1ecbd5f3cc1ce76a8d62cb63d62ebee575acf02116814d42ea5eb/tornado-6.1-cp37-cp37m-manylinux2014_aarch64.whl (428kB) Collecting importlib-metadata<5; python_version < "3.8.0" Downloading https://pypi.doubanio.com/packages/c0/72/4512a88e402d4dc3bab49a845130d95ac48936ef3a9469b55cc79a60d84d/importlib_metadata-4.6.4-py3-none-any.whl Collecting ipython<8.0,>=7.23.1 Downloading https://pypi.doubanio.com/packages/25/a0/e0b850415984ac29f14775b075efc54d73b38f0d50c6ebdea7820ffb1c12/ipython-7.26.0-py3-none-any.whl (786kB) Collecting argcomplete>=1.12.3; python_version < "3.8.0" Downloading https://pypi.doubanio.com/packages/b7/9e/9dc74d330c07866d72f62d553fe8bdbe32786ff247a14e68b5659963e6bd/argcomplete-1.12.3-py2.py3-none-any.whl Collecting debugpy<2.0,>=1.0.0 Downloading https://pypi.doubanio.com/packages/c5/2d/876b1140b1544fe2187235ae9f52cdcd1e77d2bad641ea2aef413e882751/debugpy-1.4.1-py2.py3-none-any.whl (4.2MB) Collecting matplotlib-inline<0.2.0,>=0.1.0 Downloading https://pypi.doubanio.com/packages/7f/de/6c111d687335729cf8c156394c8d119b0dc3c34b6966ff2a2f7fe4aa79cf/matplotlib_inline-0.1.2-py3-none-any.whl Collecting jupyterlab-widgets>=1.0.0; python_version >= "3.6" Downloading https://pypi.doubanio.com/packages/18/b5/3473d275e3b2359efdf5768e9df95537308b93a31ad94fa92814ac565826/jupyterlab_widgets-1.0.0-py3-none-any.whl (243kB) Collecting widgetsnbextension~=3.5.0 Downloading https://pypi.doubanio.com/packages/6c/7b/7ac231c20d2d33c445eaacf8a433f4e22c60677eb9776c7c5262d7ddee2d/widgetsnbextension-3.5.1-py2.py3-none-any.whl (2.2MB) Collecting argon2-cffi Downloading https://pypi.doubanio.com/packages/74/fd/d78e003a79c453e8454197092fce9d1c6099445b7e7da0b04eb4fe1dbab7/argon2-cffi-20.1.0.tar.gz (1.8MB) Installing build dependencies: started Installing build dependencies: finished with status 'done' Getting requirements to build wheel: started Getting requirements to build wheel: finished with status 'done' Preparing wheel metadata: started Preparing wheel metadata: finished with status 'done' Collecting terminado>=0.8.3 Downloading https://pypi.doubanio.com/packages/5b/a8/0c428a9a2432b611566b0309d1a50a051f4ec965ce274528c4ba6b6c0205/terminado-0.11.1-py3-none-any.whl Collecting Send2Trash>=1.5.0 Downloading https://pypi.doubanio.com/packages/47/26/3435896d757335ea53dce5abf8d658ca80757a7a06258451b358f10232be/Send2Trash-1.8.0-py3-none-any.whl Collecting prometheus-client Downloading https://pypi.doubanio.com/packages/09/da/4e8471ff825769581593b5b84769d32f58e5373b59fccaf355d3529ad530/prometheus_client-0.11.0-py2.py3-none-any.whl (56kB) Collecting prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0 Downloading https://pypi.doubanio.com/packages/c6/37/ec72228971dbaf191243b8ee383c6a3834b5cde23daab066dfbfbbd5438b/prompt_toolkit-3.0.20-py3-none-any.whl (370kB) Collecting jsonschema!=2.5.0,>=2.4 Downloading https://pypi.doubanio.com/packages/c5/8f/51e89ce52a085483359217bc72cdbf6e75ee595d5b1d4b5ade40c7e018b8/jsonschema-3.2.0-py2.py3-none-any.whl (56kB) Collecting webencodings Downloading https://pypi.doubanio.com/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl Collecting packaging Downloading https://pypi.doubanio.com/packages/3c/77/e2362b676dc5008d81be423070dd9577fa03be5da2ba1105811900fda546/packaging-21.0-py3-none-any.whl (40kB) Collecting six>=1.9.0 Downloading https://pypi.doubanio.com/packages/d9/5a/e7c31adbe875f2abbb91bd84cf2dc52d792b5a01506781dbcf25c91daf11/six-1.16.0-py2.py3-none-any.whl Collecting nest-asyncio Downloading https://pypi.doubanio.com/packages/52/e2/9b37da54e6e9094d2f558ae643d1954a0fa8215dfee4fa261f31c5439796/nest_asyncio-1.5.1-py3-none-any.whl Collecting MarkupSafe>=2.0 Downloading https://pypi.doubanio.com/packages/a3/01/8d5fd91ccc1a61b7a9e2803819b8b60c3bac37290bbbd3df33d8d548f9c1/MarkupSafe-2.0.1-cp37-cp37m-manylinux2014_aarch64.whl Collecting python-dateutil>=2.1 Downloading https://pypi.doubanio.com/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl (247kB) Collecting zipp>=0.5 Downloading https://pypi.doubanio.com/packages/92/d9/89f433969fb8dc5b9cbdd4b4deb587720ec1aeb59a020cf15002b9593eef/zipp-3.5.0-py3-none-any.whl Collecting typing-extensions>=3.6.4; python_version < "3.8" Downloading https://pypi.doubanio.com/packages/2e/35/6c4fff5ab443b57116cb1aad46421fb719bed2825664e8fe77d66d99bcbc/typing_extensions-3.10.0.0-py3-none-any.whl Collecting backcall Downloading https://pypi.doubanio.com/packages/4c/1c/ff6546b6c12603d8dd1070aa3c3d273ad4c07f5771689a7b69a550e8c951/backcall-0.2.0-py2.py3-none-any.whl Collecting pexpect>4.3; sys_platform != "win32" Downloading https://pypi.doubanio.com/packages/39/7b/88dbb785881c28a102619d46423cb853b46dbccc70d3ac362d99773a78ce/pexpect-4.8.0-py2.py3-none-any.whl (59kB) Collecting jedi>=0.16 Downloading https://pypi.doubanio.com/packages/f9/36/7aa67ae2663025b49e8426ead0bad983fee1b73f472536e9790655da0277/jedi-0.18.0-py2.py3-none-any.whl (1.4MB) Requirement already satisfied: setuptools>=18.5 in /usr/local/lib/python3.7/site-packages (from ipython<8.0,>=7.23.1->ipykernel->jupyter) (41.6.0) Collecting pickleshare Downloading https://pypi.doubanio.com/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl Collecting decorator Downloading https://pypi.doubanio.com/packages/6a/36/b1b9bfdf28690ae01d9ca0aa5b0d07cb4448ac65fb91dc7e2d094e3d992f/decorator-5.0.9-py3-none-any.whl Collecting cffi>=1.0.0 Downloading https://pypi.doubanio.com/packages/7c/d7/027b40eab051119083fa64be7f86c40fc96643c627fd5068462b88f72111/cffi-1.14.6-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (206kB) Collecting ptyprocess; os_name != "nt" Downloading https://pypi.doubanio.com/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl Collecting wcwidth Downloading https://pypi.doubanio.com/packages/59/7c/e39aca596badaf1b78e8f547c807b04dae603a433d3e7a7e04d67f2ef3e5/wcwidth-0.2.5-py2.py3-none-any.whl Collecting pyrsistent>=0.14.0 Downloading https://pypi.doubanio.com/packages/f4/d7/0fa558c4fb00f15aabc6d42d365fcca7a15fcc1091cd0f5784a14f390b7f/pyrsistent-0.18.0.tar.gz (104kB) Installing build dependencies: started Installing build dependencies: finished with status 'done' Getting requirements to build wheel: started Getting requirements to build wheel: finished with status 'done' Preparing wheel metadata: started Preparing wheel metadata: finished with status 'done' Collecting attrs>=17.4.0 Downloading https://pypi.doubanio.com/packages/20/a9/ba6f1cd1a1517ff022b35acd6a7e4246371dfab08b8e42b829b6d07913cc/attrs-21.2.0-py2.py3-none-any.whl (53kB) Collecting pyparsing>=2.0.2 Downloading https://pypi.doubanio.com/packages/8a/bb/488841f56197b13700afd5658fc279a2025a39e22449b7cf29864669b15d/pyparsing-2.4.7-py2.py3-none-any.whl (67kB) Collecting parso<0.9.0,>=0.8.0 Downloading https://pypi.doubanio.com/packages/a9/c4/d5476373088c120ffed82f34c74b266ccae31a68d665b837354d4d8dc8be/parso-0.8.2-py2.py3-none-any.whl (94kB) Collecting pycparser Downloading https://pypi.doubanio.com/packages/ae/e7/d9c3a176ca4b02024debf82342dab36efadfc5776f9c8db077e8f6e71821/pycparser-2.20-py2.py3-none-any.whl (112kB) Building wheels for collected packages: argon2-cffi, pyrsistent Building wheel for argon2-cffi (PEP 517): started Building wheel for argon2-cffi (PEP 517): finished with status 'done' Created wheel for argon2-cffi: filename=argon2_cffi-20.1.0-cp37-abi3-linux_aarch64.whl size=94330 sha256=a7e904c263450da07cbc3a73891e049bab3035c37841778963599e544d3df91c Stored in directory: /root/.cache/pip/wheels/bd/00/bf/afb81816e42f4cd82890c552262451d2683fce154d72a2a7f2 Building wheel for pyrsistent (PEP 517): started Building wheel for pyrsistent (PEP 517): finished with status 'done' Created wheel for pyrsistent: filename=pyrsistent-0.18.0-cp37-cp37m-linux_aarch64.whl size=124391 sha256=4aa68debe7bd18cef92085f61bcff6ca4a308e7a0c3baa6d5e9b79d011a0860b Stored in directory: /root/.cache/pip/wheels/41/82/79/02feba19913ccf53c135a504fd28677aeecf1980d76c1bfad5 Successfully built argon2-cffi pyrsistent Building wheels for collected packages: pandocfilters Building wheel for pandocfilters (setup.py): started Building wheel for pandocfilters (setup.py): finished with status 'done' Created wheel for pandocfilters: filename=pandocfilters-1.4.3-cp37-none-any.whl size=7991 sha256=74eac0d992a7841f6066709dcd1dcabfa4fa58eb171649fbaef06b141bcd033c Stored in directory: /root/.cache/pip/wheels/f3/b7/38/9a1fac073c6eb0cc2524036dfcef319b829ce237c80c31c044 Successfully built pandocfilters Installing collected packages: ipython-genutils, traitlets, jupyter-core, pyrsistent, six, attrs, zipp, typing-extensions, importlib-metadata, jsonschema, nbformat, testpath, mistune, defusedxml, webencodings, pyparsing, packaging, bleach, pandocfilters, entrypoints, pygments, jupyterlab-pygments, nest-asyncio, pyzmq, python-dateutil, tornado, jupyter-client, nbclient, MarkupSafe, jinja2, nbconvert, backcall, ptyprocess, pexpect, parso, jedi, matplotlib-inline, pickleshare, decorator, wcwidth, prompt-toolkit, ipython, argcomplete, debugpy, ipykernel, qtpy, qtconsole, jupyterlab-widgets, pycparser, cffi, argon2-cffi, terminado, Send2Trash, prometheus-client, notebook, widgetsnbextension, ipywidgets, jupyter-console, jupyter Successfully installed MarkupSafe-2.0.1 Send2Trash-1.8.0 argcomplete-1.12.3 argon2-cffi-20.1.0 attrs-21.2.0 backcall-0.2.0 bleach-4.0.0 cffi-1.14.6 debugpy-1.4.1 decorator-5.0.9 defusedxml-0.7.1 entrypoints-0.3 importlib-metadata-4.6.4 ipykernel-6.2.0 ipython-7.26.0 ipython-genutils-0.2.0 ipywidgets-7.6.3 jedi-0.18.0 jinja2-3.0.1 jsonschema-3.2.0 jupyter-1.0.0 jupyter-client-7.0.1 jupyter-console-6.4.0 jupyter-core-4.7.1 jupyterlab-pygments-0.1.2 jupyterlab-widgets-1.0.0 matplotlib-inline-0.1.2 mistune-0.8.4 nbclient-0.5.4 nbconvert-6.1.0 nbformat-5.1.3 nest-asyncio-1.5.1 notebook-6.4.3 packaging-21.0 pandocfilters-1.4.3 parso-0.8.2 pexpect-4.8.0 pickleshare-0.7.5 prometheus-client-0.11.0 prompt-toolkit-3.0.20 ptyprocess-0.7.0 pycparser-2.20 pygments-2.10.0 pyparsing-2.4.7 pyrsistent-0.18.0 python-dateutil-2.8.2 pyzmq-22.2.1 qtconsole-5.1.1 qtpy-1.10.0 six-1.16.0 terminado-0.11.1 testpath-0.5.0 tornado-6.1 traitlets-5.0.5 typing-extensions-3.10.0.0 wcwidth-0.2.5 webencodings-0.5.1 widgetsnbextension-3.5.1 zipp-3.5.0 WARNING: You are using pip version 19.3.1; however, version 21.2.4 is available. You should consider upgrading via the 'pip install --upgrade pip' command. Writing default config to: /root/.jupyter/jupyter_notebook_config.py Removing intermediate container e8a384542bf2 ---> cc59b531125b Step 4/12 : RUN apt-get update && apt-get install -y openssh-server ---> Running in 2e945ea6c6c8 Get:1 http://deb.debian.org/debian buster InRelease [122 kB] Get:2 http://security.debian.org/debian-security buster/updates InRelease [65.4 kB] Get:3 http://deb.debian.org/debian buster-updates InRelease [51.9 kB] Get:4 http://security.debian.org/debian-security buster/updates/main arm64 Packages [296 kB] Get:5 http://deb.debian.org/debian buster/main arm64 Packages [7735 kB] Get:6 http://deb.debian.org/debian buster-updates/main arm64 Packages [14.5 kB] Fetched 8285 kB in 3s (2598 kB/s) Reading package lists... Reading package lists... Building dependency tree... Reading state information... The following additional packages will be installed: dbus dmsetup libapparmor1 libargon2-1 libcryptsetup12 libdbus-1-3 libdevmapper1.02.1 libidn11 libip4tc0 libjson-c3 libkmod2 libnss-systemd libpam-systemd libsystemd0 libwrap0 libxmuu1 ncurses-term openssh-client openssh-sftp-server systemd systemd-sysv xauth Suggested packages: default-dbus-session-bus | dbus-session-bus keychain libpam-ssh monkeysphere ssh-askpass molly-guard rssh ufw systemd-container policykit-1 The following NEW packages will be installed: dbus dmsetup libapparmor1 libargon2-1 libcryptsetup12 libdbus-1-3 libdevmapper1.02.1 libidn11 libip4tc0 libjson-c3 libkmod2 libnss-systemd libpam-systemd libwrap0 libxmuu1 ncurses-term openssh-server openssh-sftp-server systemd systemd-sysv xauth The following packages will be upgraded: libsystemd0 openssh-client 2 upgraded, 21 newly installed, 0 to remove and 130 not upgraded. Need to get 7006 kB of archives. After this operation, 23.5 MB of additional disk space will be used. Get:1 http://deb.debian.org/debian buster/main arm64 libapparmor1 arm64 2.13.2-10 [93.8 kB] Get:2 http://security.debian.org/debian-security buster/updates/main arm64 libsystemd0 arm64 241-7~deb10u8 [314 kB] Get:3 http://deb.debian.org/debian buster/main arm64 libargon2-1 arm64 0~20171227-0.2 [18.9 kB] Get:4 http://deb.debian.org/debian buster/main arm64 dmsetup arm64 2:1.02.155-3 [83.9 kB] Get:5 http://deb.debian.org/debian buster/main arm64 libdevmapper1.02.1 arm64 2:1.02.155-3 [124 kB] Get:6 http://deb.debian.org/debian buster/main arm64 libjson-c3 arm64 0.12.1+ds-2+deb10u1 [26.8 kB] Get:7 http://deb.debian.org/debian buster/main arm64 libcryptsetup12 arm64 2:2.1.0-5+deb10u2 [181 kB] Get:8 http://security.debian.org/debian-security buster/updates/main arm64 systemd arm64 241-7~deb10u8 [3256 kB] Get:9 http://deb.debian.org/debian buster/main arm64 libidn11 arm64 1.33-2.2 [113 kB] Get:10 http://deb.debian.org/debian buster/main arm64 libip4tc0 arm64 1.8.2-4 [69.6 kB] Get:11 http://deb.debian.org/debian buster/main arm64 libkmod2 arm64 26-1 [49.4 kB] Get:12 http://deb.debian.org/debian buster/main arm64 libdbus-1-3 arm64 1.12.20-0+deb10u1 [206 kB] Get:13 http://deb.debian.org/debian buster/main arm64 dbus arm64 1.12.20-0+deb10u1 [227 kB] Get:14 http://deb.debian.org/debian buster/main arm64 ncurses-term all 6.1+20181013-2+deb10u2 [490 kB] Get:15 http://deb.debian.org/debian buster/main arm64 openssh-client arm64 1:7.9p1-10+deb10u2 [757 kB] Get:16 http://deb.debian.org/debian buster/main arm64 libwrap0 arm64 7.6.q-28 [58.4 kB] Get:17 http://security.debian.org/debian-security buster/updates/main arm64 systemd-sysv arm64 241-7~deb10u8 [100 kB] Get:18 http://security.debian.org/debian-security buster/updates/main arm64 libpam-systemd arm64 241-7~deb10u8 [201 kB] Get:19 http://security.debian.org/debian-security buster/updates/main arm64 libnss-systemd arm64 241-7~deb10u8 [197 kB] Get:20 http://deb.debian.org/debian buster/main arm64 libxmuu1 arm64 2:1.1.2-2+b3 [24.1 kB] Get:21 http://deb.debian.org/debian buster/main arm64 openssh-sftp-server arm64 1:7.9p1-10+deb10u2 [42.8 kB] Get:22 http://deb.debian.org/debian buster/main arm64 openssh-server arm64 1:7.9p1-10+deb10u2 [334 kB] Get:23 http://deb.debian.org/debian buster/main arm64 xauth arm64 1:1.0.10-1 [38.2 kB] debconf: delaying package configuration, since apt-utils is not installed Fetched 7006 kB in 1s (6820 kB/s) (Reading database ... 24499 files and directories currently installed.) Preparing to unpack .../libsystemd0_241-7~deb10u8_arm64.deb ... Unpacking libsystemd0:arm64 (241-7~deb10u8) over (241-7~deb10u2) ... Setting up libsystemd0:arm64 (241-7~deb10u8) ... Selecting previously unselected package libapparmor1:arm64. (Reading database ... 24499 files and directories currently installed.) Preparing to unpack .../0-libapparmor1_2.13.2-10_arm64.deb ... Unpacking libapparmor1:arm64 (2.13.2-10) ... Selecting previously unselected package libargon2-1:arm64. Preparing to unpack .../1-libargon2-1_0~20171227-0.2_arm64.deb ... Unpacking libargon2-1:arm64 (0~20171227-0.2) ... Selecting previously unselected package dmsetup. Preparing to unpack .../2-dmsetup_2%3a1.02.155-3_arm64.deb ... Unpacking dmsetup (2:1.02.155-3) ... Selecting previously unselected package libdevmapper1.02.1:arm64. Preparing to unpack .../3-libdevmapper1.02.1_2%3a1.02.155-3_arm64.deb ... Unpacking libdevmapper1.02.1:arm64 (2:1.02.155-3) ... Selecting previously unselected package libjson-c3:arm64. Preparing to unpack .../4-libjson-c3_0.12.1+ds-2+deb10u1_arm64.deb ... Unpacking libjson-c3:arm64 (0.12.1+ds-2+deb10u1) ... Selecting previously unselected package libcryptsetup12:arm64. Preparing to unpack .../5-libcryptsetup12_2%3a2.1.0-5+deb10u2_arm64.deb ... Unpacking libcryptsetup12:arm64 (2:2.1.0-5+deb10u2) ... Selecting previously unselected package libidn11:arm64. Preparing to unpack .../6-libidn11_1.33-2.2_arm64.deb ... Unpacking libidn11:arm64 (1.33-2.2) ... Selecting previously unselected package libip4tc0:arm64. Preparing to unpack .../7-libip4tc0_1.8.2-4_arm64.deb ... Unpacking libip4tc0:arm64 (1.8.2-4) ... Selecting previously unselected package libkmod2:arm64. Preparing to unpack .../8-libkmod2_26-1_arm64.deb ... Unpacking libkmod2:arm64 (26-1) ... Selecting previously unselected package systemd. Preparing to unpack .../9-systemd_241-7~deb10u8_arm64.deb ... Unpacking systemd (241-7~deb10u8) ... Setting up libapparmor1:arm64 (2.13.2-10) ... Setting up libargon2-1:arm64 (0~20171227-0.2) ... Setting up libjson-c3:arm64 (0.12.1+ds-2+deb10u1) ... Setting up libidn11:arm64 (1.33-2.2) ... Setting up libip4tc0:arm64 (1.8.2-4) ... Setting up libkmod2:arm64 (26-1) ... Setting up libdevmapper1.02.1:arm64 (2:1.02.155-3) ... Setting up libcryptsetup12:arm64 (2:2.1.0-5+deb10u2) ... Setting up systemd (241-7~deb10u8) ... Created symlink /etc/systemd/system/getty.target.wants/getty@tty1.service → /lib/systemd/system/getty@.service. Created symlink /etc/systemd/system/multi-user.target.wants/remote-fs.target → /lib/systemd/system/remote-fs.target. Created symlink /etc/systemd/system/dbus-org.freedesktop.timesync1.service → /lib/systemd/system/systemd-timesyncd.service. Created symlink /etc/systemd/system/sysinit.target.wants/systemd-timesyncd.service → /lib/systemd/system/systemd-timesyncd.service. Setting up dmsetup (2:1.02.155-3) ... Selecting previously unselected package systemd-sysv. (Reading database ... 25328 files and directories currently installed.) Preparing to unpack .../00-systemd-sysv_241-7~deb10u8_arm64.deb ... Unpacking systemd-sysv (241-7~deb10u8) ... Selecting previously unselected package libdbus-1-3:arm64. Preparing to unpack .../01-libdbus-1-3_1.12.20-0+deb10u1_arm64.deb ... Unpacking libdbus-1-3:arm64 (1.12.20-0+deb10u1) ... Selecting previously unselected package dbus. Preparing to unpack .../02-dbus_1.12.20-0+deb10u1_arm64.deb ... Unpacking dbus (1.12.20-0+deb10u1) ... Selecting previously unselected package libpam-systemd:arm64. Preparing to unpack .../03-libpam-systemd_241-7~deb10u8_arm64.deb ... Unpacking libpam-systemd:arm64 (241-7~deb10u8) ... Selecting previously unselected package ncurses-term. Preparing to unpack .../04-ncurses-term_6.1+20181013-2+deb10u2_all.deb ... Unpacking ncurses-term (6.1+20181013-2+deb10u2) ... Preparing to unpack .../05-openssh-client_1%3a7.9p1-10+deb10u2_arm64.deb ... Unpacking openssh-client (1:7.9p1-10+deb10u2) over (1:7.9p1-10+deb10u1) ... Selecting previously unselected package libwrap0:arm64. Preparing to unpack .../06-libwrap0_7.6.q-28_arm64.deb ... Unpacking libwrap0:arm64 (7.6.q-28) ... Selecting previously unselected package libxmuu1:arm64. Preparing to unpack .../07-libxmuu1_2%3a1.1.2-2+b3_arm64.deb ... Unpacking libxmuu1:arm64 (2:1.1.2-2+b3) ... Selecting previously unselected package openssh-sftp-server. Preparing to unpack .../08-openssh-sftp-server_1%3a7.9p1-10+deb10u2_arm64.deb ... Unpacking openssh-sftp-server (1:7.9p1-10+deb10u2) ... Selecting previously unselected package openssh-server. Preparing to unpack .../09-openssh-server_1%3a7.9p1-10+deb10u2_arm64.deb ... Unpacking openssh-server (1:7.9p1-10+deb10u2) ... Selecting previously unselected package xauth. Preparing to unpack .../10-xauth_1%3a1.0.10-1_arm64.deb ... Unpacking xauth (1:1.0.10-1) ... Selecting previously unselected package libnss-systemd:arm64. Preparing to unpack .../11-libnss-systemd_241-7~deb10u8_arm64.deb ... Unpacking libnss-systemd:arm64 (241-7~deb10u8) ... Setting up systemd-sysv (241-7~deb10u8) ... Setting up openssh-client (1:7.9p1-10+deb10u2) ... Setting up libnss-systemd:arm64 (241-7~deb10u8) ... First installation detected... Checking NSS setup... Setting up libwrap0:arm64 (7.6.q-28) ... Setting up libdbus-1-3:arm64 (1.12.20-0+deb10u1) ... Setting up dbus (1.12.20-0+deb10u1) ... invoke-rc.d: could not determine current runlevel invoke-rc.d: policy-rc.d denied execution of start. Setting up libpam-systemd:arm64 (241-7~deb10u8) ... debconf: unable to initialize frontend: Dialog debconf: (TERM is not set, so the dialog frontend is not usable.) debconf: falling back to frontend: Readline Setting up libxmuu1:arm64 (2:1.1.2-2+b3) ... Setting up ncurses-term (6.1+20181013-2+deb10u2) ... Setting up openssh-sftp-server (1:7.9p1-10+deb10u2) ... Setting up openssh-server (1:7.9p1-10+deb10u2) ... debconf: unable to initialize frontend: Dialog debconf: (TERM is not set, so the dialog frontend is not usable.) debconf: falling back to frontend: Readline Creating config file /etc/ssh/sshd_config with new version Creating SSH2 RSA key; this may take some time ... 2048 SHA256:cEaUdyT6Hx04XRMm9rM/3XwpPfYW1pk8aLuPj+H/H74 root@2e945ea6c6c8 (RSA) Creating SSH2 ECDSA key; this may take some time ... 256 SHA256:SdNsg649xnvS1iDxsRnLZyYbAoBuVC0AAgBn2BrpBIA root@2e945ea6c6c8 (ECDSA) Creating SSH2 ED25519 key; this may take some time ... 256 SHA256:gp7YaazhqkMCaueTtGPhN4eqXQM7EY/qo6CIMJKJUAM root@2e945ea6c6c8 (ED25519) Created symlink /etc/systemd/system/sshd.service → /lib/systemd/system/ssh.service. Created symlink /etc/systemd/system/multi-user.target.wants/ssh.service → /lib/systemd/system/ssh.service. invoke-rc.d: could not determine current runlevel invoke-rc.d: policy-rc.d denied execution of start. Setting up xauth (1:1.0.10-1) ... Processing triggers for systemd (241-7~deb10u8) ... Processing triggers for libc-bin (2.28-10) ... Removing intermediate container 2e945ea6c6c8 ---> 2e0c25b239f8 Step 5/12 : RUN sed -ri 's/UsePAM yes/#UsePAM yes/g' /etc/ssh/sshd_config && sed -ri 's/^#?PermitRootLogin\s+.*/PermitRootLogin yes/' /etc/ssh/sshd_config ---> Running in feb082ef3d54 Removing intermediate container feb082ef3d54 ---> 04e7d111667f Step 6/12 : ENV http_proxy '' ---> Running in d85cabc29931 Removing intermediate container d85cabc29931 ---> 7be3a0816c55 Step 7/12 : ENV https_proxy '' ---> Running in fde04a902add Removing intermediate container fde04a902add ---> ab4b80bbf41d Step 8/12 : ENV ftp_proxy '' ---> Running in e69f82c2dbdb Removing intermediate container e69f82c2dbdb ---> b5e9f01546bd Step 9/12 : RUN useradd -d /home/hwMindX -u 9000 -m -s /bin/bash hwMindX && useradd -d /home/HwHiAiUser -u 1000 -m -s /bin/bash HwHiAiUser && usermod -a -G HwHiAiUser hwMindX ---> Running in 4d1821f15a61 Removing intermediate container 4d1821f15a61 ---> 62891e7cf121 Step 10/12 : RUN echo root:123123 | chpasswd ---> Running in 6f31c83a1b24 Removing intermediate container 6f31c83a1b24 ---> 90fb27e9b246 Step 11/12 : USER hwMindX ---> Running in 3dca31695032 Removing intermediate container 3dca31695032 ---> 3c8e3d5fb2df Step 12/12 : ENTRYPOINT jupyter notebook --allow-root ---> Running in 0af4a0c4ebf0 Removing intermediate container 0af4a0c4ebf0 ---> 36ec8fff3e06 Successfully built 36ec8fff3e06 Successfully tagged notebook:latest root@ubuntu:~/123/jupyter-notebook# root@ubuntu:~/123/jupyter-notebook# docker images | grep notebook notebook latest 36ec8fff3e06 2 minutes ago 1.04GB root@ubuntu:~/123/jupyter-notebook#十、构建tensorboard镜像root@ubuntu:~/123# mkdir tensorboard root@ubuntu:~/123# cd tensorboard root@ubuntu:~/123/tensorboard# vi Dockerfile root@ubuntu:~/123/tensorboard# cat Dockerfile FROM python:3.7.5 # -------------------------(Optional) Configure the pip source.--[l(1] --------------------- #ENV http_proxy http://<user>:<password>@ip:port #ENV https_proxy http://<user>:<password>@ip:port #ENV ftp_proxy ftp://<user>:<password>@ip:port RUN mkdir -p ~/.pip \ && echo '[global] \n\ index-url=https://pypi.doubanio.com/simple/\n\ trusted-host=pypi.doubanio.com' >> ~/.pip/pip.conf RUN pip install --upgrade pip && pip install tensorboard==1.15.0 ENV http_proxy '' ENV https_proxy '' ENV ftp_proxy '' RUN useradd -d /home/hwMindX -u 9000 -m -s /bin/bash hwMindX && \ useradd -d /home/HwHiAiUser -u 1000 -m -s /bin/bash HwHiAiUser && \ usermod -a -G HwHiAiUser hwMindX USER hwMindX root@ubuntu:~/123/tensorboard# docker build -t tensorboard:latest . Sending build context to Docker daemon 2.56kB Step 1/8 : FROM python:3.7.5 ---> a4356c370cda Step 2/8 : RUN mkdir -p ~/.pip && echo '[global] \nindex-url=https://pypi.doubanio.com/simple/\ntrusted-host=pypi.doubanio.com' >> ~/.pip/pip.conf ---> Using cache ---> 2e9619b95f3c Step 3/8 : RUN pip install --upgrade pip && pip install tensorboard==1.15.0 ---> Running in 7d03c4546a34 Looking in indexes: https://pypi.doubanio.com/simple/ Collecting pip Downloading https://pypi.doubanio.com/packages/ca/31/b88ef447d595963c01060998cb329251648acf4a067721b0452c45527eb8/pip-21.2.4-py3-none-any.whl (1.6MB) Installing collected packages: pip Found existing installation: pip 19.3.1 Uninstalling pip-19.3.1: Successfully uninstalled pip-19.3.1 Successfully installed pip-21.2.4 Looking in indexes: https://pypi.doubanio.com/simple/ Collecting tensorboard==1.15.0 Downloading https://pypi.doubanio.com/packages/1e/e9/d3d747a97f7188f48aa5eda486907f3b345cd409f0a0850468ba867db246/tensorboard-1.15.0-py3-none-any.whl (3.8 MB) Requirement already satisfied: setuptools>=41.0.0 in /usr/local/lib/python3.7/site-packages (from tensorboard==1.15.0) (41.6.0) Collecting markdown>=2.6.8 Downloading https://pypi.doubanio.com/packages/6e/33/1ae0f71395e618d6140fbbc9587cc3156591f748226075e0f7d6f9176522/Markdown-3.3.4-py3-none-any.whl (97 kB) Collecting six>=1.10.0 Downloading https://pypi.doubanio.com/packages/d9/5a/e7c31adbe875f2abbb91bd84cf2dc52d792b5a01506781dbcf25c91daf11/six-1.16.0-py2.py3-none-any.whl (11 kB) Collecting numpy>=1.12.0 Downloading https://pypi.doubanio.com/packages/5c/61/b2f14fb5aa1198fa63c6c90205dc2557df5cacdeb0b16d66abc6af8724b8/numpy-1.21.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (13.0 MB) Collecting werkzeug>=0.11.15 Downloading https://pypi.doubanio.com/packages/bd/24/11c3ea5a7e866bf2d97f0501d0b4b1c9bbeade102bb4b588f0d2919a5212/Werkzeug-2.0.1-py3-none-any.whl (288 kB) Requirement already satisfied: wheel>=0.26 in /usr/local/lib/python3.7/site-packages (from tensorboard==1.15.0) (0.33.6) Collecting grpcio>=1.6.3 Downloading https://pypi.doubanio.com/packages/8d/87/f66686884e21e4350746a18e664202ab9b39a3cd527df3ff54a022935ee5/grpcio-1.39.0-cp37-cp37m-manylinux_2_24_aarch64.whl (38.5 MB) Collecting protobuf>=3.6.0 Downloading https://pypi.doubanio.com/packages/fd/5f/6d6f7a5859caf79894685ec543354edc05538a0a34d63a411a2a7cb4ecfd/protobuf-3.17.3-cp37-cp37m-manylinux2014_aarch64.whl (922 kB) Collecting absl-py>=0.4 Downloading https://pypi.doubanio.com/packages/23/47/835652c7e19530973c73c65e652fc53bd05725d5a7cf9bb8706777869c1e/absl_py-0.13.0-py3-none-any.whl (132 kB) Collecting importlib-metadata Downloading https://pypi.doubanio.com/packages/c0/72/4512a88e402d4dc3bab49a845130d95ac48936ef3a9469b55cc79a60d84d/importlib_metadata-4.6.4-py3-none-any.whl (17 kB) Collecting zipp>=0.5 Downloading https://pypi.doubanio.com/packages/92/d9/89f433969fb8dc5b9cbdd4b4deb587720ec1aeb59a020cf15002b9593eef/zipp-3.5.0-py3-none-any.whl (5.7 kB) Collecting typing-extensions>=3.6.4 Downloading https://pypi.doubanio.com/packages/2e/35/6c4fff5ab443b57116cb1aad46421fb719bed2825664e8fe77d66d99bcbc/typing_extensions-3.10.0.0-py3-none-any.whl (26 kB) Installing collected packages: zipp, typing-extensions, six, importlib-metadata, werkzeug, protobuf, numpy, markdown, grpcio, absl-py, tensorboard Successfully installed absl-py-0.13.0 grpcio-1.39.0 importlib-metadata-4.6.4 markdown-3.3.4 numpy-1.21.2 protobuf-3.17.3 six-1.16.0 tensorboard-1.15.0 typing-extensions-3.10.0.0 werkzeug-2.0.1 zipp-3.5.0 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv Removing intermediate container 7d03c4546a34 ---> 4dd40311445c Step 4/8 : ENV http_proxy '' ---> Running in 51e014124cef Removing intermediate container 51e014124cef ---> 90694cc782ca Step 5/8 : ENV https_proxy '' ---> Running in ddaaf7ceeded Removing intermediate container ddaaf7ceeded ---> 66a6f22d6688 Step 6/8 : ENV ftp_proxy '' ---> Running in d18d506c95bb Removing intermediate container d18d506c95bb ---> a6f8d3009ce3 Step 7/8 : RUN useradd -d /home/hwMindX -u 9000 -m -s /bin/bash hwMindX && useradd -d /home/HwHiAiUser -u 1000 -m -s /bin/bash HwHiAiUser && usermod -a -G HwHiAiUser hwMindX ---> Running in c29af506d5ed Removing intermediate container c29af506d5ed ---> 5faf1754daba Step 8/8 : USER hwMindX ---> Running in d032b1b13d00 Removing intermediate container d032b1b13d00 ---> d00db512a587 Successfully built d00db512a587 Successfully tagged tensorboard:latest root@ubuntu:~/123/tensorboard# docker images | grep tensorboard tensorboard latest d00db512a587 3 minutes ago 1.12GB root@ubuntu:~/123/tensorboard#十一、构建mindinsight镜像root@ubuntu:~/123# mkdir mindinsight root@ubuntu:~/123# cd mindinsight root@ubuntu:~/123/mindinsight# wget https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.3.0/MindInsight/any/mindinsight-1.3.0-py3-none-any.whl --2021-08-21 11:29:24-- https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.3.0/MindInsight/any/mindinsight-1.3.0-py3-none-any.whl Resolving ms-release.obs.cn-north-4.myhuaweicloud.com (ms-release.obs.cn-north-4.myhuaweicloud.com)... 49.4.112.92, 49.4.112.3, 49.4.112.91 Connecting to ms-release.obs.cn-north-4.myhuaweicloud.com (ms-release.obs.cn-north-4.myhuaweicloud.com)|49.4.112.92|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 5422450 (5.2M) [binary/octet-stream] Saving to: ‘mindinsight-1.3.0-py3-none-any.whl’ mindinsight-1.3.0-py3-none-any.whl 100%[====================================================================================================================>] 5.17M 24.3MB/s in 0.2s 2021-08-21 11:29:25 (24.3 MB/s) - ‘mindinsight-1.3.0-py3-none-any.whl’ saved [5422450/5422450] root@ubuntu:~/123/mindinsight# vi Dockerfile root@ubuntu:~/123/mindinsight# root@ubuntu:~/123/mindinsight# root@ubuntu:~/123/mindinsight# root@ubuntu:~/123/mindinsight# cat Dockerfile FROM python:3.7.5 # -------------------------(Optional) Configure the pip source.--[l(1] --------------------- #ENV http_proxy http://<user>:<password>@ip:port #ENV https_proxy http://<user>:<password>@ip:port #ENV ftp_proxy ftp://<user>:<password>@ip:port WORKDIR /tmp COPY . ./ RUN mkdir -p ~/.pip \ && echo '[global] \n\ index-url=https://pypi.doubanio.com/simple/\n\ trusted-host=pypi.doubanio.com' >> ~/.pip/pip.conf RUN pip install --upgrade pip && pip3 install mindinsight-1.3.0-py3-none-any.whl && \ rm mindinsight-1.3.0-py3-none-any.whl && rm Dockerfile RUN sed -i "/^HOST/cHOST = '0.0.0.0'" /usr/local/lib/python3.7/site-packages/mindinsight/conf/constants.py ENV http_proxy '' ENV https_proxy '' ENV ftp_proxy '' RUN useradd -d /home/hwMindX -u 9000 -m -s /bin/bash hwMindX && \ useradd -d /home/HwHiAiUser -u 1000 -m -s /bin/bash HwHiAiUser && \ usermod -a -G HwHiAiUser hwMindX root@ubuntu:~/123/mindinsight# vi start.sh root@ubuntu:~/123/mindinsight# root@ubuntu:~/123/mindinsight# root@ubuntu:~/123/mindinsight# vi start.sh root@ubuntu:~/123/mindinsight# root@ubuntu:~/123/mindinsight# root@ubuntu:~/123/mindinsight# root@ubuntu:~/123/mindinsight# cat start.sh #!/bin/bash param=$* mindinsight start $param while true do sleep 30 processnum=`ps -ef | grep -w gunicorn | grep -v grep | wc -l` if [ $processnum -le 0 ];then exit 1 fi done root@ubuntu:~/123/mindinsight# docker build -t mindinsight:latest . Sending build context to Docker daemon 5.427MB Step 1/10 : FROM python:3.7.5 ---> a4356c370cda Step 2/10 : WORKDIR /tmp ---> Using cache ---> 6dca759650eb Step 3/10 : COPY . ./ ---> 1c047c1f27a0 Step 4/10 : RUN mkdir -p ~/.pip && echo '[global] \nindex-url=https://pypi.doubanio.com/simple/\ntrusted-host=pypi.doubanio.com' >> ~/.pip/pip.conf ---> Running in 9ec07e2141f8 Removing intermediate container 9ec07e2141f8 ---> d2770d9bceb0 Step 5/10 : RUN pip install --upgrade pip && pip3 install mindinsight-1.3.0-py3-none-any.whl && rm mindinsight-1.3.0-py3-none-any.whl && rm Dockerfile ---> Running in 4f6b33bf9638 Looking in indexes: https://pypi.doubanio.com/simple/ Collecting pip Downloading https://pypi.doubanio.com/packages/ca/31/b88ef447d595963c01060998cb329251648acf4a067721b0452c45527eb8/pip-21.2.4-py3-none-any.whl (1.6MB) Installing collected packages: pip Found existing installation: pip 19.3.1 Uninstalling pip-19.3.1: Successfully uninstalled pip-19.3.1 Successfully installed pip-21.2.4 Looking in indexes: https://pypi.doubanio.com/simple/ Processing ./mindinsight-1.3.0-py3-none-any.whl Collecting treelib>=1.6.1 Downloading https://pypi.doubanio.com/packages/04/b0/2269c328abffbb63979f7143351a24a066776b87526d79956aea5018b80a/treelib-1.6.1.tar.gz (24 kB) Collecting XlsxWriter>=1.3.2 Downloading https://pypi.doubanio.com/packages/68/51/f6f6aa86106712dad0db9663c7d24b6b32d2103b626d900fa68d48a9b262/XlsxWriter-3.0.1-py3-none-any.whl (148 kB) Collecting pandas>=1.0.4 Downloading https://pypi.doubanio.com/packages/08/dc/d3513ec40c7df37a0e55b749a9b3a715f0d8b992c34c6ec6050bfd4a1703/pandas-1.3.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.7 MB) Collecting MarkupSafe>=1.1.1 Downloading https://pypi.doubanio.com/packages/70/fc/5a7253a9c1c4e2a3feadb80a5def4563500daa4b2d4a39cae39483afa1b0/MarkupSafe-2.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (26 kB) Collecting scikit-learn>=0.23.1 Downloading https://pypi.doubanio.com/packages/f3/78/b4aa1db778c2eb4a2e7ee0df84461ecb1bb2019031fd08723bd4c923452f/scikit_learn-0.24.2-cp37-cp37m-manylinux2014_aarch64.whl (24.0 MB) Collecting psutil>=5.7.0 Downloading https://pypi.doubanio.com/packages/e1/b0/7276de53321c12981717490516b7e612364f2cb372ee8901bd4a66a000d7/psutil-5.8.0.tar.gz (470 kB) Collecting marshmallow>=3.10.0 Downloading https://pypi.doubanio.com/packages/2b/fb/d42cbb318e07c4d709a3cb8d85a2ca75fbb373fc536cb0afd36039233f32/marshmallow-3.13.0-py2.py3-none-any.whl (47 kB) Collecting yapf>=0.30.0 Downloading https://pypi.doubanio.com/packages/5f/0d/8814e79eb865eab42d95023b58b650d01dec6f8ea87fc9260978b1bf2167/yapf-0.31.0-py2.py3-none-any.whl (185 kB) Collecting Jinja2>=2.10.1 Downloading https://pypi.doubanio.com/packages/80/21/ae597efc7ed8caaa43fb35062288baaf99a7d43ff0cf66452ddf47604ee6/Jinja2-3.0.1-py3-none-any.whl (133 kB) Collecting Flask>=1.1.1 Downloading https://pypi.doubanio.com/packages/54/4f/1b294c1a4ab7b2ad5ca5fc4a9a65a22ef1ac48be126289d97668852d4ab3/Flask-2.0.1-py3-none-any.whl (94 kB) Collecting protobuf>=3.8.0 Downloading https://pypi.doubanio.com/packages/fd/5f/6d6f7a5859caf79894685ec543354edc05538a0a34d63a411a2a7cb4ecfd/protobuf-3.17.3-cp37-cp37m-manylinux2014_aarch64.whl (922 kB) Collecting google-pasta>=0.1.8 Downloading https://pypi.doubanio.com/packages/a3/de/c648ef6835192e6e2cc03f40b19eeda4382c49b5bafb43d88b931c4c74ac/google_pasta-0.2.0-py3-none-any.whl (57 kB) Collecting pyyaml>=5.3.1 Downloading https://pypi.doubanio.com/packages/32/ac/a9383af90be713b0cb2ee7c7eb4317ab76957ed0a7e4aa9b9c170a992565/PyYAML-5.4.1-cp37-cp37m-manylinux2014_aarch64.whl (716 kB) Collecting gunicorn>=20.0.4 Downloading https://pypi.doubanio.com/packages/e4/dd/5b190393e6066286773a67dfcc2f9492058e9b57c4867a95f1ba5caf0a83/gunicorn-20.1.0-py3-none-any.whl (79 kB) Collecting pillow>=6.2.0 Downloading https://pypi.doubanio.com/packages/df/97/e6e1aae9d75a7ac638cd7e5c5ddd1cf0ed3813275c07a43b68d081e1d479/Pillow-8.3.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.9 MB) Collecting Click>=7.0 Downloading https://pypi.doubanio.com/packages/76/0a/b6c5f311e32aeb3b406e03c079ade51e905ea630fc19d1262a46249c1c86/click-8.0.1-py3-none-any.whl (97 kB) Collecting scipy>=1.5.2 Downloading https://pypi.doubanio.com/packages/01/0b/279f3a059ee7e59aa087ccfe0c81e69fc286b869a9052f8c119ba1138a7b/scipy-1.7.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (27.3 MB) Collecting grpcio<=1.36.0,>=1.35.0 Downloading https://pypi.doubanio.com/packages/9d/9e/18e92a4042fdee8613f5613a37cf7162d32b5674f1b12d0f7b042e7e710b/grpcio-1.36.0.tar.gz (21.5 MB) Collecting Flask-Cors>=3.0.8 Downloading https://pypi.doubanio.com/packages/db/84/901e700de86604b1c4ef4b57110d4e947c218b9997adf5d38fa7da493bce/Flask_Cors-3.0.10-py2.py3-none-any.whl (14 kB) Collecting numpy>=1.17.0 Downloading https://pypi.doubanio.com/packages/5c/61/b2f14fb5aa1198fa63c6c90205dc2557df5cacdeb0b16d66abc6af8724b8/numpy-1.21.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (13.0 MB) Collecting six>=1.12.0 Downloading https://pypi.doubanio.com/packages/d9/5a/e7c31adbe875f2abbb91bd84cf2dc52d792b5a01506781dbcf25c91daf11/six-1.16.0-py2.py3-none-any.whl (11 kB) Collecting itsdangerous>=1.1.0 Downloading https://pypi.doubanio.com/packages/9c/96/26f935afba9cd6140216da5add223a0c465b99d0f112b68a4ca426441019/itsdangerous-2.0.1-py3-none-any.whl (18 kB) Collecting Werkzeug>=1.0.0 Downloading https://pypi.doubanio.com/packages/bd/24/11c3ea5a7e866bf2d97f0501d0b4b1c9bbeade102bb4b588f0d2919a5212/Werkzeug-2.0.1-py3-none-any.whl (288 kB) Collecting importlib-metadata Downloading https://pypi.doubanio.com/packages/c0/72/4512a88e402d4dc3bab49a845130d95ac48936ef3a9469b55cc79a60d84d/importlib_metadata-4.6.4-py3-none-any.whl (17 kB) Requirement already satisfied: setuptools>=3.0 in /usr/local/lib/python3.7/site-packages (from gunicorn>=20.0.4->mindinsight==1.3.0) (41.6.0) Collecting pytz>=2017.3 Downloading https://pypi.doubanio.com/packages/70/94/784178ca5dd892a98f113cdd923372024dc04b8d40abe77ca76b5fb90ca6/pytz-2021.1-py2.py3-none-any.whl (510 kB) Collecting python-dateutil>=2.7.3 Downloading https://pypi.doubanio.com/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB) Collecting threadpoolctl>=2.0.0 Downloading https://pypi.doubanio.com/packages/c6/e8/c216b9b60cbba4642d3ca1bae7a53daa0c24426f662e0e3ce3dc7f6caeaa/threadpoolctl-2.2.0-py3-none-any.whl (12 kB) Collecting joblib>=0.11 Downloading https://pypi.doubanio.com/packages/55/85/70c6602b078bd9e6f3da4f467047e906525c355a4dacd4f71b97a35d9897/joblib-1.0.1-py3-none-any.whl (303 kB) Collecting future Downloading https://pypi.doubanio.com/packages/45/0b/38b06fd9b92dc2b68d58b75f900e97884c45bedd2ff83203d933cf5851c9/future-0.18.2.tar.gz (829 kB) Collecting typing-extensions>=3.6.4 Downloading https://pypi.doubanio.com/packages/2e/35/6c4fff5ab443b57116cb1aad46421fb719bed2825664e8fe77d66d99bcbc/typing_extensions-3.10.0.0-py3-none-any.whl (26 kB) Collecting zipp>=0.5 Downloading https://pypi.doubanio.com/packages/92/d9/89f433969fb8dc5b9cbdd4b4deb587720ec1aeb59a020cf15002b9593eef/zipp-3.5.0-py3-none-any.whl (5.7 kB) Building wheels for collected packages: grpcio, psutil, treelib, future Building wheel for grpcio (setup.py): started Building wheel for grpcio (setup.py): still running... Building wheel for grpcio (setup.py): finished with status 'done' Created wheel for grpcio: filename=grpcio-1.36.0-cp37-cp37m-linux_aarch64.whl size=43277028 sha256=0f9c41905a2331f6405bee3d2e7dcf083ea1aa6e39f85ae1190ff3a2ce98069a Stored in directory: /root/.cache/pip/wheels/dd/72/74/30b696f7d2a6abedf42d201eccd5f7a03f84931dfaa4b147db Building wheel for psutil (setup.py): started Building wheel for psutil (setup.py): finished with status 'done' Created wheel for psutil: filename=psutil-5.8.0-cp37-cp37m-linux_aarch64.whl size=295178 sha256=34f88db3e2056672357f438d0d338027bb65594437eafb4ae7c391ad0380d8bb Stored in directory: /root/.cache/pip/wheels/2f/c7/77/86efc5d98b9a79575ab1aaa9c24651f8841e57d46862979efd Building wheel for treelib (setup.py): started Building wheel for treelib (setup.py): finished with status 'done' Created wheel for treelib: filename=treelib-1.6.1-py3-none-any.whl size=18370 sha256=437a681028a4c479a0cc23c87a01a2cc51be82dc9fd355f3baa9e1363fe7fa5b Stored in directory: /root/.cache/pip/wheels/44/dd/b6/a9967a60d3575162a2e29846347f826dcb20466b0a1b67198e Building wheel for future (setup.py): started Building wheel for future (setup.py): finished with status 'done' Created wheel for future: filename=future-0.18.2-py3-none-any.whl size=491056 sha256=5b3be1990014b279b2ec75bfb2ba81737b5f2eee949d6573c7924391bdd19ed7 Stored in directory: /root/.cache/pip/wheels/97/83/dc/8e47b8e3874918101250790fbce5d89fef8d0c33eb8097ad07 Successfully built grpcio psutil treelib future Installing collected packages: zipp, typing-extensions, MarkupSafe, importlib-metadata, Werkzeug, six, numpy, Jinja2, itsdangerous, Click, threadpoolctl, scipy, pytz, python-dateutil, joblib, future, Flask, yapf, XlsxWriter, treelib, scikit-learn, pyyaml, psutil, protobuf, pillow, pandas, marshmallow, gunicorn, grpcio, google-pasta, Flask-Cors, mindinsight Successfully installed Click-8.0.1 Flask-2.0.1 Flask-Cors-3.0.10 Jinja2-3.0.1 MarkupSafe-2.0.1 Werkzeug-2.0.1 XlsxWriter-3.0.1 future-0.18.2 google-pasta-0.2.0 grpcio-1.36.0 gunicorn-20.1.0 importlib-metadata-4.6.4 itsdangerous-2.0.1 joblib-1.0.1 marshmallow-3.13.0 mindinsight-1.3.0 numpy-1.21.2 pandas-1.3.2 pillow-8.3.1 protobuf-3.17.3 psutil-5.8.0 python-dateutil-2.8.2 pytz-2021.1 pyyaml-5.4.1 scikit-learn-0.24.2 scipy-1.7.1 six-1.16.0 threadpoolctl-2.2.0 treelib-1.6.1 typing-extensions-3.10.0.0 yapf-0.31.0 zipp-3.5.0 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv Removing intermediate container 4f6b33bf9638 ---> 2ef8fa6e4a74 Step 6/10 : RUN sed -i "/^HOST/cHOST = '0.0.0.0'" /usr/local/lib/python3.7/site-packages/mindinsight/conf/constants.py ---> Running in 1da0a898001b Removing intermediate container 1da0a898001b ---> 08940216b1cc Step 7/10 : ENV http_proxy '' ---> Running in 34dee7b0cd32 Removing intermediate container 34dee7b0cd32 ---> 7b7d62b31d09 Step 8/10 : ENV https_proxy '' ---> Running in ccc705d304f8 Removing intermediate container ccc705d304f8 ---> a533d73340db Step 9/10 : ENV ftp_proxy '' ---> Running in 583ab62da6b4 Removing intermediate container 583ab62da6b4 ---> e9377900aedc Step 10/10 : RUN useradd -d /home/hwMindX -u 9000 -m -s /bin/bash hwMindX && useradd -d /home/HwHiAiUser -u 1000 -m -s /bin/bash HwHiAiUser && usermod -a -G HwHiAiUser hwMindX ---> Running in c111b84f6220 Removing intermediate container c111b84f6220 ---> 7c11b719966b Successfully built 7c11b719966b Successfully tagged mindinsight:latest root@ubuntu:~/123/mindinsight# docker images | grep mindinsight mindinsight latest 7c11b719966b 17 seconds ago 1.52GB root@ubuntu:~/123/mindinsight#十二、配置Grafana 打开Prometheus地址 》 选择“Status > Targets” 》 当kubenetes-cadvisor下的“Endpoint”状态为“UP”时,记录“Labels”下的job值,该值为cadvisor所在节点的nodeName,下方文件中的“nodeName”批量替换成此名称。{ "annotations": { "list": [ { "builtIn": 1, "datasource": "-- Grafana --", "enable": true, "hide": true, "iconColor": "rgba(0, 211, 255, 1)", "name": "Annotations & Alerts", "type": "dashboard" } ] }, "editable": true, "gnetId": null, "graphTooltip": 0, "id": 2, "links": [], "panels": [ { "datasource": null, "fieldConfig": { "defaults": { "custom": {}, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] } }, "overrides": [] }, "gridPos": { "h": 8, "w": 7, "x": 0, "y": 0 }, "id": 2, "options": { "orientation": "auto", "reduceOptions": { "calcs": [ "mean" ], "fields": "", "values": false }, "showThresholdLabels": false, "showThresholdMarkers": true }, "pluginVersion": "7.0.2", "targets": [ { "expr": "npu_chip_info_health_status{id=\"0\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片0", "refId": "A" }, { "expr": "npu_chip_info_health_status{id=\"1\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片1", "refId": "B" }, { "expr": "npu_chip_info_health_status{id=\"2\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片2", "refId": "C" }, { "expr": "npu_chip_info_health_status{id=\"3\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片3", "refId": "D" }, { "expr": "npu_chip_info_health_status{id=\"4\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片4", "refId": "E" }, { "expr": "npu_chip_info_health_status{id=\"5\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片5", "refId": "F" }, { "expr": "npu_chip_info_health_status{id=\"6\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片6", "refId": "G" }, { "expr": "npu_chip_info_health_status{id=\"7\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片7", "refId": "H" } ], "timeFrom": null, "timeShift": null, "title": "npu健康状态(nodeName)", "type": "gauge" }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "datasource": "Prometheus", "fieldConfig": { "defaults": { "custom": {}, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] } }, "overrides": [] }, "fill": 1, "fillGradient": 0, "gridPos": { "h": 8, "w": 8, "x": 7, "y": 0 }, "hiddenSeries": false, "id": 6, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "nullPointMode": "null", "options": { "dataLinks": [] }, "percentage": false, "pluginVersion": "7.0.3", "pointradius": 2, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "npu_chip_info_temperature{id=\"0\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片0", "refId": "A" }, { "expr": "npu_chip_info_temperature{id=\"1\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片1", "refId": "B" }, { "expr": "npu_chip_info_temperature{id=\"2\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片2", "refId": "C" }, { "expr": "npu_chip_info_temperature{id=\"3\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片3", "refId": "D" }, { "expr": "npu_chip_info_temperature{id=\"4\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片4", "refId": "E" }, { "expr": "npu_chip_info_temperature{id=\"5\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片5", "refId": "F" }, { "expr": "npu_chip_info_temperature{id=\"6\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片6", "refId": "G" }, { "expr": "npu_chip_info_temperature{id=\"7\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片7", "refId": "H" } ], "thresholds": [], "timeFrom": null, "timeRegions": [], "timeShift": null, "title": "npu温度(nodeName)", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "datasource": null, "fieldConfig": { "defaults": { "custom": {}, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] } }, "overrides": [] }, "gridPos": { "h": 8, "w": 8, "x": 15, "y": 0 }, "id": 12, "options": { "colorMode": "value", "graphMode": "area", "justifyMode": "auto", "orientation": "auto", "reduceOptions": { "calcs": [ "mean" ], "fields": "", "values": false } }, "pluginVersion": "7.0.2", "targets": [ { "expr": "npu_chip_info_voltage{id=\"0\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片0", "refId": "A" }, { "expr": "npu_chip_info_voltage{id=\"1\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片1", "refId": "B" }, { "expr": "npu_chip_info_voltage{id=\"2\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片2", "refId": "C" }, { "expr": "npu_chip_info_voltage{id=\"3\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片3", "refId": "D" }, { "expr": "npu_chip_info_voltage{id=\"4\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片4", "refId": "E" }, { "expr": "npu_chip_info_voltage{id=\"5\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片5", "refId": "F" }, { "expr": "npu_chip_info_voltage{id=\"6\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片6", "refId": "G" }, { "expr": "npu_chip_info_voltage{id=\"7\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片7", "refId": "H" } ], "timeFrom": null, "timeShift": null, "title": "npu电压(nodeName)", "type": "stat" }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "datasource": null, "fieldConfig": { "defaults": { "custom": { "align": null }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] } }, "overrides": [] }, "fill": 1, "fillGradient": 0, "gridPos": { "h": 8, "w": 7, "x": 0, "y": 8 }, "hiddenSeries": false, "id": 8, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "nullPointMode": "null", "options": { "dataLinks": [] }, "percentage": false, "pluginVersion": "7.0.3", "pointradius": 2, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "npu_chip_info_used_memory{id=\"0\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片0", "refId": "A" }, { "expr": "npu_chip_info_used_memory{id=\"1\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片1", "refId": "B" }, { "expr": "npu_chip_info_used_memory{id=\"2\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片2", "refId": "C" }, { "expr": "npu_chip_info_used_memory{id=\"3\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片3", "refId": "D" }, { "expr": "npu_chip_info_used_memory{id=\"4\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片4", "refId": "E" }, { "expr": "npu_chip_info_used_memory{id=\"5\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片5", "refId": "F" }, { "expr": "npu_chip_info_used_memory{id=\"6\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片6", "refId": "G" }, { "expr": "npu_chip_info_used_memory{id=\"7\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片7", "refId": "H" } ], "thresholds": [], "timeFrom": null, "timeRegions": [], "timeShift": null, "title": "npu内存使用(nodeName)", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "datasource": null, "description": "", "fieldConfig": { "defaults": { "custom": { "align": null }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] } }, "overrides": [] }, "fill": 1, "fillGradient": 0, "gridPos": { "h": 8, "w": 8, "x": 7, "y": 8 }, "hiddenSeries": false, "id": 10, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "nullPointMode": "null", "options": { "dataLinks": [] }, "percentage": false, "pluginVersion": "7.0.3", "pointradius": 2, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "npu_chip_info_utilization{id=\"0\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片0", "refId": "A" }, { "expr": "npu_chip_info_utilization{id=\"1\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片1", "refId": "B" }, { "expr": "npu_chip_info_utilization{id=\"2\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片2", "refId": "C" }, { "expr": "npu_chip_info_utilization{id=\"3\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片3", "refId": "D" }, { "expr": "npu_chip_info_utilization{id=\"4\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片4", "refId": "E" }, { "expr": "npu_chip_info_utilization{id=\"5\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片5", "refId": "F" }, { "expr": "npu_chip_info_utilization{id=\"6\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片6", "refId": "G" }, { "expr": "npu_chip_info_utilization{id=\"7\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片7", "refId": "H" } ], "thresholds": [], "timeFrom": null, "timeRegions": [], "timeShift": null, "title": "npu_AI_Core使用率(nodeName)", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "datasource": null, "fieldConfig": { "defaults": { "custom": { "align": null }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] } }, "overrides": [] }, "fill": 1, "fillGradient": 0, "gridPos": { "h": 8, "w": 8, "x": 15, "y": 8 }, "hiddenSeries": false, "id": 4, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "nullPointMode": "null", "options": { "dataLinks": [] }, "percentage": false, "pluginVersion": "7.0.3", "pointradius": 2, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "npu_chip_info_power{id=\"0\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片0", "refId": "A" }, { "expr": "npu_chip_info_power{id=\"1\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片1", "refId": "B" }, { "expr": "npu_chip_info_power{id=\"2\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片2", "refId": "C" }, { "expr": "npu_chip_info_power{id=\"3\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片3", "refId": "D" }, { "expr": "npu_chip_info_power{id=\"4\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片4", "refId": "E" }, { "expr": "npu_chip_info_power{id=\"5\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片5", "refId": "F" }, { "expr": "npu_chip_info_power{id=\"6\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片6", "refId": "G" }, { "expr": "npu_chip_info_power{id=\"7\",job=\"nodeName\"}", "interval": "", "legendFormat": "芯片7", "refId": "H" } ], "thresholds": [], "timeFrom": null, "timeRegions": [], "timeShift": null, "title": "npu使用功耗(nodeName)", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "datasource": null, "fieldConfig": { "defaults": { "custom": {} }, "overrides": [] }, "fill": 1, "fillGradient": 0, "gridPos": { "h": 10, "w": 7, "x": 0, "y": 16 }, "hiddenSeries": false, "id": 20, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "nullPointMode": "null", "options": { "dataLinks": [] }, "percentage": false, "pointradius": 2, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "container_memory_usage_bytes", "interval": "", "legendFormat": "", "refId": "A" } ], "thresholds": [], "timeFrom": null, "timeRegions": [], "timeShift": null, "title": "容器内存使用量", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "datasource": null, "fieldConfig": { "defaults": { "custom": {} }, "overrides": [] }, "fill": 1, "fillGradient": 0, "gridPos": { "h": 10, "w": 7, "x": 7, "y": 16 }, "hiddenSeries": false, "id": 18, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "nullPointMode": "null", "options": { "dataLinks": [] }, "percentage": false, "pointradius": 2, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "sum(rate(container_network_receive_bytes_total{image!=\"\"}[1m])) without (interface)", "interval": "", "legendFormat": "", "refId": "A" } ], "thresholds": [], "timeFrom": null, "timeRegions": [], "timeShift": null, "title": "容器网络接收量速率", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } } ], "refresh": "5s", "schemaVersion": 25, "style": "dark", "tags": [], "templating": { "list": [] }, "time": { "from": "now-15m", "to": "now" }, "timepicker": { "refresh_intervals": [ "10s", "30s", "1m", "5m", "15m", "30m", "1h", "2h", "1d" ] }, "timezone": "", "title": "nodeName", "uid": "2kWOIniGz", "version": 7 } 查看pod:root@ubuntu:~# kubectl get pod -A NAMESPACE NAME READY STATUS RESTARTS AGE cadvisor cadvisor-phj6x 1/1 Running 1 17h default dls-cec-deploy-686bd4d6cd-gtrqb 1/1 Running 2 15h default dls-mms-deploy-6fd697754f-8xkkv 1/1 Running 2 15h default hccl-controller-645bb466f-lw9b4 1/1 Running 1 17h default tjm-77f784dcf-6s2f4 1/1 Running 2 15h kube-system ascend-device-plugin-daemonset-qrfbx 1/1 Running 1 17h kube-system calico-kube-controllers-8464785d6b-tl44n 1/1 Running 1 17h kube-system calico-node-lm7x5 1/1 Running 1 17h kube-system coredns-6955765f44-czzws 1/1 Running 1 17h kube-system coredns-6955765f44-t2n4z 1/1 Running 1 17h kube-system dls-apigw-deploy-9f58f549-sklgc 1/1 Running 2 15h kube-system dls-dms-deploy-76b79854cc-6m54s 1/1 Running 2 15h kube-system dls-ims-deploy-5445d6cc9d-96chh 1/1 Running 2 15h kube-system dls-nginx-deploy-7c9d889998-84956 1/1 Running 0 15h kube-system etcd-ubuntu 1/1 Running 1 17h kube-system grafana-core-f97475d78-b74ww 1/1 Running 0 15h kube-system kube-apiserver-ubuntu 1/1 Running 1 17h kube-system kube-controller-manager-ubuntu 1/1 Running 1 17h kube-system kube-proxy-rljv7 1/1 Running 1 17h kube-system kube-scheduler-ubuntu 1/1 Running 1 17h kube-system mysql-5cccdd88bd-mqv27 1/1 Running 0 15h kube-system prometheus-58c69548b4-bgw4h 1/1 Running 0 15h kube-system redis-deploy-7fbc4fb97d-bkkmb 1/1 Running 0 15h volcano-system volcano-admission-74776688c8-45mr8 1/1 Running 1 17h volcano-system volcano-admission-init-zgr5t 0/1 Completed 0 17h volcano-system volcano-controllers-6786db54f-nwnfw 1/1 Running 1 17h volcano-system volcano-scheduler-844f9b547b-qkxgt 1/1 Running 1 17h root@ubuntu:~# Linux运维交流社区Linux运维交流社区,互联网新闻以及技术交流。33篇原创内容公众号本文使用 文章同步助手 同步
2021年12月30日
924 阅读
0 评论
0 点赞
2021-12-30
k8s集群进行删除并添加node节点
在已建立好的k8s集群中删除节点后,进行添加新的节点,可参考用于添加全新node节点,若新的node需要安装docker和k8s基础组件。 建立集群可以参考曾经的文章:CentOS8 搭建KubernetesLinux运维交流社区推荐搜索k8s集群k8s集群添加节点 1. 在master中,查看节点数和要删除的节点数,因集群ip进行了修改,节点出现了异常。 [root@k8s-master ~]# kubectl get nodes NAME STATUS ROLES AGE VERSION k8s-master Ready master 13d v1.19.3 k8s-node1 NotReady <none> 13d v1.19.3 k8s-node2 NotReady <none> 13d v1.19.3 2. 进行删除节点操作。 [root@k8s-master ~]# kubectl delete nodes k8s-node1 node "k8s-node1" deleted [root@k8s-master ~]# kubectl delete nodes k8s-node2 node "k8s-node2" deleted 3. 在被删除的node节点中清空集群数据信息。\[root@k8s-node1 ~\]# kubeadm reset \[reset\] WARNING: Changes made to this host by 'kubeadm init' or 'kubeadm join' will be reverted. \[reset\] Are you sure you want to proceed? \[y/N\]: y \[preflight\] Running pre-flight checks W1121 05:40:44.876393 9649 removeetcdmember.go:79\] \[reset\] No kubeadm config, using etcd pod spec to get data directory \[reset\] No etcd config found. Assuming external etcd \[reset\] Please, manually reset etcd to prevent further issues \[reset\] Stopping the kubelet service \[reset\] Unmounting mounted directories in "/var/lib/kubelet" \[reset\] Deleting contents of config directories: \[/etc/kubernetes/manifests /etc/kubernetes/pki\] \[reset\] Deleting files: \[/etc/kubernetes/admin.conf /etc/kubernetes/kubelet.conf /etc/kubernetes/bootstrap-kubelet.conf /etc/kubernetes/controller-manager.conf /etc/kubernetes/scheduler.conf\] \[reset\] Deleting contents of stateful directories: \[/var/lib/kubelet /var/lib/dockershim /var/run/kubernetes /var/lib/cni\] The reset process does not clean CNI configuration. To do so, you must remove /etc/cni/net.d The reset process does not reset or clean up iptables rules or IPVS tables. If you wish to reset iptables, you must do so manually by using the "iptables" command. If your cluster was setup to utilize IPVS, run ipvsadm --clear (or similar) to reset your system's IPVS tables. The reset process does not clean your kubeconfig files and you must remove them manually. Please, check the contents of the $HOME/.kube/config file. 4. 在集群中查看集群的token值\[root@k8s-master ~\]# kubeadm token create --print-join-command W1121 05:38:27.405833 12512 configset.go:348\] WARNING: kubeadm cannot validate component configs for API groups \[kubelet.config.k8s.io kubeproxy.config.k8s.io\] kubeadm join 10.0.1.48:6443 --token 8xwcaq.qxekio9xd02ed936 --discovery-token-ca-cert-hash sha256:d988ba566675095ae25255d63b21cc4d5a9a69bee9905dc638f58b217c651c14 5. 将node节点重新添加到k8s集群中\[root@k8s-node1 ~\]# kubeadm join 10.0.1.48:6443 --token 8xwcaq.qxekio9xd02ed936 --discovery-token-ca-cert-hash sha256:d988ba566675095ae25255d63b21cc4d5a9a69bee9905dc638f58b217c651c14 \[preflight\] Running pre-flight checks \[WARNING IsDockerSystemdCheck\]: detected "cgroupfs" as the Docker cgroup driver. The recommended driver is "systemd". Please follow the guide at https://kubernetes.io/docs/setup/cri/ \[preflight\] Reading configuration from the cluster... \[preflight\] FYI: You can look at this config file with 'kubectl -n kube-system get cm kubeadm-config -oyaml' \[kubelet-start\] Writing kubelet configuration to file "/var/lib/kubelet/config.yaml" \[kubelet-start\] Writing kubelet environment file with flags to file "/var/lib/kubelet/kubeadm-flags.env" \[kubelet-start\] Starting the kubelet \[kubelet-start\] Waiting for the kubelet to perform the TLS Bootstrap... This node has joined the cluster: \* Certificate signing request was sent to apiserver and a response was received. \* The Kubelet was informed of the new secure connection details. Run 'kubectl get nodes' on the control-plane to see this node join the cluster. 6. 查看pod情况\[root@k8s-master ~\]# kubectl get pods -n kube-system -o wide NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES coredns-f9fd979d6-c6qrl 0/1 ContainerCreating 1 13d <none> k8s-node1 <none> <none> coredns-f9fd979d6-hmpbj 1/1 Running 0 13d 10.244.2.2 k8s-node2 <none> <none> etcd-k8s-master 1/1 Running 5 13d 10.0.1.48 k8s-master <none> <none> kube-apiserver-k8s-master 1/1 Running 6 13d 10.0.1.48 k8s-master <none> <none> kube-controller-manager-k8s-master 1/1 Running 5 13d 10.0.1.48 k8s-master <none> <none> kube-flannel-ds-5ftj9 1/1 Running 4 13d 10.0.1.48 k8s-master <none> <none> kube-flannel-ds-bwh28 1/1 Running 0 23m 10.0.1.50 k8s-node2 <none> <none> kube-flannel-ds-ttx7c 0/1 Init:0/1 0 23m 10.0.1.49 k8s-node1 <none> <none> kube-proxy-4xxxh 0/1 ContainerCreating 2 13d 10.0.1.49 k8s-node1 <none> <none> kube-proxy-7rs4w 1/1 Running 0 13d 10.0.1.50 k8s-node2 <none> <none> kube-proxy-d5hrv 1/1 Running 4 13d 10.0.1.48 k8s-master <none> <none> kube-scheduler-k8s-master 1/1 Running 5 13d 10.0.1.48 k8s-master <none> <none> 7.查看node情况\[root@k8s-master ~\]# kubectl get nodes NAME STATUS ROLES AGE VERSION k8s-master Ready master 13d v1.19.3 k8s-node1 Ready <none> 24m v1.19.3 k8s-node2 Ready <none> 24m v1.19.3高新科技园
2021年12月30日
537 阅读
0 评论
0 点赞
2021-12-30
k8s加入新的master节点出现etcd检查失败
背景: 昨天在建立好新的集群后,出现了新的问题,其中的一台master节点无法正常工作。虽然可以正常使用,但是就出现了单点故障,今天在修复时出现了etcd健康检查自检没通过。Yesterday, after a new cluster was established, a new problem a problem occurred, and one of the master nodes did not work properly. Although can be used normally, but there is a single point of failure, today in the repair of the etcd health check self-test failed.对加入集群中时,出现如下报错:When you join a cluster, the following error occurs 提示 etcd 监控检查失败,查看一下Kubernetes 集群中的 kubeadm 配置信息。Prompt the etcd monitoring check to fail and review the kubeadm configuration information in the Kubernetes cluster.*\[root@master-01 ~\]# kubectl describe configmaps kubeadm-config -n kube-system ---- apiEndpoints: master-01: advertiseAddress: 10.0.0.11 bindPort: 6443 master-02: advertiseAddress: 10.0.0.12 bindPort: 6443 master-03: advertiseAddress: 10.0.0.13 bindPort: 6443 apiVersion: kubeadm.k8s.io/v1beta2 kind: ClusterStatus Events: <none> 因为集群搭建的时候,etcd是镜像的方式,在master02上面出现问题后,进行剔除完成后,etcd还是在存储在每个master上面,所以重新添加的时候会得知健康检查失败。Because when the cluster is built, etcd is mirrored, after the problem on master02, after the cull is completed, etcd is still stored on top of each master, so when you add again, you will learn that the health check failed.*这时就需要进入容器内部进行手动删除这个etcd了,首先获取集群中的etcd pod列表看一下,并进入内部给一个sh窗口。 At this point you need to go inside the container to manually delete this etcd, first get the list of etcd pods in the cluster to see, and go inside to give a sh window\[root@master-01 ~\]# kubectl get pods -n kube-system | grep etcd \[root@master-01 ~\]# kubectl exec -it etcd-master-03 sh -n kube-system 进入容器后,执行如下操作: After entering the container, do the following\## 配置环境 $ export ETCDCTL\_API=3 $ alias etcdctl='etcdctl --endpoints=https://127.0.0.1:2379 --cacert=/etc/kubernetes/pki/etcd/ca.crt --cert=/etc/kubernetes/pki/etcd/server.crt --key=/etc/kubernetes/pki/etcd/server.key' ## 查看 etcd 集群成员列表 $ etcdctl member list ## 删除 etcd 集群成员 master-02 $ etcdctl member remove ## 再次查看 etcd 集群成员列表 $ etcdctl member list ## 退出容器 $ exit查看列表并删除已不存在的masterView the list and remove the master that no longer exists*再次进行加入master,即可成功。Join master again and you'll be successful**高新科技园
2021年12月30日
614 阅读
0 评论
0 点赞
2021-12-30
Linux内核高性能优化
Linux内核高性能优化—内核优化开始——–# 内核panic时,1秒后自动重启kernel.panic = 1# 允许更多的PIDs (减少滚动翻转问题); may break some programs 32768kernel.pid_max = 32768# 内核所允许的最大共享内存段的大小(bytes)kernel.shmmax = 4294967296# 在任何给定时刻,系统上可以使用的共享内存的总量(pages)kernel.shmall = 1073741824# 设定程序core时生成的文件名格式kernel.core_pattern = core_%e# 当发生oom时,自动转换为panicvm.panic_on_oom = 1# 表示强制Linux VM最低保留多少空闲内存(Kbytes)vm.min_free_kbytes = 1048576# 该值高于100,则将导致内核倾向于回收directory和inode cachevm.vfs_cache_pressure = 250# 表示系统进行交换行为的程度,数值(0-100)越高,越可能发生磁盘交换vm.swappiness = 20# 仅用10%做为系统cachevm.dirty_ratio = 10# 增加系统文件描述符限制 2^20-1fs.file-max = 1048575# 网络层优化# listen()的默认参数,挂起请求的最大数量,默认128net.core.somaxconn = 1024# 增加Linux自动调整TCP缓冲区限制net.core.wmem\_default = 8388608 net.core.rmem\_default = 8388608 net.core.rmem\_max = 16777216 net.core.wmem\_max = 16777216# 进入包的最大设备队列.默认是300net.core.netdev_max_backlog = 2000# 开启SYN洪水攻击保护net.ipv4.tcp_syncookies = 1# 开启并记录欺骗,源路由和重定向包net.ipv4.conf.all.log\_martians = 1 net.ipv4.conf.default.log\_martians = 1# 处理无源路由的包net.ipv4.conf.all.accept\_source\_route = 0 net.ipv4.conf.default.accept\_source\_route = 0# 开启反向路径过滤net.ipv4.conf.all.rp\_filter = 1 net.ipv4.conf.default.rp\_filter = 1# 确保无人能修改路由表net.ipv4.conf.all.accept\_redirects = 0 net.ipv4.conf.default.accept\_redirects = 0 net.ipv4.conf.all.secure\_redirects = 0 net.ipv4.conf.default.secure\_redirects = 0# 增加系统IP端口限制net.ipv4.ip_local_port_range = 9000 65533# TTLnet.ipv4.ip_default_ttl = 64# 增加TCP最大缓冲区大小net.ipv4.tcp\_rmem = 4096 87380 8388608 net.ipv4.tcp\_wmem = 4096 32768 8388608# Tcp自动窗口net.ipv4.tcp_window_scaling = 1# 进入SYN包的最大请求队列.默认1024net.ipv4.tcp_max_syn_backlog = 8192# 打开TIME-WAIT套接字重用功能,对于存在大量连接的Web服务器非常有效。 net.ipv4.tcp\_tw\_recycle = 1 net.ipv4.tcp\_tw\_reuse = 0 # 表示是否启用以一种比超时重发更精确的方法(请参阅 RFC 1323)来启用对 RTT 的计算;为了实现更好的性能应该启用这个选项net.ipv4.tcp_timestamps = 0# 表示本机向外发起TCP SYN连接超时重传的次数net.ipv4.tcp\_syn\_retries = 2 net.ipv4.tcp\_synack\_retries = 2# 减少处于FIN-WAIT-2连接状态的时间,使系统可以处理更多的连接。 net.ipv4.tcp_fin_timeout = 10 # 减少TCP KeepAlive连接侦测的时间,使系统可以处理更多的连接。 # 如果某个TCP连接在idle 300秒后,内核才发起probe.如果probe 2次(每次2秒)不成功,内核才彻底放弃,认为该连接已失效.net.ipv4.tcp\_keepalive\_time = 300 net.ipv4.tcp\_keepalive\_probes = 2 net.ipv4.tcp\_keepalive\_intvl = 2# 系统所能处理不属于任何进程的TCP sockets最大数量net.ipv4.tcp_max_orphans = 262144# 系统同时保持TIME_WAIT套接字的最大数量,如果超过这个数字,TIME_WAIT套接字将立刻被清除并打印警告信息。net.ipv4.tcp_max_tw_buckets = 20000 # arp_table的缓存限制优化net.ipv4.neigh.default.gc\_thresh1 = 128 net.ipv4.neigh.default.gc\_thresh2 = 512 net.ipv4.neigh.default.gc\_thresh3 = 4096——内核优化结束——–
2021年12月30日
591 阅读
0 评论
0 点赞
1
...
38
39
40