论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
数据库
›
分布式数据库
›
搭建Kubernetes (K8s) 集群----Centos系统
搭建Kubernetes (K8s) 集群----Centos系统
耶耶耶耶耶
金牌会员
|
2025-2-21 16:57:11
|
显示全部楼层
|
阅读模式
楼主
主题
858
|
帖子
858
|
积分
2574
前期准备
准备3台Linux虚拟机(CentOS系统),参考
https://carry.blog.csdn.net/article/details/144578009
https://carry.blog.csdn.net/article/details/144578009搭建Docker情况,参考
https://carry.blog.csdn.net/article/details/107404319
https://carry.blog.csdn.net/article/details/107404319设置好镜像加快器:
阿里云 Docker 镜像加快器
:
网址:https://cr.console.aliyun.com/
在阿里云控制台中创建加快器,并按照提示设置你的 daemon.json 文件。
DaoCloud 镜像加快器
:
网址:https://www.daocloud.io/mirror
提供简单易用的加快器,注册后即可得到加快器地址。
网易云镜像加快器
:
网址:https://c.163.com/hub
网易云提供的镜像加快器,速度也很不错。
腾讯云 Docker 镜像加快器
:
网址:https://cloud.tencent.com/product/acr
腾讯云提供的加快器,注册并绑定你的账号即可使用。
中科大镜像加快器
:
网址:https://mirrors.ustc.edu.cn/
提供了包罗Docker在内的多种开源软件的镜像加快。
编辑 daemon.json
{
"registry-mirrors": ["https://<your-aliyun-accelerator-address>"]
}
复制代码
# 重启docker
systemctl daemon-reload
systemctl restart docker
一:设置主机名
每个节点分别设置对应主机名
hostnamectl set-hostname master
hostnamectl set-hostname node1
hostnamectl set-hostname node2
复制代码
二:
添加 hosts
Host本身通过ifconfig查看,我本身的3台是192.168.153.128、192.168.153.130、192.168.153.131
vim /etc/hosts
192.168.153.128 master
192.168.153.130 node1
192.168.153.131 node2
复制代码
三:
所有节点关闭 SELinux、防火墙 、禁用swap
# 关闭 SELinux
setenforce 0
sed -i --follow-symlinks 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux
# 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
# 禁用swap,编辑 /etc/fstab 文件,注释包含swap的行
sudo vi /etc/fstab
复制代码
四:
添加 k8s 安装源
vi ks.sh
# 添加一下内容
cat <<EOF > kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
mv kubernetes.repo /etc/yum.repos.d/
# 运行shel
/bin/bash ks.sh
复制代码
五:通过 yum 安装指定版本的 Kubernetes 组件(kubelet、kubectl 和 kubeadm)
yum install -y kubelet-1.22.4 kubectl-1.22.4 kubeadm-1.22.4
# 启动
systemctl enable kubelet
systemctl start kubelet
复制代码
安装完成后,可以通过以下命令验证安装的版本:
kubelet --version
kubectl version --client
kubeadm version
复制代码
六:
初始化集群
1. 初始化 Kubernetes 集群
起首,使用 kubeadm init 命令初始化主节点集群
kubeadm init \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.22.4 \
--service-cidr=10.1.0.0/16 \
--pod-network-cidr=10.244.0.0/16
复制代码
--image-repository registry.aliyuncs.com/google_containers:指定使用阿里云的镜像堆栈,制止从国外镜像源拉取时速度慢。
--kubernetes-version v1.22.4:指定 Kubernetes 的版本,确保与之前安装的版本一致。
--service-cidr=10.1.0.0/16:指定服务的网络地址范围,默认是 10.96.0.0/12,根据现实情况选择一个不辩论的 CIDR 范围。
--pod-network-cidr=10.244.0.0/16:指定 Pod 的网络地址范围,这里使用的是 Flannel 的默认网络范围。
2. 保存 kubeadm join 命令
初始化完成后,kubeadm 会输出一个 kubeadm join 命令,这个命令用于将其他工作节点加入集群。记得把这个命令保存下来。
如果忘记了,可以通过以下命令重新获取:
kubeadm token create --print-join-command
复制代码
返回值:
kubeadm join xxxxx:6443 --token abcdef.1234567890abcdef --discovery-token-ca-cert-hash sha256:9e71e3f4d0246c5e2117a8c62c51ac4f78f82f1ff32d404a9f22c24a562b9b71
复制代码
3. 设置 kubectl 访问集群
为了可以大概在主节点上使用 kubectl 命令管理 Kubernetes 集群,你必要将 admin.conf 文件复制到你的用户目录下的 .kube/config 中。
mkdir -p $HOME/.kube
cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config
复制代码
mkdir -p $HOME/.kube:创建 .kube 目录(如果不存在的话)。
cp -i /etc/kubernetes/admin.conf $HOME/.kube/config:复制 Kubernetes 设置文件到用户目录。
chown $(id -u)
(id -g) $HOME/.kube/config:确保设置文件的权限是当前用户所有。
4. 其他节点设置
如果你有其他节点必要访问 Kubernetes 集群,可以将主节点上的 /etc/kubernetes/admin.conf 文件复制到其他节点的 ~/.kube/config 路径下。这样,其他节点也能使用 kubectl 访问集群。
在其他节点上实行以下命令:
mkdir -p $HOME/.kube
scp user@master:/etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config
复制代码
5. 安装网络插件
在集群初始化后,你必要安装一个网络插件来实现 Pod 之间的通信。常见的网络插件有 Flannel、Calico、Weave 等。这里选择 Flannel,所有节点实行以下命令:
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
复制代码
完成网络插件安装后,节点之间的通信将建立,集群也就可以正常运行了。
6. 加入工作节点
在工作节点上实行 kubeadm join 命令,将节点加入集群,token就是上面第2步生成的。例如:
kubeadm join <master-ip>:6443 --token <token> --discovery-token-ca-cert-hash sha256:<hash>
复制代码
这样,工作节点就会加入到你的 Kubernetes 集群中了。
7. 验证集群状态
集群初始化和节点加入完成后,可以通过以下命令验证集群状态,好比在主节点实行:
kubectl get nodes
复制代码
所有节点的状态都是ready代表节点都正常
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
耶耶耶耶耶
金牌会员
这个人很懒什么都没写!
楼主热帖
为什么你应该停止依赖Jenkins的插件? ...
集合论第6-8章
蜻蜓优化算法(Matlab完整代码实现) ...
axios&spring前后端分离传参规范总结 ...
SQL 教程之 10 个 SQL 操作用于 80% 的 ...
腾讯云多媒体文件处理总结
JVM常用调优配置参数
Python知识点(史上最全)
20220319编译OpenHarmony-v3.1-beta出 ...
计算机的存储容量单位
标签云
挺好的
服务器
浏览过的版块
人工智能
快速回复
返回顶部
返回列表