linux

Kubernetes在Linux上如何管理容器

小樊
47
2025-08-09 10:12:46
栏目: 智能运维

Kubernetes在Linux上管理容器需先安装集群,再通过核心组件和命令操作,核心流程如下:

  1. 安装基础环境

    • 安装Docker作为容器运行时:
      # Ubuntu/Debian  
      sudo apt update && sudo apt install docker.io  
      sudo systemctl enable --now docker  
      # CentOS/RHEL  
      sudo yum install -y docker && sudo systemctl enable --now docker  
      
    • 安装Kubernetes组件(kubelet、kubeadm、kubectl):
      # Ubuntu/Debian  
      sudo apt install -y kubelet kubeadm kubectl  
      # CentOS/RHEL  
      sudo yum install -y kubelet kubeadm kubectl  
      sudo systemctl enable kubelet  
      
  2. 初始化集群

    • 在Master节点执行初始化命令(以Calico网络插件为例):
      sudo kubeadm init --pod-network-cidr=10.244.0.0/16  
      mkdir -p $HOME/.kube  
      sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config  
      sudo chown $(id -u):$(id -g) $HOME/.kube/config  
      kubectl apply -f https://docs.projectcalico.org/v3.26/manifests/calico.yaml  
      
    • 工作节点通过kubeadm join命令加入集群:
      sudo kubeadm join <Master-IP>:6443 --token <TOKEN> --discovery-token-ca-cert-hash <HASH>  
      
  3. 容器管理操作

    • 部署应用:通过Deployment创建Pod副本集,例如部署Nginx:
      kubectl create deployment nginx --image=nginx --replicas=3  
      
    • 暴露服务:通过Service将Pod暴露为可访问端点,例如创建NodePort类型Service:
      kubectl expose deployment nginx --port=80 --type=NodePort  
      
    • 扩缩容:手动调整副本数或启用自动扩缩容(如HPA):
      kubectl scale deployment nginx --replicas=5  
      
    • 查看状态
      kubectl get nodes       # 查看节点状态  
      kubectl get pods       # 查看Pod状态  
      kubectl get services   # 查看服务状态  
      
  4. 常用管理命令

    • 删除资源:kubectl delete deployment/nginx
    • 查看日志:kubectl logs <Pod名称>
    • 进入容器:kubectl exec -it <Pod名称> -- /bin/bash

说明:以上操作基于命令行工具kubectl,实际生产环境中可通过Kubernetes Dashboard或自动化工具(如Helm)简化管理。需注意,网络插件(如Calico/Flannel)和存储卷(如PersistentVolume)的配置需根据实际需求调整。

0
看了该问题的人还看了