ansible二进制部署kubernetes集群
kubernetes版本1.21.5
需要的资源文件请自行到我的阿里云盘下载 https://www.aliyundrive.com/s/zVegF78ATDV
修改主机信息
#根据自己的主机信息自行修改
vim sshkeygen.sh
#!/usr/bin/env bash
yum -y install ansible &>/dev/null
ansible_dir=$(pwd)/ansible
if [ $? -eq 0 ]; then
echo "ansible安装成功"
cp -r ${ansible_dir} /etc/
else
echo "ansible安装失败"
fi
cat <<EOF
##############################################
#
# 此脚本只适合高可用kubernetes集群(三节点)
# 请准备三个或三个以上节点
# 请保持可以访问外网
## 想要更多节点请自行添加
###############################################
EOF
#ansible主机配置
cat > hosts <<EOF
#证书创建节点
[k8spem]
192.168.77.131 ansible_ssh_user=root ansible_ssh_pass=123.com
#kubernetes 主节点高可用
[k8smaster]
192.168.77.131 ansible_ssh_user=root ansible_ssh_pass=123.com
192.168.77.132 ansible_ssh_user=root ansible_ssh_pass=123.com
192.168.77.133 ansible_ssh_user=root ansible_ssh_pass=123.com
[k8snode]
192.168.77.181 ansible_ssh_user=root ansible_ssh_pass=123.com
192.168.77.182 ansible_ssh_user=root ansible_ssh_pass=123.com
192.168.77.183 ansible_ssh_user=root ansible_ssh_pass=123.com
#包含主机
[k8s:children]
k8smaster
EOF
rpm -qa | grep ansible
if [ $? -eq 0 ]; then
cp hosts ansible/hosts
fi
#请自行修改主机信息
#前三个ip and hostname 是master节点
cat > kubernetes_IP.txt <<EOF
kubeapiserver: "192.168.77.120"
hight_master01_ip: "192.168.77.131"
hight_master02_ip: "192.168.77.132"
hight_master03_ip: "192.168.77.133"
hight_node01_ip: "192.168.77.181"
hight_node02_ip: "192.168.77.182"
hight_node03_ip: "192.168.77.183"
EOF
cat > kubernetes_hostname.txt <<EOF
hight_master01_hostname: "estarhaohao-centos7-master01"
hight_master01_hostname: "estarhaohao-centos7-master01"
hight_master01_hostname: "estarhaohao-centos7-master01"
hight_node01_hostname: "estarhaohao-centos7-node01"
hight_node02_hostname: "estarhaohao-centos7-node02"
hight_node03_hostname: "estarhaohao-centos7-node03"
EOF
#以上是node节点ip and hostname
# 想要更多节点请自行添加
cat kubernetes_IP.txt | while read line
do
for dir in $( ls -l | grep k8s | awk '{print $9}' )
do
echo $line >> $dir/vars/main.yml
done
done
cat kubernetes_hostname.txt | while read line
do
for dir in $( ls -l | grep k8s | awk '{print $9}' )
do
echo $line >> $dir/vars/main.yml
done
done
部署
#等待部署完成即可使用
ansible-playbook role.yml
ansible二进制部署kubernetes集群的更多相关文章
- 二进制部署 Kubernetes 集群
二进制部署 Kubernetes 集群 提供的几种Kubernetes部署方式 minikube Minikube是一个工具,可以在本地快速运行一个单点的Kubernetes,尝试Kubernet ...
- 二进制部署kubernetes集群(上篇)
1.实验架构 1.1.硬件环境 准备5台2c/2g/50g虚拟机,使用10.4.7.0/24 网络 .//因后期要直接向k8s交付java服务,因此运算节点需要4c8g.不交付服务,全部2c2g足够. ...
- 二进制部署kubernetes集群(下篇)
1.k8S核心资源管理方法 1.1.陈述式资源管理方法 1.1.1.管理名称空间资源 1.1.1.1.查看名称空间 [root@hdss7-21 ~]# kubectl get namespace N ...
- 二进制部署kubernetes集群_kube-apiserver提示"watch chan error: etcdserver: mvcc: required revision has been compacted'
查看kube-apiserver状态 [root@yxz-cluster01 ~]# systemctl status kube-apiserver -l ● kube-apiserver.servi ...
- 使用Kubespray部署Kubernetes集群
转载请标明出处: http://blog.csdn.net/forezp/article/details/82730382 本文出自方志朋的博客 Kubespray是Google开源的一个部署生产级别 ...
- 二进制包部署Kubernetes集群
今天这篇文章教给大家如何快速部署一套Kubernetes集群.K8S集群部署有几种方式:kubeadm.minikube和二进制包.前两者属于自动部署,简化部署操作,我们这里强烈推荐初学者使用二进制包 ...
- 和我一步步部署 kubernetes 集群
和我一步步部署 kubernetes 集群 本系列文档介绍使用二进制部署最新 kubernetes v1.6.1 集群的所有步骤,而不是使用 kubeadm 等自动化方式来部署集群: 在部署的过程中, ...
- CentOS上手工部署kubernetes集群
本文完全是根据二进制部署kubernets集群的所有步骤,同时开启了集群的TLS安全认证. 环境说明 在下面的步骤中,我们将在三台CentOS系统的物理机上部署具有三个节点的kubernetes1.7 ...
- kubeadm部署Kubernetes集群
Preface 通过kubeadm管理工具部署Kubernetes集群,相对离线包的二进制部署集群方式而言,更为简单与便捷.以下为个人学习总结: 两者区别在于前者部署方式使得大部分集群组件(Kube- ...
随机推荐
- JVM内存模型(五)
一.JVM内存模型 1.1.与运行时数据区 前面讲过了运行时数据区那接下来我们聊下内存模型,JVM的内存模型指的是方法区和堆:在很多情况下网上讲解会把内存模型和运行时数据区认为是一个东西,这是 ...
- Java高并发下多线程编程
1.创建线程 Java中创建线程主要有三种方式: 继承Thread类创建线程类: 定义Thread类的子类,并重写该类的run方法,该run方法的方法体就代表了线程要完成的任务.因此也把run方法称为 ...
- HOW2J 全套教程整理:Java、前端、数据库、中间件、第三方、项目、面试题
考虑到部分同学寝室会断网,原站的所有的免费内容都提供了一个离线版本以供使用.但是它直接提供了静态页面,并不方便在手机上阅读,因为我将其转换为 EPUB. 目录 HOW2J J2EE 教程.epub H ...
- 羽夏闲谈—— C 的 scanf 的高级用法
前言 今天看到博友发了个有关scanf的使用的注意事项,就是讨论缓冲区残存数据的问题,用简单的代码示例复述一下: #define _CRT_SECURE_NO_WARNINGS #include ...
- 解决github.com无法访问
解决 绕过DNS解析,直接使用本地DNS记录进行直接跳转. DNS查询 在浏览器中打开DNS查询网站:http://tool.chinaz.com/dns?type=1&host=github ...
- Nginx配置转发
nginx location proxy_pass 后面的url 加与不加/的区别 在nginx中配置proxy_pass时,当在后面的url加上了/,相当于是绝对根路径,则nginx不会把locat ...
- drop、delete和truncate三者的区别
相同点:1.truncate和不带where子句的delete.以及drop都会删除表内的数据.2.drop.truncate都是DDL语句(数据定义语言),执行后会自动提交.不同点:1. trunc ...
- CocoaPods使用专题 by h.l
cocoaPods安装 CocoaPods安装和使用教程(code4app) cocoapods使用问题解决 cocoapods慢如何解决? CocoaPods停在Analyzing dependen ...
- Mysql数据库优化技术之配置篇、索引篇 ( 必看 必看 转)
转自:Mysql数据库优化技术之配置篇.索引篇 ( 必看 必看 ) (一)减少数据库访问对于可以静态化的页面,尽可能静态化对一个动态页面中可以静态的局部,采用静态化部分数据可以生成XML,或者文本文件 ...
- Pandas中Series与Dataframe的区别
1. Series Series通俗来讲就是一维数组,索引(index)为每个元素的下标,值(value)为下标对应的值 例如: arr = ['Tom', 'Nancy', 'Jack', 'Ton ...