2017-08-09 64 views
1

与Kubeadm一起安装Kubernetes时遇到了一些问题。我在公司网络背后工作。我在会话环境中声明了代理设置。如何在Kubeadm代理之后安装Kubernetes集群?

$ export http_proxy=http://proxy-ip:port/ 
$ export https_proxy=http://proxy-ip:port/ 
$ export no_proxy=master-ip,node-ip,127.0.0.1 

安装完所有必要的组件和依赖关系后,我开始初始化集群。为了使用当前的环境变量,我使用了sudo -E bash

$ sudo -E bash -c "kubeadm init --apiserver-advertise-address=192.168.1.102 --pod-network-cidr=10.244.0.0/16" 

然后输出消息永远挂在消息的下面。

[kubeadm] WARNING: kubeadm is in beta, please do not use it for production clusters. 
[init] Using Kubernetes version: v1.7.3 
[init] Using Authorization modes: [Node RBAC] 
[preflight] Running pre-flight checks 
[preflight] Starting the kubelet service 
[kubeadm] WARNING: starting in 1.8, tokens expire after 24 hours by default (if you require a non-expiring token use --token-ttl 0) 
[certificates] Generated CA certificate and key. 
[certificates] Generated API server certificate and key. 
[certificates] API Server serving cert is signed for DNS names [loadbalancer kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] and IPs [10.96.0.1 192.168.1.102] 
[certificates] Generated API server kubelet client certificate and key. 
[certificates] Generated service account token signing key and public key. 
[certificates] Generated front-proxy CA certificate and key. 
[certificates] Generated front-proxy client certificate and key. 
[certificates] Valid certificates and keys now exist in "/etc/kubernetes/pki" 
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/admin.conf" 
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/kubelet.conf" 
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/controller-manager.conf" 
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/scheduler.conf" 
[apiclient] Created API client, waiting for the control plane to become ready 

后来我发现,没有KUBE组件的上涨而kubelet保持请求kube-apiserversudo docker ps -a什么也没有返回。

它可能的根本原因是什么?

在此先感谢。

回答

1

我强烈怀疑这是试图拉下来gcr.io/google_containers/hyperkube:v1.7.3泊坞窗图像或什么的,这需要教学有关代理泊坞窗守护进程,in this way using systemd

这肯定会解释为什么docker ps -a说明不了什么,但我希望在dockerd日志journalctl -u docker.service(或等值系统)抱怨不能把拉gcr.io

根据我从kubeadm参考指南阅读,他们期待着您来修补在目标机器上的systemd配置到公开这些环境变量,而不是只是将它们设置在启动kubeadm的shell中(虽然这当然可能是一个功能请求)

+0

是的,它确实是'docker pull'的代理设置。我已经在systemd中设置了env,它工作正常。但是,谢谢你指出并清楚说明。 – ichbinblau