Kubernetes 安装记

尝试1 Rancher 2.0

Rancher 2.0 TECH PREVIEW 基于Kubernetes进行了重构,重要组件RKE简化了Kubernetes的安装。

The Rancher container management platform has become an increasingly popular way to manage containers—it's being used to run tens of thousands of clusters. With Kubernetes becoming the fastest developing technology in the container ecosystem, we saw an opportunity. And rebuilt Rancher on Kubernetes. Rancher 2.0 provides the same great user experience on all Kubernetes clusters, whether they are managed using Rancher or existing Kubernetes clusters. The result? It’s now even easier for you to adopt Kubernetes and run containers.

赶紧装了一个,看到这个一键部署的界面心情愉悦。


Kubernetes 安装记_第1张图片
image.png

继续往下发现无法添加自定义节点,看quick-start-guide文档读到这一段表示无奈。

Currently in the tech preview, only Digital Ocean and AWS nodes are supported, but support for all the cloud providers and adding custom nodes will be added.

尝试2 RKE

转而研究RKE,类似的k8s安装工具还有 Kops,Kubespray,kubeasz。
introduction
quick-start-guide
github

由于还是开发阶段,需要严格按照RKE要求配置环境:

Requirements
Docker versions 1.12.6, 1.13.1, or 17.03 should be installed for Kubernetes 1.8.
OpenSSH 7.0+ must be installed on each node for stream local forwarding to work.
The SSH user used for node access must be a member of the docker group:
usermod -aG docker
Ports 6443, 2379, and 2380 should be opened between cluster nodes.

Docker安装 - CentOS 7.2
OpenSSH升级7.5 - CentOS 7.2

第一次尝试

wget https://github.com/rancher/rke/releases/download/v0.1.0/rke
chmod +x ./rke
./rke up --config cluster.yml

Minimal cluster.yml

ssh_key_path: ~/.ssh/id_rsa

nodes:
  - address: 127.0.0.1
    user: root
    role: [controlplane,worker,etcd]

services:
  etcd:
    image: quay.io/coreos/etcd:latest
  kube-api:
    image: rancher/k8s:v1.8.3-rancher2
  kube-controller:
    image: rancher/k8s:v1.8.3-rancher2
  scheduler:
    image: rancher/k8s:v1.8.3-rancher2
  kubelet:
    image: rancher/k8s:v1.8.3-rancher2
  kubeproxy:
    image: rancher/k8s:v1.8.3-rancher2

报错如下:

[root@VM_9_81_centos data]# ./rke up
INFO[0000] Building Kubernetes cluster
INFO[0000] [dialer] Setup tunnel for host [127.0.0.1]
FATA[0000] Failed to set up SSH tunneling for Etcd host [127.0.0.1]: Can't retrieve Docker Info: error during connect: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.24/info: Failed to dial ssh using address [127.0.0.1:22]: ssh: handshake failed: ssh: unable to authenticate, attempted methods [none publickey], no supported methods remain

参考issues/93,大概是CentOS下OpenSSH不支持root用户stream local forwarding,
笔者切换了用户依旧报错。

第二次尝试

更改配置文件让集群在另一台主机启动,注意这里必须配置两台主机之间的ssh免密登录,并且主机的docker,openssh配置符合要求:

nodes:
  - address: 10.0.41.49
    user: root
    role: [controlplane,worker,etcd]

启动后可以正常执行,直到报错如下:

FATA[0113] Failed to deploy addon execute job: Failed to get job complete status: 

参考issues/236修改配置:

kubelet:
    image: rancher/k8s:v1.8.3-rancher2
    extra_args: {"cgroup-driver":"systemd","fail-swap-on":"false"}

重新启动成功。

[root@VM_41_49_centos ~]# docker ps
CONTAINER ID        IMAGE                         COMMAND                  CREATED             STATUS              PORTS               NAMES
a130fb55e727        rancher/k8s:v1.8.3-rancher2   "/opt/rke/entrypoint."   12 hours ago        Up 12 hours                             kube-proxy
c48de5df898f        rancher/k8s:v1.8.3-rancher2   "/opt/rke/entrypoint."   12 hours ago        Up 12 hours                             kubelet
230e27bc227a        rancher/k8s:v1.8.3-rancher2   "/opt/rke/entrypoint."   12 hours ago        Up 12 hours                             scheduler
5bd79567afb2        rancher/k8s:v1.8.3-rancher2   "/opt/rke/entrypoint."   12 hours ago        Up 12 hours                             kube-controller
e670b28514ef        rancher/k8s:v1.8.3-rancher2   "/opt/rke/entrypoint."   12 hours ago        Up 12 hours                             kube-api
83d35086940f        quay.io/coreos/etcd:latest    "/usr/local/bin/etcd "   13 hours ago        Up 13 hours                             etcd

用Rancher2.0管理k8s集群
http://rancher.com/rancher2-0/

$ sudo docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/server:preview

由于是预览版,并且感觉到在CentOS上的测试并不充分,Ubuntu上应该好很多,故暂且搁置,等待正式版发布。

你可能感兴趣的:(Kubernetes 安装记)