Kubernetes - Pod

Pod 是 Kubernetes 集群节点内容器及其存储的集合。 可以创建一个包含多个容器的 pod。 例如,将数据库容器和数据容器保持在同一个 pod 中。


Pod 类型

Pod 有两种类型 −

  • 单容器 Pod
  • 多容器 Pod

单容器 Pod

可以使用 kubectl run 命令简单地创建它们,您可以在 Docker 注册表中定义一个映像,我们将在创建 pod 时拉取该映像。

$ kubectl run <name of pod> --image=<name of the image from registry>

示例 − 我们将使用 Docker hub 上可用的 tomcat 映像创建一个 pod。

$ kubectl run tomcat --image = tomcat:8.0

这也可以通过创建 yaml 文件然后运行 kubectl create 命令来完成。

apiVersion: v1
kind: Pod
metadata:
   name: Tomcat
spec:
   containers:
   - name: Tomcat
    image: tomcat: 8.0
    ports:
containerPort: 7500
   imagePullPolicy: Always

上述yaml文件创建完成后,我们将文件保存为tomcat.yml并运行create命令运行该文件。

$ kubectl create –f tomcat.yml

它将创建一个名为 tomcat 的 pod。 我们可以使用 describe 命令和 kubectl 来描述 pod。

多容器 Pod

多容器 pod 是使用 yaml mail 和容器定义创建的。

apiVersion: v1
kind: Pod
metadata:
   name: Tomcat
spec:
   containers:
   - name: Tomcat
    image: tomcat: 8.0
    ports:
containerPort: 7500
   imagePullPolicy: Always
   -name: Database
   Image: mongoDB
   Ports:
containerPort: 7501
   imagePullPolicy: Always

在上面的代码中,我们创建了一个pod,里面有两个容器,一个用于tomcat,另一个用于MongoDB。