Configuration
Configuration은 전체 시스템에 대한 다양한 정보를 포함하고 있다. 이 섹션에서는 예제를 사용하여 Kupboard Configuation을 작성해본다.
#
Version and Metadata다음 3개 항목은 반드시 정의되어야 하며, 이 항목들은 사용자가 원하는 정보로 정의될 수 있다. kupboard 내부에서는 configuration을 구분하기 위한 최소 정보로 사용된다.
#
Global Variablesvars
블럭에는 kupboard 내부와 디폴트 Kollection, 그리고 사용자가 생성하거나 다운로드 받은 Kollection에서 참조되어 사용될 수 있는 변수들이 정의되어 있다.
#
Project InformationProject Information
은 글로벌변수의 일부로 정의되며 Kupboard가 전체 서비스를 운영하기 위해서 필요한 정보이다. Harbor Register 설치 및 연동을 위해서는 유요한 도메인과 인증서가 준비되어야 한다.
note
kube_registry_password
should be 8-20 characters long with at least 1 uppercase, 1 lowercase and 1 number.
#
SecretsSecrets
은 글로벌변수의 일부로 정의되며 디폴트 Kollection Package로 설치되는 오픈소스솔루션에 접근하기 위해 사용된다. 리스트된 오픈소스솔루션을 사용하지 않는다면 여기에 정의된 변수들은 사용되지 않을 것이다.
#
Clustercluster
블럭은 전체 클러스터를 구성하는 서버의 public ip와 private ip정보가 정의된다. 이전 과정에서 생성된 6개 서버의 ip정보를 지정된 클러스터에 맞게 정의한다.
클러스터의 구성은 사용자가 원하는 구성으로 정의가 가능하다. 만약 테스트 또는 데모 용도로 구성하고 싶다면 위와 같이 6개의 서버로 구성이 가능하지만, 관리와 운영을 위한 다양한 솔루션을 설치하고 여러가지 서비스를 제공하기 위해서는 Gateway서버를 3개로 구성하고 Service클러스터도 4개 이상으로 구성할 수 있다. Data Plane을 별도로 구축하기 원한다면 Storage 클러스터를 추가로 구성할 수 있고 Elastic클러스터도 추가할 수 있다.
#
Custom ClusterYou can also add clusters with names you want as shown in the following example.
#
Hostnamekupboard는 cluster
블럭에 정의된 서버들은 <cluster-name>-node#
과 같은 naming rule에 의해서 구분되어 사용된다. 예를 들어 admin 클러스터의 첫번재 서버는 admin-node1
로 구분된다. 그리고 service 클러스터의 서버들은 service-node1
, service-node2
, service-node3
, service-node4
가 된다.
note
클러스터 초기화가 완료되면 kupboard ssh admin-node1
명령어를 사용하여 특정 서버로 ssh 접속이 가능하다.