博客园  :: 首页  :: 管理

本文,将以一个非常简单的yaml格式,创建一个Nginx的Pod演示,功能不全,旨在说明过程原理

1、先是编写一个yaml配置文件 nginx-pod-demo.yaml ,内容如下:

apiVersion: v1      # api 文档版本
kind: Pod           # 资源对象类型,也可以配置为像Deployment、StatefulSet这一类的对象
metadata:           # Pod 相关的元数据,用于描述 Pod 的数据
  name: nginx-demo  # Pod 的名称
  namespace: 'default' # 命名空间的配置
spec:                  # 期望 Pod 按照这里面的描述进行创建
  containers:          # 对于 Pod 中的容器描述
  - name: nginx        # 容器的名称
    image: nginx:1.7.9 # 指定容器的镜像
    imagePullPolicy: IfNotPresent # 镜像拉取策略,指定如果本地有就用本地的,如果没有就拉取远程的

    ports:
    - name: http        # 端口名称
      containerPort: 80 # 描述容器内要暴露什么端口
      protocol: TCP     # 描述该端口是基于哪种协议通信的

  restartPolicy: OnFailure # 重启策略,只有失败的情况才会重启

2、使用 kubectl create -f nginx-pod-demo.yaml 命令,会根据配置文件的要求内容,进行资源的创建,配置文件中有指定明是Pod类型的资源

[root@k8s-master qq-5201351]# kubectl get po -o wide
NAME         READY   STATUS    RESTARTS   AGE   IP               NODE        NOMINATED NODE   READINESS GATES
nginx-demo   1/1     Running   0          17s   10.224.169.132   k8s-node2   <none>           <none>
[root@k8s-master qq-5201351]#

3、最后,我们就可以在master 及各个工作节点上,使用 curl http://10.224.169.132 都可以访问到,这里的IP是随机分配的(根据此前初始化集群指定的--pod-network-cidr)

4、补充说明:我们还可以通过 kubectl delete -f  nginx-pod-demo.yaml 命令对上面配置文件创建的资源进行清理

 

 

 

尊重别人的劳动成果 转载请务必注明出处:https://www.cnblogs.com/5201351/p/17663426.html