二进制安装Kubernetes,一键安装脚本
背景,最近几天闲着研究Kubernetes,发现使用手动二进制安装会有些繁琐。经过突发奇想,就出现这个脚本。
声明,该脚本不及互联网上其他大佬的一件脚本,该脚本仅仅是突发奇想编写的,希望大佬不喜勿喷。
这个脚本执行环境比较苛刻,我写的这个脚本比较垃圾,还未能达到各种环境下都可以执行。
当前脚本Kubernetes集群,以及lb负载均衡,需要在CentOS系统,执行脚本节点可以选择Ubuntu或者CentOS系统。
当前脚本中引用的Kubernetes二进制包是v1.23.3

| 主机名称 | IP地址 | 说明 | 软件 |
|---|---|---|---|
| Master01 | 192.168.1.40 | master节点 | kube-apiserver、kube-controller-manager、kube-scheduler、etcd、kubelet、kube-proxy、nfs-client |
| Master02 | 192.168.1.41 | master节点 | kube-apiserver、kube-controller-manager、kube-scheduler、etcd、kubelet、kube-proxy、nfs-client |
| Master03 | 192.168.1.42 | master节点 | kube-apiserver、kube-controller-manager、kube-scheduler、etcd、kubelet、kube-proxy、nfs-client |
| Node01 | 192.168.1.43 | node节点 | kubelet、kube-proxy、nfs-client |
| Node02 | 192.168.1.44 | node节点 | kubelet、kube-proxy、nfs-client |
| Lb01 | 192.168.1.45 | node节点 | kubelet、kube-proxy、nfs-client |
| Lb02 | 192.168.1.46 | node节点 | kubelet、kube-proxy、nfs-client |
| 192.168.1.55 | vip | ||
| cby | 192.168.1.60 | 执行脚本节点 | bash |
作者:陈步云
微信:15648907522
项目地址:https://github.com/cby-chen/Binary_installation_of_Kubernetes
使用说明:
该脚本需要八台服务器,在八台服务器中有一台是用于执行该脚本的,另外有五台k8s服务器,其他俩台作为lb负载均衡服务器。
将其中七台服务器配置好静态IP,修改如下变量中的IP即可。
同时查看服务器中的网卡名,并将其修改。
执行脚本可使用bash -x 即可显示执行中详细信息。
该脚本暂时不支持自定义k8s结构,需要严格执行该结构。
脚本中是需要在GitHub上下载软件包
可以手动提前下载好
wget https://github.com/cby-chen/Kubernetes/releases/download/cby/Kubernetes.tar
下载脚本
wget https://www.oiox.cn/Binary_installation_of_Kubernetes.sh
修改参数vim Binary_installation_of_Kubernetes.sh
如下:#每个节点的IP,以及vip
export k8s_master01="192.168.1.40"
export k8s_master02="192.168.1.41"
export k8s_master03="192.168.1.42"
export k8s_node01="192.168.1.43"
export k8s_node02="192.168.1.44"
export lb_01="192.168.1.45"
export lb_02="192.168.1.46"
export lb_vip="192.168.1.55"
#物理网络ip地址段,注意反斜杠转译
export ip_segment="192.168.1.0\/24"
#k8s自定义域名
export domain="x.oiox.cn"
#服务器网卡名
export eth="ens18"
执行脚本
bash -x Binary_installation_of_Kubernetes.sh

https://www.oiox.cn/
https://www.chenby.cn/
https://cby-chen.github.io/
https://weibo.com/u/5982474121
https://blog.csdn.net/qq_33921750
https://my.oschina.net/u/3981543
https://www.zhihu.com/people/chen-bu-yun-2
https://segmentfault.com/u/hppyvyv6/articles
https://juejin.cn/user/3315782802482007
https://space.bilibili.com/352476552/article
https://cloud.tencent.com/developer/column/93230
https://www.jianshu.com/u/0f894314ae2c
https://www.toutiao.com/c/user/token/MS4wLjABAAAAeqOrhjsoRZSj7iBJbjLJyMwYT5D0mLOgCoo4pEmpr4A/
CSDN、GitHub、知乎、开源中国、思否、掘金、简书、
腾讯云、哔哩哔哩、今日头条、新浪微博、个人博客、全网可搜《小陈运维》
二进制安装Kubernetes,一键安装脚本的更多相关文章
- 源码编译安装Apache-附一键部署脚本
1.进入apache官网https://www.apache.org/,点击Download 2.如图选择 3.选择httpd 4.下载两个包,2.2为CentOS6使用,2.4为CentOS7使用 ...
- MySQL For Linux(CentOS/Ubuntu/Debian/Fedora/Arch)一键安装脚本(5.1-8.0)
简介 很多童鞋不懂这么在Linux系统安装MySQL,网上大多数教程较复杂,不太适合小白安装,本教程提供一键安装脚本供大家使用,教大家怎么在Linux操作系统( 支持CentOS/Ubuntu/Deb ...
- redmine安装-BitNami 提供的一键安装程序
redmine安装-BitNami 提供的一键安装程序 博客分类: REDMINE redmine安装redmine一键安装bitNami redmine BitNami 提供re ...
- k3s单机版安装部署 附一键安装脚本
作者:SRE运维博客 博客地址: https://www.cnsre.cn/ 文章地址:https://www.cnsre.cn/posts/211109907029/ 相关话题:https://ww ...
- Centos7 二进制安装 Kubernetes 1.13
目录 1.目录 1.1.什么是 Kubernetes? 1.2.Kubernetes 有哪些优势? 2.环境准备 2.1.网络配置 2.2.更改 HOSTNAME 2.3.配置ssh免密码登录登录 2 ...
- 二进制方式安装Kubernetes 1.14.2高可用详细步骤
00.组件版本和配置策略 组件版本 Kubernetes 1.14.2 Docker 18.09.6-ce Etcd 3.3.13 Flanneld 0.11.0 插件: Coredns Dashbo ...
- CentOS6.x生产环境下一键安装mono+jexus的脚本,自启动,带服务,版本号自控
转自: http://linuxdot.net/bbsfile-3784 1.支持哪些个平台?答:暂时仅支持CentOS6.x平台,7.x未测试,欢迎测试并到群里反馈给我(昵称:无聊人士) 2.一键安 ...
- 使用 shell 脚本实现 LANMP 一键安装
使用 shell 脚本来实现 LANMP 系统的一键安装.使用的操作系统是 CentOS 6 ,不区分 32 位和 64 位,要求机器可以连通互联网.支持 LAMP 和 LNMP ,MySQL 支持 ...
- CentOS 6、7下pptp vpn一键安装脚本
之前有折腾过<CentOS 6.7下IPSEC/L2TP VPN一键安装脚本>,不稳定.不支持IOS,因此换成pptp,并已经添加到<lnmp一键安装包>.这个脚本可以单独使用 ...
- Linux环境下JDK/Eclipse一键安装脚本
-------------------------------------------------------------------- author:jiangxin Email:jiangxinn ...
随机推荐
- 【JSON】Python读取JSON文件报错json.decoder.JSONDecodeError的问题
报错 json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line * column * ...
- 从xml读取gps数据获取经纬高
#!/usr/bin/python # -*- coding: UTF-8 -*- from xml.dom.minidom import parse import xml.dom.minidom & ...
- Java知识体系深度理解
1 post请求和get请求异同点 ①无论是POST还是GET请求,都是基于超文本传输协议(HTTP)的,而HTTP协议是TCP/IP协议族的应用层协议. HTTP的底层是TCP/IP.所以GET和P ...
- axios使用总结
一.请求配置 // 引入import axios from 'axios';import qs from 'qs';this.$axios({ method:"get", // g ...
- mysql授权、导入等基本操作
1.授权: mysqladmin -uroot password rootpwd mysql -uroot -prootpwd mysql -e "INSERT INTO user (Hos ...
- .Net 开发 web.config参数获取
System.Configuration.ConfigurationSettings.AppSettings["title"] 对应着 web.config下面的 <conf ...
- JVM-创建一个对象的详细过程
Person person=new Person(): 1.现在栈中申请一个自己的栈空间 2.类加载检查 每当使用new操作符创建一个对象时,类加载器都会从常量池中寻找该对象的符号引用,如果找到,则根 ...
- java 在 map put方法是报 java.lang.NullPointerException的异常 处理办法
当在定义map变量时,如果没有初始化对象,那么默认map值为空的,此时对map进行操作,会报空指针异常,解决办法就是初始化map变量 或者,直接初始化变量,不用在代码块里面设置 Map<Stri ...
- Linux基础驱动开发
开始:1.要在自己的Linux源码中创建自己的模块文件.在drivers下创建自己的文件名为myled.然后创建myleds.c文件,编写源码 2.Makefile和Kconfig的设置 在myled ...
- 性能工具---JConsole基于JMX的可视化监视、管理工具
与visualvm类似: JConsole: (Java Monitoring and Management Console),一种基于JMX的可视化监视.管理工具 VisualVM:(All-in- ...