文章插图
kubernetes的集群搭建有多种方式:二进制、kubeadm、ansible自动化、minikube 。minikube方式比较简单 , 但是只是单节点 , 适合学习kubernetes基础的时候使用 。其他的方式安装都会出各种问题 。我花了一个星期 , 尝试了这几种方式 , 除了minikube , 其他都没有成功 。从centos到Ubuntu , 心力交瘁 。
前几天在跟同事聊天的时候 , 我对他说 , kubernetes的学习终止于环境搭建 。同事神秘的一笑 , 对我说 , 我有一个秘籍 , 五分钟搭建、百分百成功 , 看你骨骼惊奇 , 一包辣条卖给你吧 。
我以不相信的语气说 , 憋™吹牛逼了 , 你倒是说呀 。同事伸出两根手指
- 拉取rancher容器
- 在rancher界面安装kubernetes
主机准备
文章插图
我们一定要保证以上环境的初始化信息正常 , 主要是IP和主机名 , IP一定要配置为静态IP , 主机名一定要修改为不同的 , 具体可参考上一篇文章VMware Fusion安装CentOS7并配置网络
k8s-master上执行初始化
- 安装rancher
# 拉取rancher/rancher:v2.0.0镜像 , 这个是在Docker hub上 , 不推荐使用最新的rancher镜像docker run -d --restart=always -p 80:80 -p 443:443 rancher/rancher:v2.0.0
- 配置时间同步
# 在所有机器上安装yum install -y ntp ntpdate# ************在192.168.143.130上修改***********# 修改/etc/ntp.conf , 注释掉server开头的几行 , 增加如下server ntp3.aliyun.com iburst# 192.168.143.2是网关地址restrict 192.168.143.2 mask 255.255.255.0 nomodify notrap# 注释掉这一行# restrict 127.0.0.1
- 开放主机端口主要是方便各主机之间的通信 , 这些命令要在所有主机上都执行
firewall-cmd --zone=public --add-port=2379/tcp --permanent firewall-cmd --zone=public --add-port=2380/tcp --permanent firewall-cmd --zone=public --add-port=6443/tcp --permanent firewall-cmd --zone=public --add-port=10250/tcp --permanent firewall-cmd --reload
其他主机初始化yum install -y ntp ntpdate# 修改/etc/ntp.conf , 注释掉server开头的几行 , 增加如下server 192.168.143.130 prefer# 注释掉这一行# restrict 127.0.0.1# 保存以上文件后 , 在控制台执行以下命令同步一次ntpq -p
在rancher上执行初始化操作上面我们已经在主机上安装好了rancher , 通过浏览器打开https://192.168.143.130 , 先设置admin用户的密码 , 然后下一步就行了文章插图
修改语言为简体中文 , 然后点击左上角的集群 , 再点击右边的添加集群
文章插图
选择Custom , 表示自建kubernetes集群 , 如果已经有了集群 , 可以点击import , 导入现有集群
文章插图
名称随便填 , 其他的先不用管 , 点击下一步
文章插图
首先把三个都选中 , 我们这里是要先创建kubernetes集群的master节点 , 所以必须都选中 , 否则创建不成功 , 然后点击生成命令旁边的复制 , 复制需要执行的命令后 , 在我们的k8s-master主机执行此命令 , 执行成功后会在以上界面的左下角显示一台主机已注册 , 然后点击Done
文章插图
回到集群界面 , 点击集群右边的三个小点 , 选择编辑 , 有些版本这里显示的升级 , 就点击升级按钮
文章插图
在这个界面选中控制和工作节点 , 然后复制命令 , 在其他的主机上去执行命令 , 每个主机执行完后 , 都会在左下角显示主机已注册 , 都执行完后点击保存 。每个主机加入集群后都会进行一番初始化操作 , 这个时间视机器的情况而定 。
推荐阅读
- 免费ftp服务器,掌握免费ftp服务器的搭建方法只需5步
- 只要一个json文件3分钟搭建一个json服务器
- OpenVPN搭建部署
- 使用Node.js搭建一个简单的http服务器
- 鸿蒙开发环境搭建、源码下载和编译
- 利用docker轻松搭建Redis-Cluster集群环境
- 物联网网关搭建VPN客户端,来实现PLC远程下载
- CentOS7下利用Rancher搭建K8s集群
- 「系统架构」如何搭建自己的DNS服务器?
- 一个Bug损失200亿!如何搭建业务异常检测系统?