yaml定义文件中的kind属性,用来表明此资源对象的类型。在上几节中,描述的那些资源类型,都有其yaml文件。先来看一个mysql-rc.yaml的定义:

    1. apiVersion: v1
    2. Kind: ReplicationController --------- 副本控制器RC
    3. metadata:
    4. name: mysqlxxxxxxx --------- RC的名称,全局唯一
    5. spec:
    6. replicas: 1 --------- Pod副本期待数量
    7. selector:
    8. app: mysql --------- 符合目标的Pod拥有此标签
    9. templage: --------- 根据此模版创建Pod的副本(实例)
    10. metadata:
    11. labels:
    12. app: mysql --------- Pod副本拥有的标签,对应RCselector
    13. spec:
    14. containers: --------- Pod内容器的定义部分
    15. - name: mysql --------- 容器的名称
    16. image: mysql --------- 容器对应的Docker iamge
    17. ports:
    18. - containerPort: 3306 --------- 容器暴露的端口号
    19. env:
    20. - name: MYSQL_ROOT_PASSWORD
    21. value: "123456"

    创建一个service的定义文件:

    apiVersion: v1
    Kind: Service                   --------- 表明类型是k8s service
    metadata:
      name: mysqlxxxxxxx            --------- service的全局唯一名称
    spec: 
      ports:                        --------- service port也就是我们一般定义node port,是监听节点上某个端口
        - port: 3306                
      selector:                     --------- service对应的Pod,这些pod拥有定义的标签 
        app: mysql