Config
config
은 kollection에 포함된 어플리케이션과 패키지 정보를 담고 있다.
#
Applicationkollection에 포함되는 어플리케이션은 주로 사용자가 자신이 원하는 어플리케이션을 service cluster에 배포하는 경우에 사용된다. (이런 이유로 kupboard에서 디폴트로 제공되는 어플리케이션은 없다.) Dockerfile
이 포함된 소스파일을 kollection에 포함시키고 (단순히 디렉토리 복사를 통해서) 빌드 및 배포 옵션을 config
에 정의한다. 그러면 kupboard는 config에 정의된 스펙을 바탕으로 어플리케이션을 빌드하고 service cluster에 배포하게 된다.
name
어플리케이션 이름. 어플리케이션 소스 디렉토리는apps
디렉토래 내에 어플리케이션 이름과 동일한 이름으로 위치해야 한다.version
어플리케이션 버전 (컨테이너 빌드 후 적용되는 태그)app_port
쿠버네티스 파드 포트service_port
쿠버네티스 서비스 포트exposed_port
쿠버네티스 서비스 포트(nodeport). 쿠버네티스 외부에 노출이 필요한 서비스의 경우exposed_port
를 사용하여 포트를 지정한다. 32000~32767 사이의 포트를 사용한다.replica
파드 레플리카envs
컨테이너 환경변수
#
Packages클러스터에 사용자가 필요한 자신만의 솔루션이나 오픈소스등을 package로 만들면 kupboard를 통해서 설치할 수 있으며, 단순히 설치뿐만 아니라 다양한 action
과 parameter
를 정의하여 원하는 동작을 수행할 수 있도록 정의할 수 있다. 각 패키지는 반드시 Ansible Playbook을 하나 이상 포함하고 있어야 하며, kupboard의 명령어를 사용하여 패키지에 포함된 playbook과 config에 정의된 action
을 사용하여 다양한 방식으로 동작할 수 있다.
name
패키지 이름vars
playbook 변수 (패키지 공통)actions
액션 리스트name
액션 이름default
디폴트 설정. 액션을 지정하지 않을 경우true
로 설정된 액션이 수행된다.vars
playbook 변수 (액션)params
playbook 수행시 추가할ansile-playbook
옵션