ansible搭建K8s

参考网址:https://github.com/lizhenliang/ansible-install-k8s

准备要求:

1.虚拟机初始化

2.时间同步

#服务器时间与网络时间同步

注意:在同步网络时间之前,我们需要确保服务有安装ntpdate 服务

#查看是否安装ntpdate

ps aux |grep ntpdate

如果未安装,使用如下代码安装,系统会自动选择合适的镜像,按提示选择 y 就行。

#安装ntpdate

yum install ntpdate

当然安装完成后,还可以执行第一条命令查看是否成功。确认安装成功后,输入如下代码

ntpdate -u cn.pool.ntp.org    //-u:从man ntpdate中可以看出-u参数可以越过防火墙与主机同步;

  注意:若不加上-u参数, 可能会出现以下提示:no server suitable for synchronization found

    执行完毕后,可 使用 ‘date’命令查看服务器时间是否同步成功。

systemctl start chronyd

 

1、安装ansible(需要上网)

Ansible仓库默认不在yum仓库中,因此我们需要使用下面的命令启用epel仓库。

#启用epel仓库

#yum install epel-release –y

#安装ansible

#yum install ansible –y

#查看ansible版本

#ansible –version       

 

2、将解压后的ansible-install-k8s-master文件夹考到服务器的/root目录下。

3、将zxf binary_pkg.tar.gz考到/root目录下并解压。

#解压命令

# tar zxf binary_pkg.tar.gz

4、修改Ansible文件

# cd ansible-install-k8s-master

修改主机文件,根据规划修改对应的IP和名称(即hostname)。

# vi hosts

...

 

修改group_vars / all.yml文件,修改多个目录和证书可信任IP。

# vim group_vars/all.yml

software_dir: '/root/binary_pkg'

...

cert_hosts:

  k8s:

  etcd:

修改示例:hosts文件,只修改下图中三个地方。[master]为主节点Ip,[node]为两个工作节点ip。[etcd]为数据库节点Ip,目前用master+2台Node当作etcd节点。所以[etcd]中Ip修改为三台服务器Ip。

 

all.yml修改示例如下:只修改k8s和etcd下面的三行Ip地址就可以。其他不要动。

 

5、一键部署

部署命令

单Master版:

# ansible-playbook -i hosts single-master-deploy.yml -uroot -k

 

多Master版:

# ansible-playbook -i hosts multi-master-deploy.yml -uroot –k

在ansible-install-k8s-master文件夹下执行一键部署命令

6、检查是否安装成功

在master节点的机器上,执行以下命令。

#kubectl get nodes

若出现下面结果,说明安装k8s集群成功。

posted @   又逢落花时节  阅读(663)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示