溫馨提示×

Ubuntu Kubernetes部署攻略

小樊
41
2025-06-21 13:01:06
欄目: 智能運維

在Ubuntu上部署Kubernetes集群是一個相對直接的過程,但需要仔細規劃和執行。以下是一個詳細的攻略,幫助你在Ubuntu系統上成功部署Kubernetes。

環境準備

  1. 更新系統

    sudo apt update && sudo apt upgrade -y
    
  2. 安裝Docker

    sudo apt install -y docker.io
    sudo systemctl start docker
    sudo systemctl enable docker
    
  3. 安裝Kubernetes組件

    sudo apt install -y apt-transport-https curl
    curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
    echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
    sudo apt update
    sudo apt install -y kubelet kubeadm kubectl
    sudo apt-mark hold kubelet kubeadm kubectl
    
  4. 配置kubectl

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

部署Kubernetes集群

  1. 初始化主節點

    sudo kubeadm init --pod-network-cidr=192.168.0.0/16 --apiserver-advertise-address=<主節點IP> --control-plane-endpoint=<主節點IP或負載均衡地址>
    
  2. 添加工作節點: 在工作節點上使用Master節點初始化時提供的命令加入集群:

    sudo kubeadm join <主節點IP>:6443 --token <token> --discovery-token-ca-cert-hash sha256:<hash>
    
  3. 安裝網絡插件(例如Calico):

    kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
    

驗證部署

在Master節點上使用以下命令檢查節點狀態:

kubectl get nodes

如果一切正常,您應該能看到至少一個節點的狀態為Ready。

部署應用

  1. 創建Deployment: 創建一個名為microservice-deployment.yaml的文件:

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: microservice
    spec:
      replicas: 3
      selector:
        matchLabels:
          app: microservice
      template:
        metadata:
          labels:
            app: microservice
        spec:
          containers:
          - name: microservice
            image: your-docker-image:tag
            ports:
            - containerPort: 8080
    
  2. 應用Deployment

    kubectl apply -f microservice-deployment.yaml
    
  3. 驗證部署

    kubectl get pods
    kubectl get services
    

生產級最佳實踐

  1. 高可用控制平面: 部署多個Master節點,并使用etcd集群來保證etcd的高可用性。

  2. 持久化存儲: 為你的應用程序配置持久存儲,如使用PersistentVolumes和PersistentVolumeClaims。

  3. 安全加固

    • 使用網絡策略限制Pod之間的通信。
    • 配置RBAC(基于角色的訪問控制)來管理用戶和服務的權限。

通過以上步驟,你可以在Ubuntu上成功部署一個基本的Kubernetes集群,并根據需要進一步配置和優化。希望這個攻略對你有所幫助!

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女