Ubuntu上手动安装部署Kubernetes详细指南

  两台Ubuntu16.04服务器:ip分别为192.168.56.160和192.168.56.161。。
  Kubernetes版本:1.5.5
  Docker版本:1.12.6
  etcd版本:2.2.1
  flannel版本:0.5.6
  其中160服务器既做Kubernetes的master节点,又做node节点;161服务器只做node节点。
  master节点上需要部署:kube-apiserver、kube-controller-manager、kube-scheduler、etcd服务。
  node节点上部署:kubelet、kube-proxy、docker和flannel服务。

下载 Kubernetes下载

  Client二进制下载:https://dl.k8s.io/v1.5.5/kubernetes-client-linux-amd64.tar.gz
  Server二进制下载:https://dl.k8s.io/v1.5.5/kubernetes-server-linux-amd64.tar.gz
  我的服务器是linux,amd64的,如果有其他环境,可以前往下载
  将可执行文件kubernetes目录下,server和client目中的kube-apiserver、kube-controller-manager、kubectl、kubelet、kube-proxy、kube-scheduler等都拷贝到/usr/bin/目录中。

etcd下载

  etcd的github release下载都是放在AWS S3上(点这里)的,我这网络访问不了或者很慢,可以到Linux公社资源站下载包。
  除此之外,还可以自己编译etcd源码,来获取etcd的可执行文件。
  将etcd的可执行文件etcd和etcdctl拷贝到/usr/bin/目录。

etcd-v2.2.1-linux-amd64.tar可以到Linux公社资源站下载:

------------------------------------------分割线------------------------------------------

免费下载地址在

用户名与密码都是

具体下载目录在 /2017年资料/4月/5日/Ubuntu上手动安装部署Kubernetes详细指南/

下载方法见

------------------------------------------分割线------------------------------------------

flannel下载

  flannel和etcd都是coreOS公司的产品,所以flannel的github release下载也是放在AWS S3上。不过幸好flannel的编译很简单,从github上下载,然后直接编译即可。然后会在flannel的bin或者dist目录下(版本不同可能导致目录不同)生成flannel可执行文件。

$ git clone -b v0.5.6 https://github.com/coreos/flannel.git $ cd flannel $ ./build

  具体的编译方法可能会不同,请参考flannel目录下的README.md文件。
  将可执行文件flanneld拷贝到/usr/bin/目录。
  创建/usr/bin/flannel目录,并将dist目录下的mk-docker-opts.sh文件拷贝到/usr/bin/flannel/中。

Kubernetes master配置 etcd配置 创建数据目录 $ sudo mkdir -p /var/lib/etcd/ 创建配置目录和文件 $ sudo mkdir -p /etc/etcd/ $ sudo vim /etc/etcd/etcd.conf ETCD_NAME=default ETCD_DATA_DIR="/var/lib/etcd/" ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379" ETCD_ADVERTISE_CLIENT_URLS="http://192.168.56.160:2379" 创建systemd文件 $ sudo vim /lib/systemd/system/etcd.service [Unit] Description=Etcd Server Documentation=https://github.com/coreos/etcd After=network.target [Service] User=root Type=notify EnvironmentFile=-/etc/etcd/etcd.conf ExecStart=/usr/bin/etcd Restart=on-failure RestartSec=10s LimitNOFILE=40000 [Install] WantedBy=multi-user.target 启动服务 $ sudo systemctl daemon-reload $ sudo systemctl enable etcd $ sudo systemctl start etcd 测试服务端口 $ sudo systemctl status etcd ● etcd.service - Etcd Server Loaded: loaded (/lib/systemd/system/etcd.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2017-03-27 11:19:35 CST; 7s ago ...

  再查看端口是否正常开放。

$ netstat -apn | grep 2379 tcp6 0 0 :::2379 :::* LISTEN 7211/etcd 创建一个etcd网络 $ etcdctl set /coreos.com/network/config '{ "Network": "192.168.4.0/24" }'

  如果部署的是etcd集群,那么每台etcd服务器上都需要执行上述步骤。但我这里只使用了standalone,所以我的etcd服务就搞定了。

Kubernetes通用配置 创建Kubernetes配置目录 $ sudo mkdir /etc/kubernetes Kubernetes通用配置文件

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/79524dc22edf9491c5c92273ce830cf0.html