在设置Kubernetes之前设置虚拟数据中心(vDC)非常重要.这可以被视为一组机器,它们可以通过网络相互通信.对于实际操作方法,如果您没有设置物理或云基础架构,则可以在 PROFITBRICKS 上设置vDC.
任何IaaS设置完成后云完成后,您需要配置主和节点.
注意 : 显示Ubuntu机器的设置.同样可以在其他Linux机器上设置.
安装Docker : Kubernetes的所有实例都需要Docker.以下是安装Docker的步骤.
步骤1 : 使用root用户帐户登录计算机.
步骤2 : 更新包信息.确保apt软件包正常工作.
第3步 : 运行以下命令.
$ sudo apt-get update $ sudo apt-get install apt-transport-https ca-certificates
第4步 : 添加新的GPG密钥.
$ sudo apt-key adv \ --keyserver hkp://ha.pool. sks-keyservers.net:80 \ --recv-keys 58118E89F3A912897C070ADBF76221572C52609D $ echo"deb https://apt.dockerproject.org/repo ubuntu-trusty main"| sudo tee /etc/apt/sources.list.d/docker.list
第5步 : 更新API包图像.
$ sudo apt-get update
完成上述所有任务后,您可以从实际安装Docker引擎开始.但是,在此之前,您需要验证您使用的内核版本是否正确.
运行以下命令安装Docker引擎.
第1步 : 登录到机器.
步骤2 : 更新包索引.
$ sudo apt-get update
第3步 : 使用以下命令安装Docker Engine.
$ sudo apt-get install docker-engine
第4步 : 启动Docker守护程序.
$ sudo apt-get install docker-engine
第5步 : 如果安装了Docker,请使用以下命令.
$ sudo docker run hello-world
这需要安装在Kubernetes Master Machine上.要安装它,请运行以下命令.
$ curl -L https://github.com/coreos/etcd/releases/下载/v2.0.0/etcd -v2.0.0-linux-amd64.tar.gz -o etcd-v2.0.0-linux-amd64.tar.gz - > 1 $ tar xzvf etcd -v2.0.0-linux-amd64.tar.gz ------> 2 $ cd etcd-v2.0.0-linux-amd64 ------------> 3 $ mkdir/opt/bin -------------> 4 $ cp etcd */opt/bin ----------- > 5
在上面的命令组中 :
首先,我们下载 etcd .使用指定名称保存.
然后,我们必须解压缩tar包.
我们制作一个目录.在/opt命名bin中.
将提取的文件复制到目标位置.
现在我们准备好了建立Kubernetes.我们需要在群集中的所有计算机上安装Kubernetes.
$ git clone https://github.com/GoogleCloudPlatform/kubernetes.git $ cd kubernetes $ make release
以上命令将在根目录中创建 _output 目录kubernetes文件夹.接下来,我们可以将目录解压缩到我们选择的/opt/bin等目录中.
接下来,我们需要实际开始设置Kubernetes的网络部分主人和节点.为了做到这一点,我们将在主机文件中创建一个可以在节点机器上完成的条目.
$ echo"<主机的IP地址> kube-master <节点机的IP地址>" >> /etc/hosts
以下是上述命令的输出.
现在,我们将从Kubernetes Master的实际配置开始.
首先,我们将开始将所有配置文件复制到正确的位置.
$ cp<当前目录. location>/kube-apiserver/opt/bin/ $ cp<当前目录. location>/kube-controller-manager/opt/bin/ $ cp<当前目录. location>/kube-kube-scheduler/opt/bin/ $ cp<当前目录. location>/kubecfg/opt/bin/ $ cp<当前目录. location>/kubectl/opt/bin/ $ cp<当前目录. location>/kubernetes/opt/bin/
上述命令会将所有配置文件复制到所需位置.现在我们将回到我们构建Kubernetes文件夹的同一目录.
$ cp kubernetes/cluster/ubuntu/init_conf/kube- apiserver.conf/etc/init/ $ cp kubernetes/cluster/ubuntu/init_conf/kube-controller-manager.conf/etc/init/ $ cp kubernetes/cluster/ubuntu/init_conf/kube- kube-scheduler.conf/etc/init/ $ cp kubernetes/cluster/ubuntu/initd_scripts/kube-apiserver/etc/init.d/ $ cp kubernetes/cluster/ubuntu/initd_scripts/kube-controller-manager/etc/init.d/ $ cp kubernetes/cluster/ubuntu/initd_scripts/kube-kube-scheduler/etc/init.d/ $ cp kubernetes/cluster/ubuntu/default_scripts/kubelet/etc/default/ $ cp kubernetes/cluster/ubuntu/default_scripts/kube-proxy/etc/default/ $ cp kubernetes/cluster/ubuntu/default_scripts/kubelet/etc/default/
下一步是更新/etc下复制的配置文件.使用以下命令在master上配置etcd.
$ ETCD_OPTS =" - listen- client-urls = http://kube-master:4001"
为此主人,我们需要编辑之前复制过的/etc/default/kube-apiserver 文件.
$ KUBE_APISERVER_OPTS =" - address = 0.0.0.0 \ --port = 8080 \ --etcd_servers =<在ETCD_OPTS中配置的路径> \ - portal_net = 11.1.1.0/24 \ --allow_privileged = false \ --kubelet_port =<您要配置的端口> \ --v = 0"
我们需要在/etc/default/kube-中添加以下内容controller-manager .
$ KUBE_CONTROLLER_MANAGER_OPTS =" - address = 0.0.0.0 \ --master = 127.0.0.1 :8080 \ --machines = kube-minion \ -----> #this是kubernatics节点 --v = 0
接下来,在相应的文件中配置kube调度程序.
$ KUBE_SCHEDULER_OPTS =" - address = 0.0.0.0 \ --master = 127.0.0.1:8080 \ --v = 0"
完成上述所有任务后,我们可以通过培养Kubernetes Master来继续.为此,我们将重新启动Docker.
$ service docker restart
Kubernetes节点将运行 kubelet和kube-proxy 两个服务.在继续之前,我们需要将我们下载的二进制文件复制到我们想要配置kubernetes节点的所需文件夹中.
使用相同的方法复制我们为kubernetes master执行的文件.由于它只运行kubelet和kube-proxy,我们将对它们进行配置.
$ cp<提取文件的路径>/kubelet/opt/bin/ $ cp<提取文件的路径>/kube-proxy/opt/bin/ $ cp<提取文件的路径>/kubecfg/opt/bin/ $ cp<提取文件的路径>/kubectl/opt/bin/ $ cp<提取文件的路径>/kubernetes/opt/bin/
现在,我们将内容复制到相应的目录.
$ cp kubernetes/cluster/ubuntu/init_conf/kubelet.conf/etc/init/ $ cp kubernetes/cluster/ubuntu/init_conf/kube-proxy.conf/etc/init/ $ cp kubernetes/cluster/ubuntu/initd_scripts/kubelet/etc/init.d/ $ cp kubernetes/cluster/ubuntu/initd_scripts/kube-proxy/etc/init.d/ $ cp kubernetes/cluster/ubuntu/default_scripts/kubelet/etc/default/ $ cp kubernetes/cluster/ubuntu/default_scripts/kube-proxy/etc/default/
我们将配置 kubelet 和 kube-proxy conf 文件.
我们将配置/etc/init/kubelet.conf .
$ KUBELET_OPTS =" - address = 0.0.0.0 \ --port = 10250 \ --hostname_override = kube-minion \ --etcd_servers = http://kube-master:4001 \ --enable_server = true --v = 0" /
对于kube-proxy,我们将使用以下命令.
$ KUBE_PROXY_OPTS =" - etc_servers = http://kube-master:4001 \ --v = 0" /etc/init/kube-proxy.conf
最后,我们将重启Docker服务.
$ service docker restart
现在我们完成了配置.您可以通过运行以下命令来检查.
$/opt/bin/kubectl get minions