ポッドの作成と削除

適用対象: AKS on Azure Stack HCI 22H2、AKS on Windows Server

Kubernetes はポッドを使用して、お使いのアプリケーションのインスタンスを実行します。 この記事では、Azure Arc で有効になっている AKS でワークロードを管理するときにポッドを作成および削除する方法について説明します。

ポッドは、アプリケーションの 1 つのインスタンスを表します。 各ポッドには、1 つのホストにまとめてデプロイされた 1 つ以上のコンテナーがあります。 ポッドは、Kubernetes での実行の最小単位です。 内部 IP アドレスとポートがポッドに割り当てられ、ポッド内のコンテナーで共通のストレージとネットワークを共有できます。 ポッドは、サービス、ボリューム、名前空間と同様に、基本的な Kubernetes オブジェクトです。 ポッドはノードで実行され、そのコンテナーが削除されるまで実行されるという明確なライフサイクルがあります。

ポッドを作成する

ポッドを作成する前に、AKS ホストを設定し、Windows PowerShellを使用して AKS クラスターを作成する必要があります。 Windows Admin Center を使用してホストを設定し、クラスターを作成することもできます。

Kubernetes クラスターに接続されていることを確認するために、次のコマンドを実行します。

kubectl get nodes

ポッドを作成するために、次のコマンドを実行します。 この例では、nginx イメージを使用してポッドが作成されます。

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

パラメーター -restart=Neverを設定すると、Kubernetes はデプロイを作成する代わりに 1 つのポッドを作成します。

ポッドの状態を確認するために、次のコマンドを実行します。

kubectl get pods

ポッドの構成全体を確認するために、次のコマンドを実行します。

kubectl describe pod nginx

ポッド間のトラフィックのセキュリティ保護

Kubernetes の重要な機能は、複数のクラスター間で一貫したポリシーの適用を確保することです。 ポッド間の接続を検証し、ポッド トラフィックに基本的なネットワーク ポリシーを適用する方法の詳細については、「 ネットワーク ポリシーを使用してポッド間のトラフィックをセキュリティで保護する」を参照してください。

ポッドを削除する

作成したポッドを削除するために、次のコマンドを実行します。

kubectl delete pod

ポッドの構成例

次の YAML 例では、ポッドの機能について説明し、定義、デプロイ、および管理できる 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

次のステップ