吊炸天!一行命令快速部署大规模K8S集群!!!
吊炸天!一行命令快速部署大规模K8S集群!!!
先决条件
- 请事先准备好几台服务器(测试环境虚拟机即可)
- 请事先设置好相同的root密码(方便同时操作多服务器)
- 请事先在Linux安装好docker
- 请使用统一的服务器,如都是CentOS/Ubuntu
一行命令
# 你只需要类似如下一行命令,即可在多个服务器上部署K8S集群,注意事项下载好k8s的离线安装包
sealos init --master 192.168.0.2 --node 192.168.0.5 --passwd your-server-password --version v1.14.1 --pkg-url /root/kube1.14.1.tar .gz# k8s的离线安装包地址:https://sealyun.oss-cn-beijing.aliyuncs.com/d551b0b9e67e0416d0f9dce870a16665-1.18.0/kube1.18.0.tar.gz
安装命令
# 下载并安装sealos, sealos是个golang的二进制工具,直接下载拷贝到bin目录即可, release页面也可下载
wget -c https://sealyun.oss-cn-beijing.aliyuncs.com/latest/sealos && \chmod +x sealos && mv sealos /usr/bin # 下载离线资源包
wget -c https://sealyun.oss-cn-beijing.aliyuncs.com/d551b0b9e67e0416d0f9dce870a16665-1.18.0/kube1.18.0.tar.gz # 安装一个三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 /root/kube1.18.0.tar.gz \--version v1.18.0
介绍
构建K8S集群。
- 每个节点都为主机LB配置了一个ipvs代理,因此我们不再需要haproxy或keepalived了。
- 然后运行lvscare作为staic pod来检查apiserver是否可用。
/etc/kubernetes/manifests/sealyun-lvscare.yaml
- 如果任何主服务器宕机,lvscare将删除ipvs realserver,当主服务器恢复时,它将添加回去。
- Sealos将发送软件包并应用安装命令,因此我们不必烦恼。
快速开始
预安装
- 安装并启动Docker
- 下载kubernetes离线软件包将其复制到/ root。
- 在发行页面上下载最新的Sealos。
- 支持备份1.14.0+ (1.14.x 至 1.18.x)
安装
多主机HA:
sealos init --master 192.168.0.2 \ --master 192.168.0.3 \ --master 192.168.0.4 \ --node 192.168.0.5 \ --user root \ --passwd your-server-password \ --version v1.14.1 \ --pkg-url /root/kube1.14.1.tar.gz
或单个主机:
sealos init --master 192.168.0.2 \ --node 192.168.0.5 \ --user root \ --passwd your-server-password\ --version v1.14.1 \ --pkg-url /root/kube1.14.1.tar .gz
或使用ssh私钥:
sealos init --master 172.16.198.83 \ --node 172.16.198.84 \ --pkg-url https://sealyun.oss-cn-beijing.aliyuncs.com/free/kube1.15.0.tar.gz \ --pk /root/kubernetes.pem#这是您的ssh私钥文件\ --version v1.15.0
就这样!
--master masters列表
--node节点列表
--user主机用户名
--passwd主机passwd
--pkg-url脱机包位置
--version kubernetes版本
注意: 1.可能报错 --user 不支持 ,去掉 --user root 这个选项就行了;2. 当命令执行到kubeadm init ... 时,由于你的服务器性能的问题,执行速度可能不太一样,如果长时间卡着,可以ctrl + c 取消,设置国内的kubernetes的repo,然后再次执行。
检查集群:
[root@iZj6cdqfqw4o4o9tc0q44rZ ~]# kubectl get node
NAME STATUS ROLES AGE VERSION
izj6cdqfqw4o4o9tc0q44rz Ready master 2m25s v1.14.1
izj6cdqfqw4o4o9tc0q44sz Ready master 119s v1.14.1
izj6cdqfqw4o4o9tc0q44tz Ready master 63s v1.14.1
izj6cdqfqw4o4o9tc0q44uz Ready <none> 38s v1.14.1
[root@iZj6cdqfqw4o4o9tc0q44rZ ~]# kubectl get pod --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system calico-kube-controllers-5cbcccc885-9n2p8 1/1 Running 0 3m1s
kube-system calico-node-656zn 1/1 Running 0 93s
kube-system calico-node-bv5hn 1/1 Running 0 2m54s
kube-system calico-node-f2vmd 1/1 Running 0 3m1s
kube-system calico-node-tbd5l 1/1 Running 0 118s
kube-system coredns-fb8b8dccf-8bnkv 1/1 Running 0 3m1s
kube-system coredns-fb8b8dccf-spq7r 1/1 Running 0 3m1s
kube-system etcd-izj6cdqfqw4o4o9tc0q44rz 1/1 Running 0 2m25s
kube-system etcd-izj6cdqfqw4o4o9tc0q44sz 1/1 Running 0 2m53s
kube-system etcd-izj6cdqfqw4o4o9tc0q44tz 1/1 Running 0 118s
kube-system kube-apiserver-izj6cdqfqw4o4o9tc0q44rz 1/1 Running 0 2m15s
kube-system kube-apiserver-izj6cdqfqw4o4o9tc0q44sz 1/1 Running 0 2m54s
kube-system kube-apiserver-izj6cdqfqw4o4o9tc0q44tz 1/1 Running 1 47s
kube-system kube-controller-manager-izj6cdqfqw4o4o9tc0q44rz 1/1 Running 1 2m43s
kube-system kube-controller-manager-izj6cdqfqw4o4o9tc0q44sz 1/1 Running 0 2m54s
kube-system kube-controller-manager-izj6cdqfqw4o4o9tc0q44tz 1/1 Running 0 63s
kube-system kube-proxy-b9b9z 1/1 Running 0 2m54s
kube-system kube-proxy-nf66n 1/1 Running 0 3m1s
kube-system kube-proxy-q2bqp 1/1 Running 0 118s
kube-system kube-proxy-s5g2k 1/1 Running 0 93s
kube-system kube-scheduler-izj6cdqfqw4o4o9tc0q44rz 1/1 Running 1 2m43s
kube-system kube-scheduler-izj6cdqfqw4o4o9tc0q44sz 1/1 Running 0 2m54s
kube-system kube-scheduler-izj6cdqfqw4o4o9tc0q44tz 1/1 Running 0 61s
kube-system kube-sealyun-lvscare-izj6cdqfqw4o4o9tc0q44uz 1/1 Running 0 86s
清理节点
sealos clean
或清理主节点或节点
sealos clean --master 192.168.0.2
sealos clean --node 192.168.0.3
添加节点
sealos 加入 --master 192.168.0.2 #加入主人sealos 加入 --node 192.168.0.3 --node 192.168.0.4 #加入主人
也可以使用192.168.0.3-192.168.0.3指定多个IP
使用配置文件
例如,我们需要添加一个certSAN sealyun.com
:
sealos config -t kubeadm >> kubeadm-config.yaml.tmpl
查看配置模板文件cat kubeadm-config.yaml.tmpl
,对其进行编辑添加sealyun.com
:
apiVersion: kubeadm.k8s.io/v1beta1
kind: ClusterConfiguration
kubernetesVersion: {{.Version}}
controlPlaneEndpoint: "apiserver.cluster.local:6443"
networking:podSubnet: 100.64.0.0/10
apiServer:certSANs:- sealyun.com # this is what I added- 127.0.0.1- apiserver.cluster.local{{range .Masters -}}- {{.}}{{end -}}- {{.VIP}}
---
apiVersion: kubeproxy.config.k8s.io/v1alpha1
kind: KubeProxyConfiguration
mode: "ipvs"
ipvs:excludeCIDRs: - "{{.VIP}}/32"
然后使用--kubeadm-config标志:
sealos init --kubeadm-config kubeadm-config.yaml.tmpl \--master 192.168.0.2 \--master 192.168.0.3 \--master 192.168.0.4 \ --node 192.168.0.5 \ --user root \ --passwd your-server-password \ --version v1.14.1 \--pkg-url /root/kube1.14.1.tar.gz
翻译来源:https://gitee.com/yunwisdoms/sealos/blob/master/README_en.md(好吧,本身有中文文档,专门翻译的英文文档,然后好标个翻译原创)
推荐阅读:炫酷超拽!推荐一款Vue开发的OA系统,功能还不错哟!!!
吊炸天!一行命令快速部署大规模K8S集群!!!相关推荐
- K8S 集群部署(快速部署一个 K8S 集群)
https://youdianzhishi.com/web/course/1004/1019 https://www.qikqiak.com/post/manual-install-high-avai ...
- 使用kubeadm快速部署一个K8s集群
kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具. 这个工具能通过两条指令完成一个kubernetes集群的部署: # 创建一个 Master 节点 $ kubeadm i ...
- docker下,一行命令搭建elasticsearch6.5.0集群(带head插件和ik分词器)
docker下,一行命令搭建elasticsearch6.5.0集群(带head插件和ik分词器) 2019年01月27日 21:06:12 博陵精骑 阅读数:794 标签: dockerelasti ...
- 火山引擎李玉光:字节跳动大规模K8s集群管理实践
嘉宾 | 李玉光 整理 | 贾凯强 出品 | CSDN云原生 2022年5月31日,在CSDN云原生系列在线峰会第6期"K8s大规模应用和深度实践峰会",火山引擎资深云原生架构 ...
- 浅谈大规模k8s集群关于events的那些坑
浅谈大规模k8s集群关于events的那些坑 背景 一.用户通过kubectl list event 二.kubernetes-dashboard list events 三.直接在集群中list e ...
- 如何快速部署一个Elasticsearch集群?
作者:无敌码农 来源:无敌码农 今天的文章给大家介绍下Elasticsearch这一目前在"搜索"和"分析"领域使用十分广泛的技术组件.并演示如何快速构建一个E ...
- Centos7 安装部署Kubernetes(k8s)集群过程
1.系统环境 服务器版本 docker软件版本 CPU架构 CentOS Linux release 7.9 Docker version 20.10.12 x86_64 2.前言 如下图描述了软件部 ...
- 面对大规模 K8s 集群,如何先于用户发现问题?
作者 | 彭南光(光南) 来源 | 阿里巴巴云原生公众号 千里之堤,溃于蚁穴. 绪论 不知道大家是否经历过这样的情景:突然被用户告知系统出现问题,然后一脸懵地惶惶然排查修复:或是等到自己发现系统出现故 ...
- 蚂蚁宣布开源 KubeTEE:让机密计算支持大规模 K8s 集群
作者:肖俊贤.闫守孟.秦凯伦 9月25日,在上海外滩大会可信原生技术论坛上,蚂蚁宣布开源 KubeTEE,一个云原生大规模集群化机密计算框架,解决在云原生环境中 TEE 可信执行环境技术特有的从开发. ...
最新文章
- 牛顿法求解非线性方程的根
- 我进公司当Android开发实习生时,初中最差的同学成了我的领导
- c++心得之struct和class(结构体和类)
- 【翻译】.NET Core3.1发布
- alinq mysql_ALinq让Mysql变得如此简单_MySQL
- 20179214 《网络攻防实践》第五周学习
- DCMTK DCMSCU例子
- 如何使用Secure CRT连接到华三模拟器上和华为模拟器上(更新模拟器版本,SecureCRT版本)
- 你能卖什么,决定了你的收入落在什么档次
- 从小白到大牛,程序员必读的经典套系书
- 千兆路由器怎么设置网速最快_如何设置路由器使网速最快
- 一百块组装可玩LOL的电脑
- php独孤九剑,针对浏览器隐藏CSS之独孤九剑_经验交流
- 下一代 TGW 从13Mpps到50Mpps性能优化之旅
- Oracle同义词的好处
- Java反射机制实现与原理
- java生成word报告echart_Java这几个用 Pyecharts 做出来的交互图表,领导说叼爆了!...
- 计算机体系结构的一知半解
- 平凡之路上,请不要后会无期
- 基于DxOMark的影像质量客观测试研究