创建和删除 Pod

适用于:Azure Stack HCI 22H2 上的 AKS、Windows Server 上的 AKS

Kubernetes 使用 Pod 来运行应用程序的实例。 本文介绍如何在 Azure Arc 启用的 AKS 中管理工作负载时创建和删除 Pod。

Pod 表示应用程序的单个实例。 每个 Pod 都有一个或多个容器一起部署在一个主机上。 Pod 是 Kubernetes 中最小的执行单元。 内部 IP 地址和端口分配给 Pod,通过 Pod 中的容器可以共享通用存储和网络。 与服务、卷和命名空间一样,Pod 是一个基本 Kubernetes 对象。 Pod 在节点上运行,并且具有明确的生命周期,在此生命周期内将一直运行,直到容器被删除。

创建 Pod

在创建 Pod 之前,必须使用 Windows PowerShell 设置 AKS 主机并创建 AKS 群集。 还可使用 Windows Admin Center 来设置主机创建群集

若要确保已连接到 Kubernetes 群集,请运行以下命令:

kubectl get nodes

若要创建 Pod,请运行以下命令。 本示例使用 nginx 映像创建 Pod。

kubectl run nginx --image=nginx --restart=Never

设置 参数 -restart=Never时,Kubernetes 会创建单个 Pod,而不是创建部署。

若要检查 Pod 状态,请运行以下命令:

kubectl get pods

若要查看 Pod 的整个配置,请运行以下命令:

kubectl describe pod nginx

保护 pod 之间的流量

Kubernetes 中的一个重要功能是确保跨多个群集一致的策略强制实施。 有关验证 Pod 之间的连接并为 Pod 流量应用基本网络策略的详细信息,请参阅 使用网络策略保护 Pod 之间的流量

删除 Pod

若要删除创建的 Pod,请运行以下命令:

kubectl delete pod

Pod 配置示例

以下 YAML 示例介绍了 Pod 的功能,并展示了它是可定义、部署和管理的 Kubernetes 的最小单元:

apiVersion: v1 
kind: Pod 
metadata: 
      labels: 
         app: nginx 
      name: nginx 
      namespace: calico-demo 
spec: 
      containers: 
      - name: nginx 
         image: nginx:1.8 
         ports: 
         - containerPort: 80 
      nodeSelector: 
          beta.kubernetes.io/os: linux

后续步骤