欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

如何在Centos中搭建 K8s 1.23 集群

 更新時(shí)間:2025年03月07日 10:40:00   作者:明明跟你說過  
文章詳細(xì)介紹了在CentOS上搭建Kubernetes 1.23集群的步驟,包括準(zhǔn)備環(huán)境、安裝Kubernetes軟件包、上傳離線鏡像、初始化集群、添加節(jié)點(diǎn)、安裝網(wǎng)絡(luò)插件以及測(cè)試驗(yàn)證,感興趣的朋友一起看看吧

一、準(zhǔn)備基礎(chǔ)環(huán)境

1、準(zhǔn)備兩臺(tái)Centos服務(wù)器,建議2C4G及以上

角色IP系統(tǒng)版本主機(jī)名安裝組件
Master192.168.40.100Centos 7.9master1apiserver、controller-manager、scheduler、etcd、kube-proxy、docker、 calico
Node192.168.40.101Centos 7.9node1kubelet、kube-proxy、docker、calico、coredns

2、修改主機(jī)名

[root@localhost ~]# hostnamectl set-hostname master1 && bash
[root@master1 ~]# hostnamectl set-hostname node1 && bash

3、修改hosts文件,使主機(jī)之間可以通過主機(jī)名訪問

Master節(jié)點(diǎn)

[root@master1 ~]# vim /etc/hosts
#添加如下內(nèi)容
192.168.40.100 master1
192.168.40.101 node1

Node節(jié)點(diǎn)

[root@node1 ~]# vim /etc/hosts
#添加如下內(nèi)容
192.168.40.100 master1
192.168.40.101 node1

4、關(guān)閉SELinux、firewalld、swap

關(guān)閉SELinux

#Master節(jié)點(diǎn)
[root@master1 ~]# vim /etc/selinux/config
#修改如下內(nèi)容
SELINUX=disabled
#重啟服務(wù)器
[root@master1 ~]# reboot
#Node節(jié)點(diǎn)
[root@node1 ~]# vim /etc/selinux/config
#修改如下內(nèi)容
SELINUX=disabled
#重啟服務(wù)器

關(guān)閉防火墻

[root@master1 ~]# systemctl stop firewalld && systemctl disable firewalld
[root@node1 ~]# systemctl stop firewalld && systemctl disable firewalld

關(guān)閉swap交換分區(qū)

#Master節(jié)點(diǎn)
[root@master1 ~]# vim /etc/fstab
#注釋下面這一行
#/dev/mapper/centos-swap swap                    swap    defaults        0 0
#重啟服務(wù)器
[root@master1 ~]# reboot
#Node節(jié)點(diǎn)
[root@node1 ~]# vim /etc/fstab
#注釋下面這一行
#/dev/mapper/centos-swap swap                    swap    defaults        0 0
#重啟服務(wù)器
[root@node1 ~]# reboot

5、修改內(nèi)核參數(shù)

#加載 br_netfilter 內(nèi)核模塊
[root@master1 ~]# modprobe br_netfilter
[root@master1 ~]# echo "modprobe br_netfilter" >> /etc/profile
[root@master1 ~]# vim /etc/sysctl.d/k8s.conf
#添加以下內(nèi)容
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
#加載配置參數(shù)
[root@master1 ~]# sysctl -p /etc/sysctl.d/k8s.conf
#加載 br_netfilter 內(nèi)核模塊
[root@node1 ~]# modprobe br_netfilter
[root@node1 ~]# echo "modprobe br_netfilter" >> /etc/profile
[root@node1 ~]# vim /etc/sysctl.d/k8s.conf
#添加以下內(nèi)容
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
#加載配置參數(shù)
[root@node1 ~]# sysctl -p /etc/sysctl.d/k8s.conf
 

6、配置鏡像源

安裝 yum-utils 軟件包,添加鏡像源

[root@master1 ~]# yum install yum-utils -y
[root@master1 ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
[root@master1 ~]# vim  /etc/yum.repos.d/kubernetes.repo
#添加如下內(nèi)容
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=0
[root@node1 ~]# yum install yum-utils -y
[root@node1 ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
[root@node1 ~]# vim  /etc/yum.repos.d/kubernetes.repo
#添加如下內(nèi)容
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=0
 

7、開啟IPVS

[root@master1 ~]# vim /etc/sysconfig/modules/ipvs.modules
#添加如下內(nèi)容
#!/bin/bash
ipvs_modules="ip_vs ip_vs_lc ip_vs_wlc ip_vs_rr ip_vs_wrr ip_vs_lblc ip_vs_lblcr ip_vs_dh ip_vs_sh ip_vs_nq ip_vs_sed ip_vs_ftp nf_conntrack"
for kernel_module in ${ipvs_modules}; do
 /sbin/modinfo -F filename ${kernel_module} > /dev/null 2>&1
 if [ 0 -eq 0 ]; then
 /sbin/modprobe ${kernel_module}
 fi
done
[root@master1 ~]# bash /etc/sysconfig/modules/ipvs.modules
[root@node1 ~]# vim /etc/sysconfig/modules/ipvs.modules
#添加如下內(nèi)容
#!/bin/bash
ipvs_modules="ip_vs ip_vs_lc ip_vs_wlc ip_vs_rr ip_vs_wrr ip_vs_lblc ip_vs_lblcr ip_vs_dh ip_vs_sh ip_vs_nq ip_vs_sed ip_vs_ftp nf_conntrack"
for kernel_module in ${ipvs_modules}; do
 /sbin/modinfo -F filename ${kernel_module} > /dev/null 2>&1
 if [ 0 -eq 0 ]; then
 /sbin/modprobe ${kernel_module}
 fi
done
[root@node1 ~]# bash /etc/sysconfig/modules/ipvs.modules

二、安裝k8s集群

1、安裝docker服務(wù)

#安裝docker
[root@master1 ~]# yum install docker-ce -y
#啟動(dòng)docker并設(shè)置開機(jī)自啟動(dòng)
[root@master1 ~]# systemctl start docker && systemctl enable docker.service
#添加docker鏡像加速器
[root@master1 ~]# tee /etc/docker/daemon.json <<-'EOF'  
> {  
>   "registry-mirrors": ["https://ffunzkst.mirror.aliyuncs.com"]  
> }  
> EOF
#重載配置并重新啟動(dòng)
[root@master1 ~]# systemctl daemon-reload  && systemctl restart docker && systemctl status docker
#安裝docker
[root@node1 ~]# yum install docker-ce -y
#啟動(dòng)docker并設(shè)置開機(jī)自啟動(dòng)
[root@node1 ~]# systemctl start docker && systemctl enable docker.service
#添加docker鏡像加速器
[root@node1 ~]# tee /etc/docker/daemon.json <<-'EOF'  
> {  
>   "registry-mirrors": ["https://ffunzkst.mirror.aliyuncs.com"]  
> }  
> EOF
#重載配置并重新啟動(dòng)
[root@node1 ~]# systemctl daemon-reload  && systemctl restart docker && systemctl status docker

2、安裝k8s軟件包

#安裝軟件包
[root@master1 ~]# yum install -y kubelet-1.23.1 kubeadm-1.23.1 kubectl-1.23.1
#為kubelet設(shè)置開機(jī)自啟動(dòng)
[root@master1 ~]# systemctl enable kubelet
#安裝軟件包
[root@node1 ~]# yum install -y kubelet-1.23.1 kubeadm-1.23.1 kubectl-1.23.1
#為kubelet設(shè)置開機(jī)自啟動(dòng)
[root@node1 ~]# systemctl enable kubelet

3、上傳k8s離線鏡像包到服務(wù)器,包可以到阿里云去下載

#加載鏡像
[root@master1 ~]# docker load -i k8s-images-v1.23.1.tar.gz
[root@node1 ~]# docker load -i k8s-images-v1.23.1.tar.gz

4、初始化k8s集群

#初始化集群
[root@master1 ~]# kubeadm init --kubernetes-version=1.23.1  --apiserver-advertise-address=192.168.40.100  --image-repository registry.aliyuncs.com/google_containers  --pod-network-cidr=10.244.0.0/16 --ignore-preflight-errors=SystemVerification
#執(zhí)行以下命令
[root@master1 ~]#   mkdir -p $HOME/.kube
[root@master1 ~]#   sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
[root@master1 ~]#   sudo chown $(id -u):$(id -g) $HOME/.kube/config
#查看集群
[root@master1 ~]# kubectl get node

5、添加node節(jié)點(diǎn)到集群

#打印加入k8s集群的命令
[root@master1 ~]# kubeadm token create --print-join-command
#復(fù)制命令到node節(jié)點(diǎn)執(zhí)行
[root@node1 ~]# kubeadm join 192.168.40.100:6443 --token dc41lr.7cxmkrsrt4l17tcm --discovery-token-ca-cert-hash sha256:b619364d63e2d21f4a27d7120e9222a82e1511cf7bf6f3808d78b5c672e3d790
#回到master節(jié)點(diǎn),查看node節(jié)點(diǎn)是否加入到集群中
[root@master1 ~]# kubectl get node
NAME      STATUS     ROLES                  AGE     VERSION
master1   NotReady   control-plane,master   5m35s   v1.23.1
node1     NotReady   <none>                 30s     v1.23.1

6、為node節(jié)點(diǎn)修改role

#修改Node節(jié)點(diǎn)的role
[root@master1 ~]# kubectl label node node1 node-role.kubernetes.io/worker=worker
#查看修改結(jié)果
[root@master1 ~]# kubectl get node
NAME      STATUS     ROLES                  AGE     VERSION
master1   NotReady   control-plane,master   7m31s   v1.23.1
node1     NotReady   worker                 2m26s   v1.23.1

7、為k8s集群安裝網(wǎng)絡(luò)插件

上傳calico的yaml文件,文件可以到k8s官網(wǎng)去下載

#創(chuàng)建資源
[root@master1 ~]# kubectl apply -f calico.yaml
#查看Pod狀態(tài),如果全部為running,則安裝成功
[root@master1 ~]# kubectl get pod -n kube-system -owide
 

三、測(cè)試

1、創(chuàng)建第一個(gè)Pod

#在控制節(jié)點(diǎn)上,創(chuàng)建一個(gè)yaml文件
[root@master1 ~]# vim deploy.yaml
#添加如下內(nèi)容
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
  labels:
    app: nginx
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.14.2
        ports:
        - containerPort: 80
#創(chuàng)建資源
[root@master1 ~]# kubectl apply -f  deploy.yaml
#查看Pod狀態(tài),首次創(chuàng)建需要拉取鏡像,要等一會(huì)狀態(tài)才會(huì)為running
[root@master1 ~]# kubectl get pod
NAME                               READY   STATUS    RESTARTS   AGE
nginx-deployment-9456bbbf9-n7z66   1/1     Running   0          16s

2、創(chuàng)建Service資源

#在控制節(jié)點(diǎn)創(chuàng)建一個(gè)service的yaml文件
[root@master1 ~]# vim service.yaml
#添加如下內(nèi)容
apiVersion: v1
kind: Service
metadata:
  name: my-service
spec:
  type: NodePort
  selector:
    app: nginx
  ports:
    - port: 80
      targetPort: 80
      nodePort: 30080
#創(chuàng)建service
[root@master1 ~]# kubectl apply -f service.yaml
#驗(yàn)證結(jié)果
[root@master1 ~]# kubectl get service
NAME         TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)        AGE
kubernetes   ClusterIP   10.96.0.1        <none>        443/TCP        21m
my-service   NodePort    10.108.221.141   <none>        80:30080/TCP   7s

3、驗(yàn)證結(jié)果

在瀏覽器地址欄輸入http://192.168.40.100:30080,如果能訪問到nginx,則服務(wù)啟動(dòng)成功

至此,k8s集群安裝完成

到此這篇關(guān)于在Centos中搭建 K8s 1.23 集群超詳細(xì)講解的文章就介紹到這了,更多相關(guān)Centos搭建 K8s 1.23 集群內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 阿里云oss對(duì)象存儲(chǔ)使用詳細(xì)步驟

    阿里云oss對(duì)象存儲(chǔ)使用詳細(xì)步驟

    本文主要介紹了阿里云oss對(duì)象存儲(chǔ)使用詳細(xì)步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • CentOS 7下YUM 本地倉(cāng)庫(kù)的搭建詳細(xì)步驟

    CentOS 7下YUM 本地倉(cāng)庫(kù)的搭建詳細(xì)步驟

    這篇文章主要介紹了CentOS 7下YUM 本地倉(cāng)庫(kù)的搭建詳細(xì)步驟的相關(guān)資料,希望通過本文能幫助到大家實(shí)現(xiàn)這樣的功能,需要的朋友可以參考下
    2017-09-09
  • 教你在k8s上部署HADOOP-3.2.2(HDFS)的方法

    教你在k8s上部署HADOOP-3.2.2(HDFS)的方法

    這篇文章主要介紹了k8s-部署HADOOP-3.2.2(HDFS)的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04
  • k8s部署Ingress并創(chuàng)建規(guī)則的詳細(xì)介紹

    k8s部署Ingress并創(chuàng)建規(guī)則的詳細(xì)介紹

    這篇文章主要介紹了k8s部署Ingress并創(chuàng)建規(guī)則,本文通過圖文實(shí)例相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-03-03
  • k8s?pod和service網(wǎng)絡(luò)暴露詳解

    k8s?pod和service網(wǎng)絡(luò)暴露詳解

    這篇文章主要介紹了借助iptables的路由轉(zhuǎn)發(fā)功能,打通k8s集群內(nèi)的pod和service網(wǎng)絡(luò),與外部網(wǎng)絡(luò)聯(lián)通,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-11-11
  • k8s如何給node添加標(biāo)簽(最新推薦)

    k8s如何給node添加標(biāo)簽(最新推薦)

    k8s集群如果由大量節(jié)點(diǎn)組成,可將節(jié)點(diǎn)打上對(duì)應(yīng)的標(biāo)簽,然后通過標(biāo)簽進(jìn)行篩選及查看,更好的進(jìn)行資源對(duì)象的相關(guān)選擇與匹配,這篇文章主要介紹了k8s如何給node添加標(biāo)簽,需要的朋友可以參考下
    2023-02-02
  • 2022最新青龍面板部署完整版圖文教程

    2022最新青龍面板部署完整版圖文教程

    這篇文章主要介紹了2022最新青龍面板部署完整版圖文教程,下面以騰訊云服務(wù)器為例,先選地區(qū)、然后選擇官方鏡像、系統(tǒng)鏡像、Centos7.6版本,需要的朋友可以參考下
    2022-05-05
  • k8s series初級(jí)calico使用介紹

    k8s series初級(jí)calico使用介紹

    這篇文章主要為大家介紹了k8s series初級(jí)calico使用介紹,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • Kubernetes中使用臨時(shí)容器進(jìn)行故障排查的方法

    Kubernetes中使用臨時(shí)容器進(jìn)行故障排查的方法

    在使用Kubernetes時(shí),用戶常常會(huì)遇到一些錯(cuò)誤和迷惑,下面這篇文章主要給大家介紹了關(guān)于Kubernetes中使用臨時(shí)容器進(jìn)行故障排查的相關(guān)資料,需要的朋友可以參考下
    2022-03-03
  • 青龍面板拉庫(kù)解決沒有或丟失依賴can‘t?find?module的保姆級(jí)教程(附青龍面板腳本倉(cāng)庫(kù))

    青龍面板拉庫(kù)解決沒有或丟失依賴can‘t?find?module的保姆級(jí)教程(附青龍面板腳本倉(cāng)庫(kù))

    這篇文章主要介紹了青龍面板拉庫(kù)解決沒有或丟失依賴can‘t?find?module的保姆級(jí)教程(附青龍面板腳本倉(cāng)庫(kù)),需要的朋友可以參考下
    2022-05-05

最新評(píng)論