Kubernetes yaml 테플릿과 API
API version
- 
appha -> beta -> stable 
- 
Kubernetes Object 정의 시 apiVersion이 필요 
- 
Kubernetes가 update하는 API가 있으면 새로운 API가 생성됨 
API Object의 종류 및 버전
| 종류 | 버전 | 
|---|---|
| Deployment | apps/v1 | 
| Pod | v1 | 
| ReplicatSet | v1 | 
| ReplicationController | apps/v1 | 
| Service | v1 | 
| PersistentVolume | v1 | 
apiVersion: v1
kind: Pod
metadata:
  labels:
    run: nginx
  name: nginx
  namespace: green
spec:
  containers:
  - image: nginx:1.14
    name: nginx
    ports:
    - containerPort: 80
kubernete explain [Object]
% kubectl explain pod
KIND:     Pod
VERSION:  v1
DESCRIPTION:
     Pod is a collection of containers that can run on a host. This resource is
     created by clients and scheduled onto hosts.
FIELDS:
   apiVersion	<string>
     APIVersion defines the versioned schema of this representation of an
     object. Servers should convert recognized schemas to the latest internal
     value, and may reject unrecognized values. More info:
     https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
   kind	<string>
     Kind is a string value representing the REST resource this object
     represents. Servers may infer this from the endpoint the client submits
     requests to. Cannot be updated. In CamelCase. More info:
     https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
   metadata	<Object>
     Standard object's metadata. More info:
     https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
   spec	<Object>
     Specification of the desired behavior of the pod. More info:
     https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
   status	<Object>
     Most recently observed status of the pod. This data may not be up to date.
     Populated by the system. Read-only. More info:
     https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status