日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

目錄
  • 1、部署k8s的兩種方式:
  • 2、環境準備
  • 3、初始化配置
    • 3.1、安裝環境準備:下面的操作需要在所有的節點上執行。
    • 3.2、安裝 Docker、kubeadm、kubelet【所有節點】
  •  4、部署k8s-master【master執行】
    • 4.1、kubeadm部署(需要等上一會)
    • 4.2、拷貝k8s認證文件
  • 5、配置k8s的node節點【node節點操作】
    • 5.1、向集群添加新節點,執行在kubeadm init輸出的kubeadm join命令
  • 6、部署容器網絡 (master執行)
    • 7、部署Dashboard
      • 總結

        1、部署k8s的兩種方式:

        目前生產部署Kubernetes集群主要有兩種方式:

        • kubeadm

        Kubeadm是一個K8s部署工具,提供kubeadm init和kubeadm join,用于快速部署Kubernetes集群。

        • 二進制包

        從github下載發行版的二進制包,手動部署每個組件,組成Kubernetes集群。

        本實驗采用kubeadm的方式搭建集群。

        2、環境準備

        服務器要求:

        • 建議最小硬件配置:2核CPU、2G內存、20G硬盤
        • 服務器最好可以訪問外網,會有從網上拉取鏡像需求,如果服務器不能上網,需要提前下載對應鏡像并導入節點

        軟件環境:

        • 操作系統:centos7.9_x64(mini)
        • Docker:20-ce
        • K8s:1.23

        服務器規劃:(本實驗采用虛擬機)

        • k8s-master:192.168.178.171
        • k8s-node1:192.168.178.172
        • k8s-node2:192.168.178.173

        3、初始化配置

        3.1、安裝環境準備:下面的操作需要在所有的節點上執行。

        # 關閉防火墻
        systemctl stop firewalld
        systemctl disable firewalld
        
        # 關閉selinux
        sed -i 's/enforcing/disabled/' /etc/selinux/config  # 永久
        setenforce 0  # 臨時
        
        # 關閉swap
        swapoff -a  # 臨時
        sed -ri 's/.*swap.*/#&/' /etc/fstab    # 永久
        
        # 根據規劃設置主機名
        hostnamectl set-hostname <hostname>
        
        # 在master添加hosts
        cat >> /etc/hosts << EOF
        192.168.178.171 k8s-master
        192.168.178.172 k8s-node1
        192.168.178.173 k8s-node2
        EOF
        
        # 將橋接的IPv4流量傳遞到iptables的鏈
        cat > /etc/sysctl.d/k8s.conf << EOF
        net.bridge.bridge-nf-call-ip6tables = 1
        net.bridge.bridge-nf-call-iptables = 1
        EOF
        sysctl --system  # 生效
        
        # 時間同步
        yum install ntpdate -y
        ntpdate time.windows.com
        
        注意:虛擬機不管關機還是掛起,每次重新操作都需要更新時間進行同步。 

        部署k8s集群的超詳細實踐步驟

        3.2、安裝 Docker、kubeadm、kubelet【所有節點】

        安裝docker:

        wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
        yum -y install docker-ce
        systemctl enable docker && systemctl start docker

        部署k8s集群的超詳細實踐步驟

        配置鏡像下載加速器:

        vim /etc/docker/daemon.json
        
        {
          "registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"],
          "exec-opts": ["native.cgroupdriver=systemd"]
        }
        
        systemctl restart docker
        docker info                                                        #查看docker信息,進行確認

        部署k8s集群的超詳細實踐步驟

        添加阿里云軟件源:

        cat > /etc/yum.repos.d/kubernetes.repo << EOF
        [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

        安裝kubeadm、kubelet、kubectl:

        yum install -y kubelet-1.23.0 kubeadm-1.23.0 kubectl-1.23.0
        systemctl enable kubelet

        部署k8s集群的超詳細實踐步驟

         4、部署k8s-master【master執行】

        4.1、kubeadm部署(需要等上一會)

        kubeadm init \
          --apiserver-advertise-address=192.168.178.171 \
          --image-repository registry.aliyuncs.com/google_containers \
          --kubernetes-version v1.23.0 \
          --service-cidr=10.96.0.0/12 \
          --pod-network-cidr=10.244.0.0/16 \
          --ignore-preflight-errors=all
        • –apiserver-advertise-address 集群通告地址
        • –image-repository 由于默認拉取鏡像地址k8s.gcr.io國內無法訪問,這里指定阿里云鏡像倉庫地址
        • –kubernetes-version K8s版本,與上面安裝的一致
        • –service-cidr 集群內部虛擬網絡,Pod統一訪問入口
        • –pod-network-cidr Pod網絡,與下面部署的CNI網絡組件yaml中保持一致

         初始化之后,會輸出一個join命令,先復制出來,node節點加入master會使用。

        部署k8s集群的超詳細實踐步驟

        4.2、拷貝k8s認證文件

        mkdir -p $HOME/.kube
        sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
        sudo chown $(id -u):$(id -g) $HOME/.kube/config

        查看工作節點:

        kubectl get nodes

        部署k8s集群的超詳細實踐步驟

        注:由于網絡插件還沒有部署,還沒有準備就緒 NotReady,繼續操作。 

        5、配置k8s的node節點【node節點操作】

        5.1、向集群添加新節點,執行在kubeadm init輸出的kubeadm join命令

        部署k8s集群的超詳細實踐步驟

        默認token有效期為24小時,當過期之后,該token就不可用了。這時就需要重新創建token,可以直接使用命令快捷生成:

        ?kubeadm token create --print-join-command

        6、部署容器網絡 (master執行)

        Calico是一個純三層的數據中心網絡方案,是目前Kubernetes主流的網絡方案。

        下載YAML:

        ?wget https://docs.projectcalico.org/manifests/calico.yaml

        下載完后還需要修改里面定義Pod網絡(CALICO_IPV4POOL_CIDR),與前面kubeadm init的 –pod-network-cidr指定的一樣。

        修改完后文件后,進行部署:

        kubectl apply -f calico.yaml
        kubectl get pods -n kube-system? ? ? ? ? ? ? ? ? ? ? ? #執行結束要等上一會才全部running

        部署k8s集群的超詳細實踐步驟

        等Calico Pod都Running后,節點也會準備就緒。

        部署k8s集群的超詳細實踐步驟

        注:以后所有yaml文件都只在Master節點執行。

        安裝目錄:/etc/kubernetes/

        組件配置文件目錄:/etc/kubernetes/manifests/

        7、部署Dashboard

        Dashboard是官方提供的一個UI,可用于基本管理K8s資源。

        YAML下載地址:

        wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.4.0/aio/deploy/recommended.yaml

        默認Dashboard只能集群內部訪問,修改Service為NodePort類型,暴露到外部:

        vi recommended.yaml
        ...
        kind: Service
        apiVersion: v1
        metadata:
          labels:
            k8s-app: kubernetes-dashboard
          name: kubernetes-dashboard
          namespace: kubernetes-dashboard
        spec:
          ports:
            - port: 443
              targetPort: 8443
              nodePort: 30001
          selector:
            k8s-app: kubernetes-dashboard
          type: NodePort
        ...
        kubectl apply -f recommended.yaml
        kubectl get pods -n kubernetes-dashboard

        部署k8s集群的超詳細實踐步驟

        訪問地址:https://NodeIP:30001 

        部署k8s集群的超詳細實踐步驟

        創建service account并綁定默認cluster-admin管理員集群角色:

         # 創建用戶
        kubectl create serviceaccount dashboard-admin -n kube-system
        # 用戶授權
        kubectl create clusterrolebinding dashboard-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin
        # 獲取用戶Token
        kubectl describe secrets -n kube-system $(kubectl -n kube-system get secret | awk '/dashboard-admin/{print $1}')

        部署k8s集群的超詳細實踐步驟

        使用輸出的token登錄Dashboard。 

        部署k8s集群的超詳細實踐步驟

        注: 

        以上為本人實際搭建過程中的經驗總結

        總結

        分享到:
        標簽:實踐 服務器 步驟 部署 集群
        用戶無頭像

        網友整理

        注冊時間:

        網站:5 個   小程序:0 個  文章:12 篇

        • 51998

          網站

        • 12

          小程序

        • 1030137

          文章

        • 747

          會員

        趕快注冊賬號,推廣您的網站吧!
        最新入駐小程序

        數獨大挑戰2018-06-03

        數獨一種數學游戲,玩家需要根據9

        答題星2018-06-03

        您可以通過答題星輕松地創建試卷

        全階人生考試2018-06-03

        各種考試題,題庫,初中,高中,大學四六

        運動步數有氧達人2018-06-03

        記錄運動步數,積累氧氣值。還可偷

        每日養生app2018-06-03

        每日養生,天天健康

        體育訓練成績評定2018-06-03

        通用課目體育訓練成績評定