在 kubernetes 网站中国社区,看到一个很快速安装好 k8s 高可用集群的方式,现在分享一下最新版的安装方式
快速安装
需要准备好服务器或者虚拟机,作为集群的安装,初始环境:
主机名 | IP 地址 |
---|---|
master0 | 192.168.0.2 |
master1 | 192.168.0.3 |
master2 | 192.168.0.4 |
node0 | 192.168.0.5 |
服务器密码:123456
在线安装
只需要准备好服务器,在任意一台服务器上执行下面命令即可
# 下载并安装 sealos, sealos 是个 golang 的二进制工具,直接下载拷贝到 bin 目录即可 wget https://github.com/fanux/sealos/releases/download/v3.0.1/sealos && \ chmod +x sealos && mv sealos /usr/bin # 安装一个三 master 的 kubernetes 集群 sealos init --passwd 123456 \ --master 192.168.0.2 --master 192.168.0.3 --master 192.168.0.4 \ --node 192.168.0.5 \ --pkg-url https://sealyun.oss-cn-beijing.aliyuncs.com/413bd3624b2fb9e466601594b4f72072-1.17.0/kube1.17.0.tar.gz \ --version v1.17.0
- 参数含义:
参数名 | 含义 | 示例 |
---|---|---|
passwd | 服务器密码 | 123456 |
master | k8s master 节点 IP 地址 | 192.168.0.2 |
node | k8s node 节点 IP 地址 | 192.168.0.3 |
pkg-url | 离线资源包地址,支持下载到本地,或者一个远程地址 | /root/kube1.17.0.tar.gz |
version | 资源包对应的版本 | v1.17.0 |
TIP:
系统支持:centos7.2 以上 ubuntu16.04 以上 内核推荐 4.14 以上
推荐配置:centos7.4
注意事项:
必须同步所有服务器时间
所有服务器主机名不能重复
离线安装
- 下载 sealos 工具:https://github.com/fanux/sealos/releases/download/v3.0.1/sealos,并给予它可执行权限,将其移动至环境变量中
- 下载安装 k8s 所必须的,比如:docker、docker 镜像、kubelet、kubeadm、kubectl 等:https://sealyun.oss-cn-beijing.aliyuncs.com/413bd3624b2fb9e466601594b4f72072-1.17.0/kube1.17.0.tar.gz
- 安装:
sealos init --passwd 123456 \ --master 192.168.0.2 --master 192.168.0.3 --master 192.168.0.4 \ --node 192.168.0.5 \ --pkg-url kube1.17.0.tar.gz \ --version v1.17.0
安装很快就可以结束,相当简单
查看状态
- 查看各个节点状态
kubectl get nodes
- 查看运行的各个容器组的信息
kubectl get pods --all-namespaces
我只安装了三个节点,两个节点为 master,一个节点为 node,且安装的版本为 kubelet 1.16.0
注意:
- 这种安装方式中,默认的使用的是 calico 网络插件,我看了一下,貌似还不支持 flannel 网络插件
- 具体的安装方式,是在 kubeadm 基础上做的开发,比起自己去手动安装 kubeadm,来安装 k8s 集群,这个很快,能够很快速的搭建起需要的 k8s 集群
- 搭建好自行去安装 k8s 的 dashboard 吧,跟 kubeadm 搭建出来的一样,不会自行搭建 dashboard,其次注意搭建好 dashboard 之后,chrome 浏览器证书会出问题,自行 openssl 生成自签名证书即可
本文作者为 olei,转载请注明。