yaml定义文件中的kind属性,用来表明此资源对象的类型。在上几节中,描述的那些资源类型,都有其yaml文件。先来看一个mysql-rc.yaml的定义:
apiVersion: v1Kind: ReplicationController --------- 副本控制器RCmetadata:name: mysqlxxxxxxx --------- RC的名称,全局唯一spec:replicas: 1 --------- Pod副本期待数量selector:app: mysql --------- 符合目标的Pod拥有此标签templage: --------- 根据此模版创建Pod的副本(实例)metadata:labels:app: mysql --------- Pod副本拥有的标签,对应RC的selectorspec:containers: --------- Pod内容器的定义部分- name: mysql --------- 容器的名称image: mysql --------- 容器对应的Docker iamgeports:- containerPort: 3306 --------- 容器暴露的端口号env:- name: MYSQL_ROOT_PASSWORDvalue: "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
