我是 Docker 的初学者。想知道这样做是否是一种好习惯以及最好的方法是什么?
系统:Ubuntu LTS 16.04.2
我想用代理在我的服务器上部署 Kubernetes。由于一些问题,我使用 polipo 将 sock5 代理转换为 http 代理。http代理已成功应用到终端。然后我搜索了: https ://docs.docker.com/engine/admin/systemd/#http-proxy 并在/etc/systemd/system/docker.service.d/http-proxy 中添加了 HTTP_PROXY 环境变量。配置:
[服务]
环境="HTTP_PROXY= http://127.0.0.1:8123/ "
然后这样做:
$ sudo systemctl show --property Environment docker Environment=HTTP_PROXY= http://127.0.0.1:8123/
$ sudo systemctl 守护进程重载
$ sudo systemctl 重启泊坞窗
然后我成功安装了kubelet kubeadm kubectl kubernetes-cni并运行了以下命令:
# kubeadm 初始化
这是操作的结果:
root@ubuntu16:~# kubeadm init
[kubeadm] 警告:kubeadm 处于测试阶段,请勿将其用于生产集群。
[init] 使用 Kubernetes 版本:v1.8.2
[init] 使用授权模式:[Node RBAC]
[飞行前] 运行飞行前检查
[预检]警告:连接到“ https://59.64.78.138:6443 ”使用代理
“ http://127.0.0.1:8123/ ”。如果这不是故意的,请调整您的代理设置
[预检] 启动 kubelet 服务
[kubeadm] 警告:从 1.8 开始,默认情况下令牌会在 24 小时后过期(如果您需要不会过期的令牌,请使用 --token-ttl 0)
[证书] 生成的 ca 证书和密钥。
[证书] 生成的 apiserver 证书和密钥。
[证书] 为 DNS 名称 [ubuntu16 kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] 和 IP [10.96.0.1 my_server_IP ]签名的 apiserver 服务证书
[证书] 生成 apiserver-kubelet-client 证书和密钥。
[证书] 生成 sa 密钥和公钥。
[证书] 生成的 front-proxy-ca 证书和密钥。
[证书] 生成的前端代理客户端证书和密钥。
[证书] 有效的证书和密钥现在存在于“/etc/kubernetes/pki”中
[kubeconfig] 将 KubeConfig 文件写入磁盘:“admin.conf”
[kubeconfig] 将 KubeConfig 文件写入磁盘:“kubelet.conf”
[kubeconfig] 将 KubeConfig 文件写入磁盘:“controller-manager.conf”
[kubeconfig] 将 KubeConfig 文件写入磁盘:“scheduler.conf”
[controlplane] 将组件 kube-apiserver 的静态 Pod 清单写入“/etc/kubernetes/manifests/kube-apiserver.yaml”
[controlplane] 将组件 kube-controller-manager 的静态 Pod 清单写入“/etc/kubernetes/manifests/kube-controller-manager.yaml”
[controlplane] 将组件 kube-scheduler 的静态 Pod 清单写入“/etc/kubernetes/manifests/kube-scheduler.yaml”
[etcd] 将本地 etcd 实例的静态 Pod 清单写入“/etc/kubernetes/manifests/etcd.yaml”
[init] 等待 kubelet 作为静态 Pod 从目录“/etc/kubernetes/manifests”启动控制平面
[init] 这通常需要大约一分钟;如果必须拉取控制平面图像,则需要更长的时间。
然后它没有继续,我跑了
# systemctl status kubelet
● kubelet.service - kubelet:Kubernetes 节点代理
已加载:已加载(/lib/systemd/system/kubelet.service;已启用;供应商预设:已启用)
插入:/etc/systemd/system/kubelet.service.d
└─10-kubeadm.conf, 90-local-extras.conf
活动:自 2017 年 11 月 5 日星期日 21:17:37 CST 起活动(运行);9分钟前
Docs: http://kubernetes.io/docs/
主PID:19363(kubelet)
任务:14
内存:39.9M
CPU: 14.229s
CGroup:/system.slice/kubelet.service
└─19363 /usr/bin/kubelet --bootstrap->?
kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/k
11 月 5 日 21:26:28 ubuntu16 kubelet[19363]:W1105 21:26:28.959628 19363 cni.go:196] 无法更新 cni 配置:没有 ne
Nov 05 21:26:28 ubuntu16 kubelet[19363]: E1105 21:26:28.960538 19363 kubelet.go:2095] 容器运行时网络不
11 月 5 日 21:26:33 ubuntu16 kubelet[19363]:W1105 21:26:33.962500 19363 cni.go:196] 无法更新 cni 配置:没有 ne
Nov 05 21:26:33 ubuntu16 kubelet[19363]: E1105 21:26:33.963407 19363 kubelet.go:2095] 容器运行时网络不
11 月 5 日 21:26:38 ubuntu16 kubelet[19363]:W1105 21:26:38.974986 19363 cni.go:196] 无法更新 cni 配置:没有 ne
11 月 5 日 21:26:38 ubuntu16 kubelet[19363]: E1105 21:26:38.975851 19363 kubelet.go:2095] 容器运行时网络不
11 月 5 日 21:26:43 ubuntu16 kubelet[19363]:W1105 21:26:43.977879 19363 cni.go:196] 无法更新 cni 配置:没有 ne
Nov 05 21:26:43 ubuntu16 kubelet[19363]: E1105 21:26:43.978806 19363 kubelet.go:2095] 容器运行时网络不
11 月 5 日 21:26:48 ubuntu16 kubelet[19363]:W1105 21:26:48.992642 19363 cni.go:196] 无法更新 cni 配置:没有 ne
Nov 05 21:26:48 ubuntu16 kubelet[19363]: E1105 21:26:48.993587 19363 kubelet.go:2095] 容器运行时网络不
第 1-23/23 行(完)
现在我很困惑如何解决这个问题。我在网上找了很久。但是没有用。请帮助或尝试提供一些想法如何实现这一目标。
提前致谢。