1. Helm chart (Kubernetes)¶
1.1. 目的¶
1.2. 前提条件¶
クライアント要件
動作確認が取れているクライアントアプリケーションのバージョンは下記のとおりです。¶ アプリケーション
バージョン
Helm
v3.9.x
kubectl
1.23
デプロイ環境
動作確認が取れているコンテナ環境の最小要求リソースとバージョンは下記のとおりです。¶ リソース種別
要求リソース
CPU
2 Cores (3.0 GHz)
Memory
4GB
Storage (Container image size)
10GB
Kubernetes
1.23 以上
警告
要求リソースは Exastro IT Automation のコア機能に対する値です。同一クラスタ上に Keycloak や MariaDB などの外部ツールをデプロイする場合は、その分のリソースが別途必要となります。データベースおよびファイルの永続化のために、別途ストレージ領域を用意する必要があります。Storage サイズには、Exastro IT Automation が使用する入出力データのファイルは含まれていないため、利用状況に応じて容量を見積もる必要があります。通信要件
クライアントからデプロイ先のコンテナ環境にアクセスできる必要があります。
Platform 管理者用と一般ユーザー用の2つ通信ポートが使用となります。
コンテナ環境からコンテナイメージの取得のために、Docker Hub に接続できる必要があります。
外部コンポーネント
MariaDB、もしくは、MySQL サーバ
GitLab リポジトリ、および、アカウントの払い出しが可能なこと
警告
GitLab 環境を同一クラスタに構築する場合は、GitLab のシステム要件に対応する最小要件を追加で容易する必要があります。Database 環境を同一クラスタに構築する場合は、使用する Database のシステム要件に対応する最小要件を定義する必要があります
1.3. インストールの準備¶
1.3.1. Helm リポジトリの登録¶
共通基盤 (Exastro Platform)
Exastro IT Automation
リポジトリ |
---|
1# Exastro システムの Helm リポジトリを登録
2helm repo add exastro https://exastro-suite.github.io/exastro-helm/ -n exastro
3# リポジトリ情報の更新
4helm repo update
1.3.2. デフォルト設定値の取得¶
helm show values exastro/exastro > exastro.yaml
exastro.yaml
1# Default values for Exastro.
2# This is a YAML-formatted file.
3# Declare variables to be passed into your templates.
4global:
5 itaGlobalDefinition:
6 name: ita-global
7 enabled: true
8 image:
9 registry: "docker.io"
10 organization: exastro
11 package: exastro-it-automation
12 config:
13 DEFAULT_LANGUAGE: "ja"
14 LANGUAGE: "en"
15 CONTAINER_BASE: "kubernetes"
16 TZ: "Asia/Tokyo"
17 STORAGEPATH: "/storage/"
18 secret:
19 ENCRYPT_KEY: ""
20 persistence:
21 enabled: true
22 accessMode: ReadWriteMany
23 size: 10Gi
24 volumeType: hostPath # e.g.) hostPath or AKS
25 storageClass: "-" # e.g.) azurefile or - (None)
26 # matchLabels:
27 # release: "stable"
28 # matchExpressions:
29 # - {key: environment, operator: In, values: [dev]}
30 gitlabDefinition:
31 name: gitlab
32 enabled: true
33 config:
34 GITLAB_PROTOCOL: "http"
35 GITLAB_HOST: "gitlab"
36 GITLAB_PORT: "80"
37 secret:
38 GITLAB_ROOT_TOKEN: ""
39 itaDatabaseDefinition:
40 name: ita-database
41 enabled: true
42 config:
43 DB_VENDOR: "mariadb"
44 DB_HOST: "mariadb"
45 DB_PORT: "3306"
46 DB_DATABASE: "ITA_DB"
47 secret:
48 DB_ADMIN_USER: ""
49 DB_ADMIN_PASSWORD: ""
50 DB_USER: ""
51 DB_PASSWORD: ""
52 pfGlobalDefinition:
53 name: pf-global
54 enabled: true
55 image:
56 registry: "docker.io"
57 organization: exastro
58 package: exastro-platform
59 config:
60 DEFAULT_LANGUAGE: "ja"
61 LANGUAGE: "en"
62 TZ: "Asia/Tokyo"
63 PYTHONIOENCODING: utf-8
64 PLATFORM_API_PROTOCOL: "http"
65 PLATFORM_API_HOST: "platform-api"
66 PLATFORM_API_PORT: "8000"
67 PLATFORM_WEB_PROTOCOL: "http"
68 PLATFORM_WEB_HOST: "platform-web"
69 PLATFORM_WEB_PORT: "8000"
70 secret:
71 ENCRYPT_KEY: ""
72 persistence:
73 enabled: true
74 accessMode: ReadWriteMany
75 size: 10Gi
76 volumeType: hostPath # e.g.) hostPath or AKS
77 storageClass: "-" # e.g.) azurefile or - (None)
78 # matchLabels:
79 # release: "stable"
80 # matchExpressions:
81 # - {key: environment, operator: In, values: [dev]}
82 keycloakDefinition:
83 name: keycloak
84 enabled: true
85 config:
86 API_KEYCLOAK_PROTOCOL: "http"
87 API_KEYCLOAK_HOST: "keycloak"
88 API_KEYCLOAK_PORT: "8080"
89 KEYCLOAK_PROTOCOL: "http"
90 KEYCLOAK_HOST: "keycloak"
91 KEYCLOAK_PORT: "8080"
92 KEYCLOAK_MASTER_REALM: "master"
93 KEYCLOAK_DB_DATABASE: "keycloak"
94 secret:
95 KEYCLOAK_USER: ""
96 KEYCLOAK_PASSWORD: ""
97 KEYCLOAK_DB_USER: ""
98 KEYCLOAK_DB_PASSWORD: ""
99 itaDefinition:
100 name: ita
101 enabled: true
102 config:
103 ITA_WEB_PROTOCOL: "http"
104 ITA_WEB_HOST: "ita-web-server"
105 ITA_WEB_PORT: "8000"
106 ITA_API_PROTOCOL: "http"
107 ITA_API_HOST: "ita-api-organization"
108 ITA_API_PORT: "8080"
109 ITA_API_ADMIN_PROTOCOL: "http"
110 ITA_API_ADMIN_HOST: "ita-api-admin"
111 ITA_API_ADMIN_PORT: "8080"
112 pfDatabaseDefinition:
113 name: pf-database
114 enabled: true
115 config:
116 DB_VENDOR: "mariadb"
117 DB_HOST: "mariadb"
118 DB_PORT: "3306"
119 DB_DATABASE: "platform"
120 secret:
121 DB_ADMIN_USER: ""
122 DB_ADMIN_PASSWORD: ""
123 DB_USER: ""
124 DB_PASSWORD: ""
125 databaseDefinition:
126 name: mariadb
127 enabled: true
128 secret:
129 MARIADB_ROOT_PASSWORD: ""
130 persistence:
131 enabled: true
132 reinstall: false
133 accessMode: ReadWriteOnce
134 size: 20Gi
135 volumeType: hostPath # e.g.) hostPath or AKS
136 storageClass: "-" # e.g.) azurefile or - (None)
137 # matchLabels:
138 # release: "stable"
139 # matchExpressions:
140 # - {key: environment, operator: In, values: [dev]}
141
142exastro-it-automation:
143 ita-api-admin:
144 replicaCount: 1
145 image:
146 repository: "exastro/exastro-it-automation-api-admin"
147 tag: ""
148 pullPolicy: IfNotPresent
149 extraEnv:
150 PLATFORM_API_HOST: "platform-api"
151 PLATFORM_API_PORT: "8000"
152
153 ita-api-organization:
154 replicaCount: 1
155 image:
156 repository: "exastro/exastro-it-automation-api-organization"
157 tag: ""
158 pullPolicy: IfNotPresent
159 extraEnv:
160 PLATFORM_API_HOST: "platform-api"
161 PLATFORM_API_PORT: "8000"
162
163 ita-by-ansible-execute:
164 replicaCount: 1
165 image:
166 repository: "exastro/exastro-it-automation-by-ansible-execute"
167 tag: ""
168 pullPolicy: IfNotPresent
169 extraEnv:
170 EXECUTE_INTERVAL: "10"
171 ANSIBLE_AGENT_IMAGE: "exastro/exastro-it-automation-by-ansible-agent"
172 ANSIBLE_AGENT_IMAGE_TAG: ""
173 serviceAccount:
174 create: false
175 name: "ita-by-ansible-execute-sa"
176
177 ita-by-ansible-legacy-role-vars-listup:
178 replicaCount: 1
179 extraEnv:
180 EXECUTE_INTERVAL: "10"
181 image:
182 repository: "exastro/exastro-it-automation-by-ansible-legacy-role-vars-listup"
183 tag: ""
184 pullPolicy: IfNotPresent
185
186 ita-by-ansible-towermaster-sync:
187 replicaCount: 1
188 extraEnv:
189 EXECUTE_INTERVAL: "10"
190 image:
191 repository: "exastro/exastro-it-automation-by-ansible-towermaster-sync"
192 tag: ""
193 pullPolicy: IfNotPresent
194
195 ita-by-conductor-synchronize:
196 replicaCount: 1
197 extraEnv:
198 EXECUTE_INTERVAL: "10"
199 image:
200 repository: "exastro/exastro-it-automation-by-conductor-synchronize"
201 tag: ""
202 pullPolicy: IfNotPresent
203
204 ita-by-menu-create:
205 replicaCount: 1
206 extraEnv:
207 EXECUTE_INTERVAL: "10"
208 image:
209 repository: "exastro/exastro-it-automation-by-menu-create"
210 tag: ""
211 pullPolicy: IfNotPresent
212
213 ita-database-setup-job:
214 image:
215 repository: ""
216 tag: ""
217 pullPolicy: IfNotPresent
218
219 ita-web-server:
220 replicaCount: 1
221 image:
222 repository: "exastro/exastro-it-automation-web-server"
223 tag: ""
224 pullPolicy: IfNotPresent
225
226exastro-platform:
227 platform-api:
228 image:
229 repository: "exastro/exastro-platform-api"
230 tag: ""
231
232 platform-auth:
233 extraEnv:
234 # Please set the URL to access
235 EXTERNAL_URL: ""
236 EXTERNAL_URL_MNG: ""
237 ingress:
238 enabled: true
239 hosts:
240 - host: exastro-suite.example.local
241 paths:
242 - path: /
243 pathType: Prefix
244 backend: "http"
245 - host: exastro-suite-mng.example.local
246 paths:
247 - path: /
248 pathType: Prefix
249 backend: "httpMng"
250 service:
251 type: ClusterIP
252 # http:
253 # nodePort: 30080
254 # httpMng:
255 # nodePort: 30081
256 image:
257 repository: "exastro/exastro-platform-auth"
258 tag: ""
259
260 platform-migration:
261 image:
262 repository: "exastro/exastro-platform-migration"
263 tag: ""
264
265 platform-web:
266 image:
267 repository: "exastro/exastro-platform-web"
268 tag: ""
269
270 mariadb:
271 enabled: true
272 image:
273 repository: "mariadb"
274 tag: "10.9"
275 pullPolicy: IfNotPresent
276 resources:
277 requests:
278 memory: "256Mi"
279 cpu: "1m"
280 limits:
281 memory: "2Gi"
282 cpu: "4"
283
284 keycloak:
285 enabled: true
286 image:
287 repository: "exastro/keycloak"
288 tag: ""
289 pullPolicy: IfNotPresent
290 resources:
291 requests:
292 memory: "256Mi"
293 cpu: "1m"
294 limits:
295 memory: "2Gi"
296 cpu: "4"
exastro.yaml
に対してインストールに必要なパラメータを設定してきいます。1.3.3. サービス公開の設定¶
Ingress
LoadBalancer
NodePort
注釈
パラメータ¶
パラメータ |
説明 |
変更 |
デフォルト値・選択可能な設定値 |
---|---|---|---|
exastro-platform.platform-auth.extraEnv.EXTERNAL_URL |
Exastro Platform エンドポイントの公開URL。
リバースプロキシや PAT(Port Address Transport) などにより、Exastro のエンドポイントと公開時の URL に齟齬が発生することで、サービス接続に失敗する場合に設定をする必要があります。
|
可 |
公開用エンドポイントのURL
(http[s]://your-exastro.domain:port)
|
exastro-platform.platform-auth.extraEnv.EXTERNAL_URL_MNG |
Exastro Platform 管理コンソールのエンドポイントの公開URL。
リバースプロキシや PAT(Port Address Transport) などにより、Exastro のエンドポイントと公開時の URL に齟齬が発生することで、サービス接続に失敗する場合に設定をする必要があります。
|
可 |
公開用エンドポイントのURL
(http[s]://your-exastro.domain:port)
|
exastro-platform.platform-auth.ingress.enabled |
Exastro Platform における Ingress 利用の要否 |
可 |
true (デフォルト): Exastro Platform にアクセスするための Ingress Controller をデプロイします。
false : Ingress Controller をデプロイしません。
|
exastro-platform.platform-auth.ingress.hosts[0].host |
Exastro Platform 管理コンソールエンドポイントのホスト名、もしくは、FQDN
別途、DNSへのレコード登録が必要です。
|
可 (Ingress利用時) |
"exastro-suite.example.local" |
exastro-platform.platform-auth.ingress.hosts[0].paths[0].path |
Exastro Platform 管理コンソールエンドポイントのパスのルール |
不可 |
"/" |
exastro-platform.platform-auth.ingress.hosts[0].paths[0].pathType |
Exastro Platform 管理コンソールエンドポイントのパスの一致条件 |
不可 |
"Prefix" |
exastro-platform.platform-auth.ingress.hosts[0].paths[0].backend |
Exastro Platform 管理コンソールのサービス名 |
不可 |
"http" |
exastro-platform.platform-auth.ingress.hosts[1].host |
Exastro Platform エンドポイントのホスト名、もしくは、FQDN
別途、DNSへのレコード登録が必要です。
|
可 (Ingress利用時) |
"exastro-suite-mng.example.local" |
exastro-platform.platform-auth.ingress.hosts[1].paths[0].path |
Exastro Platform エンドポイントのパスのルール |
不可 |
"/" |
exastro-platform.platform-auth.ingress.hosts[1].paths[0].pathType |
Exastro Platform エンドポイントのパスの一致条件 |
不可 |
"Prefix" |
exastro-platform.platform-auth.ingress.hosts[1].paths[0].backend |
Exastro Platform エンドポイントのエンドポイントのサービス名 |
不可 |
"httpMng" |
exastro-platform.platform-auth.service.type |
Exastro Platform のサービスタイプ |
可 |
ClusterIP (デフォルト): Ingress Controller を利用する場合などに選択
LoadBalancer : LoadBalancer を利用する場合に選択
NodePort : NodePort を利用する場合に選択
|
exastro-platform.platform-auth.service.http.nodePort |
Exastro Platform のサービス用公開ポート番号
|
可 (NodePort利用時) |
"30080" |
exastro-platform.platform-auth.service.httpMng.nodePort |
Exastro Platform のシステム管理用公開ポート番号
|
可 (NodePort利用時) |
"30081" |
exastro-platform.platform-auth.image.repository |
コンテナイメージのリポジトリ名 |
不可 |
"exastro/exastro-platform-auth" |
exastro-platform.platform-auth.image.tag |
コンテナイメージのタグ |
不可 |
"1.0.6" |
設定例¶
特徴
設定例
232 platform-auth:
233 extraEnv:
234 # Please set the URL to access
235- EXTERNAL_URL: ""
236- EXTERNAL_URL_MNG: ""
237+ EXTERNAL_URL: "http://exastro-suite.xxxxxxxxxxxxxxxxxx.japaneast.aksapp.io"
238+ EXTERNAL_URL_MNG: "http://exastro-suite-mng.xxxxxxxxxxxxxxxxxx.japaneast.aksapp.io"
239 ingress:
240 enabled: true
241+ annotations:
242+ kubernetes.io/ingress.class: addon-http-application-routing
243+ nginx.ingress.kubernetes.io/proxy-body-size: 100m
244+ nginx.ingress.kubernetes.io/proxy-buffer-size: 256k
245+ nginx.ingress.kubernetes.io/server-snippet: |
246+ client_header_buffer_size 100k;
247+ large_client_header_buffers 4 100k;
248 hosts:
249- - host: exastro-suite.example.local
250+ - host: exastro-suite.xxxxxxxxxxxxxxxxxx.japaneast.aksapp.io
251 paths:
252 - path: /
253 pathType: Prefix
254 backend: "http"
255- - host: exastro-suite-mng.example.local
256+ - host: exastro-suite-mng.xxxxxxxxxxxxxxxxxx.japaneast.aksapp.io
257 paths:
258 - path: /
259 pathType: Prefix
260 backend: "httpMng"
特徴
設定例
232 platform-auth:
233 extraEnv:
234 # Please set the URL to access
235- EXTERNAL_URL: ""
236- EXTERNAL_URL_MNG: ""
237+ EXTERNAL_URL: "https://your-exastro.domain"
238+ EXTERNAL_URL_MNG: "https://your-exastro-mng.domain"
239 ingress:
240- enabled: true
241+ enabled: false
242 hosts:
243 - host: exastro-suite.example.local
244 paths:
245 - path: /
246 pathType: Prefix
247 backend: "http"
248 - host: exastro-suite-mng.example.local
249 paths:
250 - path: /
251 pathType: Prefix
252 backend: "httpMng"
253 service:
254- type: ClusterIP
255+ type: LoadBalancer
256 # http:
257 # nodePort: 30080
258 # httpMng:
259 # nodePort: 30081
特徴
設定例
232 platform-auth:
233 extraEnv:
234 # Please set the URL to access
235 - EXTERNAL_URL: ""
236 - EXTERNAL_URL_MNG: ""
237 + EXTERNAL_URL: "http://10.10.10.10:30080"
238 + EXTERNAL_URL_MNG: "http://10.10.10.10:30081"
239 ingress:
240- enabled: true
241+ enabled: false
242 hosts:
243 - host: exastro-suite.example.local
244 paths:
245 - path: /
246 pathType: Prefix
247 backend: "http"
248 - host: exastro-suite-mng.example.local
249 paths:
250 - path: /
251 pathType: Prefix
252 backend: "httpMng"
253 service:
254- type: ClusterIP
255- # http:
256- # nodePort: 30080
257- # httpMng:
258- # nodePort: 30081
259+ type: NodePort
260+ http:
261+ nodePort: 30080
262+ httpMng:
263+ nodePort: 30081
1.3.4. データベース連携¶
外部データベース
データベースコンテナ
特徴
設定例
警告
警告
Exastro IT Automation 用データベースの設定
データベースの接続情報を設定します。¶ パラメータ
説明
変更
デフォルト値・選択可能な設定値
global.itaDatabaseDefinition.name
Exastro IT Automation 用データベースの定義名
不可
"ita-database"
global.itaDatabaseDefinition.enabled
Exastro IT Automation 用データベースの定義の利用有無
不可
true
global.itaDatabaseDefinition.config.DB_VENDOR
Exastro IT Automation 用データベースで使用するデータベース
可 (外部データベース利用時)
"mariadb" (デフォルト): MariaDB を利用"mysql": MySQL を利用global.itaDatabaseDefinition.config.DB_HOST
Exastro IT Automation 用データベース利用するDBデフォルト状態では、同一の Kubernetes クラスタ内にデプロイされるコンテナを指定しています。クラスタ外部の DB を利用する場合には設定が必要となります。可 (外部データベース利用時)
"mariadb"
global.itaDatabaseDefinition.config.DB_PORT
Exastro IT Automation 用データベースで利用するポート番号(TCP)
可 (外部データベース利用時)
"3306"
global.itaDatabaseDefinition.config.DB_DATABASE
Exastro IT Automation 用データベースで利用するデータベース名
可 (外部データベース利用時)
"platform"
global.itaDatabaseDefinition.secret.DB_ADMIN_USER
Exastro IT Automation 用データベースで利用する管理権限を持つDBユーザ名
必須
管理権限を持つDBユーザ名
global.itaDatabaseDefinition.secret.DB_ADMIN_PASSWORD
Exastro IT Automation 用データベースで利用する管理権限を持つDBユーザのパスワード(エンコードなし)
必須
管理権限を持つDBユーザ名のパスワード
global.itaDatabaseDefinition.secret.DB_USER
Exastro IT Automation 用データベースに作成するDBユーザ名。指定した DB ユーザが作成される。必須
任意の文字列
global.itaDatabaseDefinition.secret.DB_PASSWORD
Exastro IT Automation 用データベースに作成するDBユーザのパスワード(エンコードなし)
必須
任意の文字列
39 itaDatabaseDefinition: 40 name: ita-database 41 enabled: true 42 config: 43- DB_VENDOR: "mariadb" 44- DB_HOST: "mariadb" 45- DB_PORT: "3306" 46+ DB_VENDOR: "mariadb" # mariadb or mysql 47+ DB_HOST: "your.database.endpoint" # データベースのエンドポイント 48+ DB_PORT: "3306" # データベース接続ポート 49 DB_DATABASE: "ITA_DB" # 変更不要 50 secret: 51- DB_ADMIN_USER: "" 52- DB_ADMIN_PASSWORD: ""s 53+ DB_ADMIN_USER: "your-admin-account" # データベースの管理権限を持つユーザ 54+ DB_ADMIN_PASSWORD: "your-admin-password" # データベースの管理権限を持つユーザのパスワード 55 DB_USER: "" 56 DB_PASSWORD: ""
Exastro 共通基盤用データベースの設定
データベースの接続情報を設定します。¶ パラメータ
説明
変更
デフォルト値・選択可能な設定値
global.pfDatabaseDefinition.name
認証機能用データベースの定義名
不可
"pf-database"
global.pfDatabaseDefinition.enabled
認証機能用データベースの定義の有効有無
不可
true
global.pfDatabaseDefinition.config.DB_VENDOR
認証機能用データベースで使用するデータベース
可 (外部データベース利用時)
"mariadb" (デフォルト): MariaDB を利用"mysql": MySQL を利用global.pfDatabaseDefinition.config.DB_HOST
認証機能用データベース利用するDBデフォルト状態では、同一の Kubernetes クラスタ内にデプロイされるコンテナを指定しています。クラスタ外部の DB を利用する場合には設定が必要となります。可 (外部データベース利用時)
"mariadb"
global.pfDatabaseDefinition.config.DB_PORT
認証機能用データベースで利用するポート番号(TCP)
可 (外部データベース利用時)
"3306"
global.pfDatabaseDefinition.config.DB_DATABASE
認証機能用データベースで利用するデータベース名
可 (外部データベース利用時)
"platform"
global.pfDatabaseDefinition.secret.DB_ADMIN_USER
認証機能用データベースで利用する管理権限を持つDBユーザ名
必須
管理権限を持つDBユーザ名
global.pfDatabaseDefinition.secret.DB_ADMIN_PASSWORD
認証機能用データベースで利用する管理権限を持つDBユーザのパスワード(エンコードなし)
必須
管理権限を持つDBユーザ名のパスワード
global.pfDatabaseDefinition.secret.DB_USER
認証機能用データベースに作成するDBユーザ名。指定した DB ユーザが作成される。必須
任意の文字列
global.pfDatabaseDefinition.secret.DB_PASSWORD
認証機能用データベースに作成するDBユーザのパスワード(エンコードなし)
必須
任意の文字列
112 pfDatabaseDefinition: 113 name: auth-database 114 enabled: true 115 config: 116- DB_VENDOR: "mariadb" 117- DB_HOST: "mariadb" 118- DB_PORT: "3306" 119+ DB_VENDOR: "mariadb" # mariadb or mysql 120+ DB_HOST: "your.database.endpoint" # データベースのエンドポイント 121+ DB_PORT: "3306" # データベース接続ポート 122 DB_DATABASE: "platform" # 変更不要 123 secret: 124- DB_ADMIN_USER: "" 125- DB_ADMIN_PASSWORD: "" 126+ DB_ADMIN_USER: "your-admin-account" # データベースの管理者ユーザ 127+ DB_ADMIN_PASSWORD: "your-admin-password" # データベースの管理者ユーザのパスワード 128 DB_USER: "" 129 DB_PASSWORD: ""
データベースコンテナの無効化
データベースコンテナが起動しないように設定します。¶ パラメータ
説明
変更
デフォルト値・選択可能な設定値
global.databaseDefinition.name
Exastro 共用データベースの定義名
不可
"mariadb"
global.databaseDefinition.enabled
Exastro 共用データベースの定義の利用有無
不可
true
global.databaseDefinition.secret.MARIADB_ROOT_PASSWORD
Exastro 共用データベースの root アカウントに設定するパスワード(エンコードなし)
必須
任意の文字列
global.databaseDefinition.persistence.enabled
Exastro 共用データベースのデータ永続化の有効フラグ
可
"true" (デフォルト): データを永続化する"false": データを永続化しないglobal.databaseDefinition.persistence.reinstall
再インストール時にデータ領域の初期化の要否
可 (データ永続化時)
"true" (デフォルト): データを初期化(削除)する"false": データを初期化(削除)しないglobal.databaseDefinition.persistence.accessMode
永続ボリュームのアクセスモードの指定。
不可
"ReadWriteOnce"
global.databaseDefinition.persistence.size
永続ボリュームのディスク容量
可 (データ永続化時)
"20Gi"
global.databaseDefinition.persistence.volumeType
永続ボリュームのボリュームタイプ
可 (現在無効)
"hostPath" (デフォルト): Kubernetes クラスタのノード上にデータを保存(非推奨)"AKS": AKS のストレージクラスを利用global.databaseDefinition.persistence.storageClass
永続ボリュームにストレージクラスを利用する場合のクラスを指定
可 (データ永続化時)
"-" (デフォルト): ストレージクラスを指定しない。ストレージクラス名: クラウドプロバイダなどから提供されるストレージクラス名を指定。270 mariadb: 271- enabled: true 272+ enabled: false
特徴
設定例
警告
警告
データベースコンテナの設定
データベースコンテナの root パスワードを設定します。また、データベースのデータを永続化するために利用するストレージを指定します。¶ パラメータ
説明
変更
デフォルト値・選択可能な設定値
global.databaseDefinition.name
Exastro 共用データベースの定義名
不可
"mariadb"
global.databaseDefinition.enabled
Exastro 共用データベースの定義の利用有無
不可
true
global.databaseDefinition.secret.MARIADB_ROOT_PASSWORD
Exastro 共用データベースの root アカウントに設定するパスワード(エンコードなし)
必須
任意の文字列
global.databaseDefinition.persistence.enabled
Exastro 共用データベースのデータ永続化の有効フラグ
可
"true" (デフォルト): データを永続化する"false": データを永続化しないglobal.databaseDefinition.persistence.reinstall
再インストール時にデータ領域の初期化の要否
可 (データ永続化時)
"true" (デフォルト): データを初期化(削除)する"false": データを初期化(削除)しないglobal.databaseDefinition.persistence.accessMode
永続ボリュームのアクセスモードの指定。
不可
"ReadWriteOnce"
global.databaseDefinition.persistence.size
永続ボリュームのディスク容量
可 (データ永続化時)
"20Gi"
global.databaseDefinition.persistence.volumeType
永続ボリュームのボリュームタイプ
可 (現在無効)
"hostPath" (デフォルト): Kubernetes クラスタのノード上にデータを保存(非推奨)"AKS": AKS のストレージクラスを利用global.databaseDefinition.persistence.storageClass
永続ボリュームにストレージクラスを利用する場合のクラスを指定
可 (データ永続化時)
"-" (デフォルト): ストレージクラスを指定しない。ストレージクラス名: クラウドプロバイダなどから提供されるストレージクラス名を指定。125 databaseDefinition: 126 name: mariadb 127 enabled: true 128 secret: 129- MARIADB_ROOT_PASSWORD: "" 130+ MARIADB_ROOT_PASSWORD: "root-password" # データベースコンテナの root のパスワード 131 persistence: 132 enabled: true 133 reinstall: false 134 accessMode: ReadWriteOnce 135- size: 20Gi 136- volumeType: hostPath # e.g.) hostPath or AKS 137- storageClass: "-" # e.g.) azurefile or - (None) 138+ size: XXGi # 必要な容量に変更 139+ volumeType: AKS # AKS を選択 140+ storageClass: "exastro-suite-azurefile-csi-nfs" # 利用する Storage Class を指定
125 databaseDefinition: 126 name: mariadb 127 enabled: true 128 secret: 129- MARIADB_ROOT_PASSWORD: "" 130+ MARIADB_ROOT_PASSWORD: "root-password" # コンテナデータベースの root のパスワード 131 persistence: 132 enabled: true 133 reinstall: false 134 accessMode: ReadWriteOnce 135- size: 20Gi 136- volumeType: hostPath # e.g.) hostPath or AKS 137+ size: XXGi # 必要な容量に変更 138+ volumeType: hostPath # AKS を選択 139 storageClass: "-" # e.g.) azurefile or - (None)
Exastro IT Automation 用データベースの設定
Exastro IT Automation コンテナがデータベースに接続できるようにするために、データベース連携 で作成した root アカウントのパスワードを設定します。¶ パラメータ
説明
変更
デフォルト値・選択可能な設定値
global.itaDatabaseDefinition.name
Exastro IT Automation 用データベースの定義名
不可
"ita-database"
global.itaDatabaseDefinition.enabled
Exastro IT Automation 用データベースの定義の利用有無
不可
true
global.itaDatabaseDefinition.config.DB_VENDOR
Exastro IT Automation 用データベースで使用するデータベース
可 (外部データベース利用時)
"mariadb" (デフォルト): MariaDB を利用"mysql": MySQL を利用global.itaDatabaseDefinition.config.DB_HOST
Exastro IT Automation 用データベース利用するDBデフォルト状態では、同一の Kubernetes クラスタ内にデプロイされるコンテナを指定しています。クラスタ外部の DB を利用する場合には設定が必要となります。可 (外部データベース利用時)
"mariadb"
global.itaDatabaseDefinition.config.DB_PORT
Exastro IT Automation 用データベースで利用するポート番号(TCP)
可 (外部データベース利用時)
"3306"
global.itaDatabaseDefinition.config.DB_DATABASE
Exastro IT Automation 用データベースで利用するデータベース名
可 (外部データベース利用時)
"platform"
global.itaDatabaseDefinition.secret.DB_ADMIN_USER
Exastro IT Automation 用データベースで利用する管理権限を持つDBユーザ名
必須
管理権限を持つDBユーザ名
global.itaDatabaseDefinition.secret.DB_ADMIN_PASSWORD
Exastro IT Automation 用データベースで利用する管理権限を持つDBユーザのパスワード(エンコードなし)
必須
管理権限を持つDBユーザ名のパスワード
global.itaDatabaseDefinition.secret.DB_USER
Exastro IT Automation 用データベースに作成するDBユーザ名。指定した DB ユーザが作成される。必須
任意の文字列
global.itaDatabaseDefinition.secret.DB_PASSWORD
Exastro IT Automation 用データベースに作成するDBユーザのパスワード(エンコードなし)
必須
任意の文字列
39 itaDatabaseDefinition: 40 name: ita-database 41 enabled: true 42 config: 43 DB_VENDOR: "mariadb" 44 DB_HOST: "mariadb" 45 DB_PORT: "3306" 46 DB_DATABASE: "ITA_DB" 47 secret: 48- DB_ADMIN_USER: "" 49- DB_ADMIN_PASSWORD: "" 50+ DB_ADMIN_USER: "root" # root を指定 51+ DB_ADMIN_PASSWORD: "your-admin-password" # 「1. データベースコンテナの設定」で設定したコンテナデータベースの root のパスワード 52 DB_USER: "" 53 DB_PASSWORD: ""
Exastro 共通基盤用データベースの設定
Exastro 共通基盤のコンテナがデータベースに接続できるようにするために、「1. データベースコンテナの設定」で作成した root アカウントのパスワードを設定します。¶ パラメータ
説明
変更
デフォルト値・選択可能な設定値
global.pfDatabaseDefinition.name
認証機能用データベースの定義名
不可
"pf-database"
global.pfDatabaseDefinition.enabled
認証機能用データベースの定義の有効有無
不可
true
global.pfDatabaseDefinition.config.DB_VENDOR
認証機能用データベースで使用するデータベース
可 (外部データベース利用時)
"mariadb" (デフォルト): MariaDB を利用"mysql": MySQL を利用global.pfDatabaseDefinition.config.DB_HOST
認証機能用データベース利用するDBデフォルト状態では、同一の Kubernetes クラスタ内にデプロイされるコンテナを指定しています。クラスタ外部の DB を利用する場合には設定が必要となります。可 (外部データベース利用時)
"mariadb"
global.pfDatabaseDefinition.config.DB_PORT
認証機能用データベースで利用するポート番号(TCP)
可 (外部データベース利用時)
"3306"
global.pfDatabaseDefinition.config.DB_DATABASE
認証機能用データベースで利用するデータベース名
可 (外部データベース利用時)
"platform"
global.pfDatabaseDefinition.secret.DB_ADMIN_USER
認証機能用データベースで利用する管理権限を持つDBユーザ名
必須
管理権限を持つDBユーザ名
global.pfDatabaseDefinition.secret.DB_ADMIN_PASSWORD
認証機能用データベースで利用する管理権限を持つDBユーザのパスワード(エンコードなし)
必須
管理権限を持つDBユーザ名のパスワード
global.pfDatabaseDefinition.secret.DB_USER
認証機能用データベースに作成するDBユーザ名。指定した DB ユーザが作成される。必須
任意の文字列
global.pfDatabaseDefinition.secret.DB_PASSWORD
認証機能用データベースに作成するDBユーザのパスワード(エンコードなし)
必須
任意の文字列
112 pfDatabaseDefinition: 113 name: auth-database 114 enabled: true 115 config: 116 DB_VENDOR: "mariadb" 117 DB_HOST: "mariadb" 118 DB_PORT: "3306" 119 DB_DATABASE: "platform" 120 secret: 121- DB_ADMIN_USER: "" 122- DB_ADMIN_PASSWORD: "" 123+ DB_ADMIN_USER: "root" # root を指定 124+ DB_ADMIN_PASSWORD: "your-admin-password" # 「1. データベースコンテナの設定」で設定したコンテナデータベースの root のパスワード 125 DB_USER: "" 126 DB_PASSWORD: ""
1.3.5. アプリケーションの DB ユーザ設定¶
設定例¶
Exastro IT Automation
Exastro 共通基盤
Keycloak
警告
Exastro IT Automation 用データベースの設定
アプリケーションが利用・作成する DB ユーザを設定します。¶ パラメータ
説明
変更
デフォルト値・選択可能な設定値
global.itaDatabaseDefinition.name
Exastro IT Automation 用データベースの定義名
不可
"ita-database"
global.itaDatabaseDefinition.enabled
Exastro IT Automation 用データベースの定義の利用有無
不可
true
global.itaDatabaseDefinition.config.DB_VENDOR
Exastro IT Automation 用データベースで使用するデータベース
可 (外部データベース利用時)
"mariadb" (デフォルト): MariaDB を利用"mysql": MySQL を利用global.itaDatabaseDefinition.config.DB_HOST
Exastro IT Automation 用データベース利用するDBデフォルト状態では、同一の Kubernetes クラスタ内にデプロイされるコンテナを指定しています。クラスタ外部の DB を利用する場合には設定が必要となります。可 (外部データベース利用時)
"mariadb"
global.itaDatabaseDefinition.config.DB_PORT
Exastro IT Automation 用データベースで利用するポート番号(TCP)
可 (外部データベース利用時)
"3306"
global.itaDatabaseDefinition.config.DB_DATABASE
Exastro IT Automation 用データベースで利用するデータベース名
可 (外部データベース利用時)
"platform"
global.itaDatabaseDefinition.secret.DB_ADMIN_USER
Exastro IT Automation 用データベースで利用する管理権限を持つDBユーザ名
必須
管理権限を持つDBユーザ名
global.itaDatabaseDefinition.secret.DB_ADMIN_PASSWORD
Exastro IT Automation 用データベースで利用する管理権限を持つDBユーザのパスワード(エンコードなし)
必須
管理権限を持つDBユーザ名のパスワード
global.itaDatabaseDefinition.secret.DB_USER
Exastro IT Automation 用データベースに作成するDBユーザ名。指定した DB ユーザが作成される。必須
任意の文字列
global.itaDatabaseDefinition.secret.DB_PASSWORD
Exastro IT Automation 用データベースに作成するDBユーザのパスワード(エンコードなし)
必須
任意の文字列
39 itaDatabaseDefinition: 40 name: ita-database 41 enabled: true 42 config: 43 DB_VENDOR: "mariadb" 44 DB_HOST: "mariadb" 45 DB_PORT: "3306" 46 DB_DATABASE: "ITA_DB" 47 secret: 48 DB_ADMIN_USER: "" 49 DB_ADMIN_PASSWORD: "" 50- DB_USER: "" 51- DB_PASSWORD: "" 52+ DB_USER: "ita-db-user" # Exastro IT Automation のアプリが使うDBユーザ 53+ DB_PASSWORD: "ita-db-user-password" # Exastro IT Automation のアプリが使うDBユーザのパスワード
Keycloak 用データベースの設定
アプリケーションが利用・作成する DB ユーザを設定します。¶ パラメータ
説明
変更
デフォルト値・選択可能な設定値
global.keycloakDefinition.name
Keycloak の定義名
不可
"keycloak"
global.keycloakDefinition.enabled
Keycloak の定義の利用有無
不可
true
global.keycloakDefinition.config.API_KEYCLOAK_PROTOCOL
Keycloak API エンドポイントのプロトコル
可 (外部Keycloak利用時)
"http”
global.keycloakDefinition.config.API_KEYCLOAK_HOST
Keycloak API エンドポイントのホスト名、もしくは、FQDN
可 (外部Keycloak利用時)
"keycloak"
global.keycloakDefinition.config.API_KEYCLOAK_PORT
Keycloak API エンドポイントのポート番号
可 (外部Keycloak利用時)
"8080"
global.keycloakDefinition.config.KEYCLOAK_PROTOCOL
Keycloak エンドポイントのプロトコル
可 (外部Keycloak利用時)
"http"
global.keycloakDefinition.config.KEYCLOAK_HOST
Keycloak エンドポイントのホスト名、もしくは、FQDN
可 (外部Keycloak利用時)
"keycloak"
global.keycloakDefinition.config.KEYCLOAK_PORT
Keycloak API エンドポイントのポート番号
可 (外部Keycloak利用時)
"8080"
global.keycloakDefinition.config.KEYCLOAK_MASTER_REALM
Keycloak のマスターレルム名
可
"master"
global.keycloakDefinition.config.KEYCLOAK_DB_DATABASE
Keycloak が利用するデータベース名
可
"keycloak"
global.keycloakDefinition.secret.KEYCLOAK_USER
Keycloak のマスターレルムにおける管理権限を持ったユーザ名を指定。指定した Keycloak ユーザが作成される。必須
任意の文字列
global.keycloakDefinition.secret.KEYCLOAK_PASSWORD
Keycloak のマスターレルムにおける管理権限を持ったユーザに設定するパスワード(エンコードなし)
必須
任意の文字列
global.keycloakDefinition.secret.KEYCLOAK_DB_USER
Keycloak が使用するデータベースユーザ。指定した DB ユーザが作成される。必須
任意の文字列
global.keycloakDefinition.secret.KEYCLOAK_DB_PASSWORD
Keycloak が使用するデータベースユーザのパスワード(エンコードなし)
必須
任意の文字列
82 keycloakDefinition: 83 name: keycloak 84 enabled: true 85 config: 86 API_KEYCLOAK_PROTOCOL: "http" 87 API_KEYCLOAK_HOST: "keycloak" 88 API_KEYCLOAK_PORT: "8080" 89 KEYCLOAK_PROTOCOL: "http" 90 KEYCLOAK_HOST: "keycloak" 91 KEYCLOAK_PORT: "8080" 92 KEYCLOAK_MASTER_REALM: "master" 93 KEYCLOAK_DB_DATABASE: "keycloak" 94 secret: 95 KEYCLOAK_USER: "" 96 KEYCLOAK_PASSWORD: "" 97- KEYCLOAK_DB_USER: "" 98- KEYCLOAK_DB_PASSWORD: "" 99+ KEYCLOAK_DB_USER: "keycloak-db-user" # Keycloak が使うDBユーザ 100+ KEYCLOAK_DB_PASSWORD: "keycloak-db-user-password" # Keycloak が使うDBユーザのパスワード
Exastro 共通基盤用データベースの設定
アプリケーションが利用・作成する DB ユーザを設定します。¶ パラメータ
説明
変更
デフォルト値・選択可能な設定値
global.pfDatabaseDefinition.name
認証機能用データベースの定義名
不可
"pf-database"
global.pfDatabaseDefinition.enabled
認証機能用データベースの定義の有効有無
不可
true
global.pfDatabaseDefinition.config.DB_VENDOR
認証機能用データベースで使用するデータベース
可 (外部データベース利用時)
"mariadb" (デフォルト): MariaDB を利用"mysql": MySQL を利用global.pfDatabaseDefinition.config.DB_HOST
認証機能用データベース利用するDBデフォルト状態では、同一の Kubernetes クラスタ内にデプロイされるコンテナを指定しています。クラスタ外部の DB を利用する場合には設定が必要となります。可 (外部データベース利用時)
"mariadb"
global.pfDatabaseDefinition.config.DB_PORT
認証機能用データベースで利用するポート番号(TCP)
可 (外部データベース利用時)
"3306"
global.pfDatabaseDefinition.config.DB_DATABASE
認証機能用データベースで利用するデータベース名
可 (外部データベース利用時)
"platform"
global.pfDatabaseDefinition.secret.DB_ADMIN_USER
認証機能用データベースで利用する管理権限を持つDBユーザ名
必須
管理権限を持つDBユーザ名
global.pfDatabaseDefinition.secret.DB_ADMIN_PASSWORD
認証機能用データベースで利用する管理権限を持つDBユーザのパスワード(エンコードなし)
必須
管理権限を持つDBユーザ名のパスワード
global.pfDatabaseDefinition.secret.DB_USER
認証機能用データベースに作成するDBユーザ名。指定した DB ユーザが作成される。必須
任意の文字列
global.pfDatabaseDefinition.secret.DB_PASSWORD
認証機能用データベースに作成するDBユーザのパスワード(エンコードなし)
必須
任意の文字列
112 pfDatabaseDefinition: 113 name: auth-database 114 enabled: true 115 config: 116 DB_VENDOR: "mariadb" 117 DB_HOST: "mariadb" 118 DB_PORT: "3306" 119 DB_DATABASE: "platform" 120 secret: 121 DB_ADMIN_USER: "" 122 DB_ADMIN_PASSWORD: "" 123- DB_USER: "" 124- DB_PASSWORD: "" 125+ DB_USER: "pf-db-user" # Exastro 共通基盤が使うDBユーザ 126+ DB_PASSWORD: "pf-db-password" # Exastro 共通基盤が使うDBユーザのパスワード
1.3.6. GitLab 連携設定¶
パラメータ |
説明 |
変更 |
デフォルト値・選択可能な設定値 |
---|---|---|---|
global.gitlabDefinition.name |
GitLab の定義名 |
不可 |
gitlab |
global.gitlabDefinition.enabled |
GitLab の定義の利用有無 |
不可 |
true |
global.gitlabDefinition.config.GITLAB_PROTOCOL |
GitLab エンドポイントのプロトコル |
可 |
http |
global.gitlabDefinition.config.GITLAB_HOST |
GitLab エンドポイントへのホスト名、もしくは、FQDN |
可 |
gitlab |
global.gitlabDefinition.config.GITLAB_PORT |
GitLab エンドポイントのポート番号 |
可 |
80 |
global.gitlabDefinition.secret.GITLAB_ROOT_TOKEN |
GitLab の root 権限アカウントのアクセストークン |
必須 |
アクセエストークン(平文) |
警告
30 gitlabDefinition:
31 name: gitlab
32 enabled: true
33 config:
34 - GITLAB_PROTOCOL: "http"
35 - GITLAB_HOST: "gitlab"
36 - GITLAB_PORT: "80"
37 + GITLAB_PROTOCOL: "接続プロトコル http or https"
38 + GITLAB_HOST: "接続先"
39 + GITLAB_PORT: "接続ポート"
40 secret:
41 - GITLAB_ROOT_TOKEN: ""
42 + GITLAB_ROOT_TOKEN: "GitLabのRoot権限を持ったトークン"
1.3.7. Exastro システム管理者の作成¶
パラメータ |
説明 |
変更 |
デフォルト値・選択可能な設定値 |
---|---|---|---|
global.keycloakDefinition.name |
Keycloak の定義名 |
不可 |
"keycloak" |
global.keycloakDefinition.enabled |
Keycloak の定義の利用有無 |
不可 |
true |
global.keycloakDefinition.config.API_KEYCLOAK_PROTOCOL |
Keycloak API エンドポイントのプロトコル |
可 (外部Keycloak利用時) |
"http” |
global.keycloakDefinition.config.API_KEYCLOAK_HOST |
Keycloak API エンドポイントのホスト名、もしくは、FQDN |
可 (外部Keycloak利用時) |
"keycloak" |
global.keycloakDefinition.config.API_KEYCLOAK_PORT |
Keycloak API エンドポイントのポート番号 |
可 (外部Keycloak利用時) |
"8080" |
global.keycloakDefinition.config.KEYCLOAK_PROTOCOL |
Keycloak エンドポイントのプロトコル |
可 (外部Keycloak利用時) |
"http" |
global.keycloakDefinition.config.KEYCLOAK_HOST |
Keycloak エンドポイントのホスト名、もしくは、FQDN |
可 (外部Keycloak利用時) |
"keycloak" |
global.keycloakDefinition.config.KEYCLOAK_PORT |
Keycloak API エンドポイントのポート番号 |
可 (外部Keycloak利用時) |
"8080" |
global.keycloakDefinition.config.KEYCLOAK_MASTER_REALM |
Keycloak のマスターレルム名 |
可 |
"master" |
global.keycloakDefinition.config.KEYCLOAK_DB_DATABASE |
Keycloak が利用するデータベース名 |
可 |
"keycloak" |
global.keycloakDefinition.secret.KEYCLOAK_USER |
Keycloak のマスターレルムにおける管理権限を持ったユーザ名を指定。
指定した Keycloak ユーザが作成される。
|
必須 |
任意の文字列 |
global.keycloakDefinition.secret.KEYCLOAK_PASSWORD |
Keycloak のマスターレルムにおける管理権限を持ったユーザに設定するパスワード(エンコードなし) |
必須 |
任意の文字列 |
global.keycloakDefinition.secret.KEYCLOAK_DB_USER |
Keycloak が使用するデータベースユーザ。
指定した DB ユーザが作成される。
|
必須 |
任意の文字列 |
global.keycloakDefinition.secret.KEYCLOAK_DB_PASSWORD |
Keycloak が使用するデータベースユーザのパスワード(エンコードなし) |
必須 |
任意の文字列 |
82 keycloakDefinition:
83 name: keycloak
84 enabled: true
85 config:
86 API_KEYCLOAK_PROTOCOL: "http"
87 API_KEYCLOAK_HOST: "keycloak"
88 API_KEYCLOAK_PORT: "8080"
89 KEYCLOAK_PROTOCOL: "http"
90 KEYCLOAK_HOST: "keycloak"
91 KEYCLOAK_PORT: "8080"
92 KEYCLOAK_MASTER_REALM: "master"
93 KEYCLOAK_DB_DATABASE: "keycloak"
94 secret:
95- KEYCLOAK_USER: ""
96- KEYCLOAK_PASSWORD: ""
97+ KEYCLOAK_USER: "admin" # Exastro システムの管理者
98+ KEYCLOAK_PASSWORD: "admin-password" # Exastro システムの管理者のパスワード
99 KEYCLOAK_DB_USER: ""
100 KEYCLOAK_DB_PASSWORD: ""
1.3.8. 永続ボリュームの設定¶
マネージドディスク
Kubernetes ノードのディレクトリ
特徴
設定例
1apiVersion: storage.k8s.io/v1
2kind: StorageClass
3metadata:
4 name: exastro-suite-azurefile-csi-nfs
5provisioner: file.csi.azure.com
6allowVolumeExpansion: true
7parameters:
8 protocol: nfs
9mountOptions:
10 - nconnect=8
5 itaGlobalDefinition:
6 persistence:
7 enabled: true
8 accessMode: ReadWriteMany
9 size: 10Gi
10 volumeType: hostPath # e.g.) hostPath or AKS
11- storageClass: "-" # e.g.) azurefile or - (None)
12+ storageClass: "azurefile" # e.g.) azurefile or - (None)
39 databaseDefinition:
40 persistence:
41 enabled: true
42 reinstall: false
43 accessMode: ReadWriteOnce
44 size: 20Gi
45 volumeType: hostPath # e.g.) hostPath or AKS
46- storageClass: "-" # e.g.) azurefile or - (None)
47+ storageClass: "exastro-suite-azurefile-csi-nfs" # e.g.) azurefile or - (None)
特徴
危険
利用例
1# pv-database.yaml
2apiVersion: v1
3kind: PersistentVolume
4metadata:
5 name: pv-database
6spec:
7 capacity:
8 storage: 20Gi
9 accessModes:
10 - ReadWriteOnce
11 persistentVolumeReclaimPolicy: Retain
12 hostPath:
13 path: /var/data/exastro-suite/exastro-platform/database
14 type: DirectoryOrCreate
1# pv-ita-common.yaml
2apiVersion: v1
3kind: PersistentVolume
4metadata:
5 name: pv-ita-common
6spec:
7 capacity:
8 storage: 10Gi
9 accessModes:
10 - ReadWriteMany
11 persistentVolumeReclaimPolicy: Retain
12 hostPath:
13 path: /var/data/exastro-suite/exastro-it-automation/ita-common
14 type: DirectoryOrCreate
1.4. インストール¶
1.4.1. 永続ボリュームの作成¶
# pv-database.yaml
kubectl apply -f pv-database.yaml
# pv-ita-common.yaml
kubectl apply -f pv-ita-common.yaml
# 確認
kubectl get pv
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
pv-database 20Gi RWO Retain Available 19s
pv-ita-common 10Gi RWX Retain Available 9s
1.4.2. インストール¶
Chart Version |
Exastro Version |
Exastro IT Automation |
Exastro Platform |
リリースシナリオ |
---|---|---|---|---|
1.0.2 |
2.1.0 |
2.0.3 |
1.4.0 |
Exastro IT Automation Version 2.0 GA リリース |
... |
... |
... |
... |
... |
1.1.x |
2.2.x |
2.1.x |
1.x.0 |
Exastro IT Automation Version 2.1 GA リリース(予定) |
Helm コマンドを使い Kubernetes 環境にインストールを行います。
helm install exastro exastro/exastro \ --namespace exastro --create-namespace \ --values exastro.yaml
NAME: exastro LAST DEPLOYED: Sat Jan 28 15:00:02 2023 NAMESPACE: exastro STATUS: deployed REVISION: 1 TEST SUITE: None NOTES: Exastro install completion! 1. Execute the following command and wait until the pod becomes "Running" or "Completed": # NOTE: You can also append "-w" to the command or wait until the state changes with "watch command" kubectl get pods --namespace exastro 2. Get the ENCRYPT_KEY by running these commands: # Exastro IT Automation ENCRYPT_KEY kubectl get secret ita-secret-ita-global -n exastro -o jsonpath='{.data.ENCRYPT_KEY}' | base64 -d # Exastro Platform ENCRYPT_KEY kubectl get secret platform-secret-pf-global -n exastro -o jsonpath='{.data.ENCRYPT_KEY}' | base64 -d !!! Please save the output ENCRYPT_KEY carefully. !!! 3. Run the following command to get the application URL and go to the URL or go to the displayed URL: ************************* * Service Console * ************************* http://exastro-suite.example.local/ ************************* * Administrator Console * ************************* http://exastro-suite-mng.example.local/auth/ # Note: You can display this note again by executing the following command.
以下、上記の出力結果に従って操作をします。- インストール状況確認
# Pod の一覧を取得
kubectl get po -n exastro
| 正常動作している場合は、すべて “Running” もしくは “Completed” となります。
| ※正常に起動するまで数分かかる場合があります。
NAME READY STATUS RESTARTS AGE
ita-by-menu-create-7fccfc7f57-7cc2f 1/1 Running 0 11m
ita-by-conductor-synchronize-9dc6cfbdf-vp64z 1/1 Running 0 11m
ita-api-admin-85b7d8f977-cxr58 1/1 Running 0 11m
ita-api-organization-5c5f4b86cb-rmf4g 1/1 Running 0 11m
ita-by-ansible-execute-6cd6d4d5fd-wkxjd 1/1 Running 0 11m
ita-by-ansible-legacy-role-vars-listup-67dbf5586f-dhdb2 1/1 Running 0 11m
ita-by-ansible-towermaster-sync-5674448c55-t9592 1/1 Running 0 11m
ita-web-server-7dbf6fd6ff-2s7s4 1/1 Running 0 11m
platform-auth-5b57bc57bd-h4k2g 1/1 Running 0 11m
platform-web-9f9d486fd-zf5vb 1/1 Running 0 11m
mariadb-67dd78cc76-nthtf 1/1 Running 0 11m
platform-api-8655864fbf-t5xxf 1/1 Running 0 11m
ita-setup-wv2t6 0/1 Completed 0 11m
keycloak-7f7cdccb6b-rf4rj 1/1 Running 0 11m
platform-setup-8vv2x 0/1 Completed 0 11m
暗号化キーのバックアップ
Exastro システムのパスワードや認証情報といった機密情報はすべて暗号化されています。必ず、下記で取得した暗号化キーをバックアップして、適切に保管してください。危険
暗号化キーを紛失した場合、バックアップデータからシステムを復旧した際にデータの復号ができなくなります。# Exastro IT Automation ENCRYPT_KEY kubectl get secret ita-secret-ita-global -n exastro -o jsonpath='{.data.ENCRYPT_KEY}' | base64 -d
JnIoXzJtPic2MXFqRl1yI1chMj8hWzQrNypmVn41Pk8=
# Exastro Platform ENCRYPT_KEY kubectl get secret platform-secret-pf-global -n exastro -o jsonpath='{.data.ENCRYPT_KEY}' | base64 -d
bHFZe2VEVVM2PmFeQDMqNG4oZT4lTlglLjJJekxBTHE=
接続確認
出力結果に従って、の URL にアクセスします。下記は、実行例のため サービス公開の設定 で設定したホスト名に読み替えてください。************************* * Service Console * ************************* http://exastro-suite.example.local/ ************************* * Administrator Console * ************************* http://exastro-suite-mng.example.local/auth/
¶ 管理コンソール
Helm コマンドを使い Kubernetes 環境にインストールを行います。
helm install exastro exastro/exastro \ --namespace exastro --create-namespace \ --values exastro.yaml
NAME: exastro LAST DEPLOYED: Sat Jan 28 15:00:02 2023 NAMESPACE: exastro STATUS: deployed REVISION: 1 TEST SUITE: None NOTES: Exastro install completion! 1. Execute the following command and wait until the pod becomes "Running" or "Completed": # NOTE: You can also append "-w" to the command or wait until the state changes with "watch command" kubectl get pods --namespace exastro 2. Get the ENCRYPT_KEY by running these commands: # Exastro IT Automation ENCRYPT_KEY kubectl get secret ita-secret-ita-global -n exastro -o jsonpath='{.data.ENCRYPT_KEY}' | base64 -d # Exastro Platform ENCRYPT_KEY kubectl get secret platform-secret-pf-global -n exastro -o jsonpath='{.data.ENCRYPT_KEY}' | base64 -d !!! Please save the output ENCRYPT_KEY carefully. !!! 3. Run the following command to get the application URL and go to the URL or go to the displayed URL: # NOTE: It may take a few minutes for the LoadBalancer IP to be available. # You can watch the status of by running 'kubectl get --namespace exastro svc -w platform-auth' export NODE_SVC_PORT=$(kubectl get services platform-auth --namespace exastro -o jsonpath="{.spec.ports[0].nodePort}") export NODE_MGT_PORT=$(kubectl get services platform-auth --namespace exastro -o jsonpath="{.spec.ports[1].nodePort}") export NODE_IP=$(kubectl get services platform-auth --namespace exastro -o jsonpath="{.status.loadBalancer.ingress[0].ip}") # ************************* # * Administrator Console * # ************************* echo http://$NODE_IP:$NODE_MGT_PORT/auth/ # ************************* # * Service Console * # ************************* echo http://$NODE_IP:$NODE_SVC_PORT # Note: You can display this note again by executing the following command.
以下、上記の出力結果に従って操作をします。- インストール状況確認
# Pod の一覧を取得
kubectl get po -n exastro
| 正常動作している場合は、すべて “Running” もしくは “Completed” となります。
| ※正常に起動するまで数分かかる場合があります。
NAME READY STATUS RESTARTS AGE
ita-by-menu-create-7fccfc7f57-7cc2f 1/1 Running 0 11m
ita-by-conductor-synchronize-9dc6cfbdf-vp64z 1/1 Running 0 11m
ita-api-admin-85b7d8f977-cxr58 1/1 Running 0 11m
ita-api-organization-5c5f4b86cb-rmf4g 1/1 Running 0 11m
ita-by-ansible-execute-6cd6d4d5fd-wkxjd 1/1 Running 0 11m
ita-by-ansible-legacy-role-vars-listup-67dbf5586f-dhdb2 1/1 Running 0 11m
ita-by-ansible-towermaster-sync-5674448c55-t9592 1/1 Running 0 11m
ita-web-server-7dbf6fd6ff-2s7s4 1/1 Running 0 11m
platform-auth-5b57bc57bd-h4k2g 1/1 Running 0 11m
platform-web-9f9d486fd-zf5vb 1/1 Running 0 11m
mariadb-67dd78cc76-nthtf 1/1 Running 0 11m
platform-api-8655864fbf-t5xxf 1/1 Running 0 11m
ita-setup-wv2t6 0/1 Completed 0 11m
keycloak-7f7cdccb6b-rf4rj 1/1 Running 0 11m
platform-setup-8vv2x 0/1 Completed 0 11m
暗号化キーのバックアップ
Exastro システムのパスワードや認証情報といった機密情報はすべて暗号化されています。必ず、下記で取得した暗号化キーをバックアップして、適切に保管してください。危険
暗号化キーを紛失した場合、バックアップデータからシステムを復旧した際にデータの復号ができなくなります。# Exastro IT Automation ENCRYPT_KEY kubectl get secret ita-secret-ita-global -n exastro -o jsonpath='{.data.ENCRYPT_KEY}' | base64 -d
JnIoXzJtPic2MXFqRl1yI1chMj8hWzQrNypmVn41Pk8=
# Exastro Platform ENCRYPT_KEY kubectl get secret platform-secret-pf-global -n exastro -o jsonpath='{.data.ENCRYPT_KEY}' | base64 -d
bHFZe2VEVVM2PmFeQDMqNG4oZT4lTlglLjJJekxBTHE=
接続確認
1. で実行した helm install の出力結果のコマンドをコンソール上に貼り付けて実行します。# helm install コマンドの実行結果を貼り付けて実行 export NODE_SVC_PORT=$(kubectl get services platform-auth --namespace exastro -o jsonpath="{.spec.ports[0].nodePort}") export NODE_MGT_PORT=$(kubectl get services platform-auth --namespace exastro -o jsonpath="{.spec.ports[1].nodePort}") export NODE_IP=$(kubectl get services platform-auth --namespace exastro -o jsonpath="{.status.loadBalancer.ingress[0].ip}") # ************************* # * Administrator Console * # ************************* echo http://$NODE_IP:$NODE_MGT_PORT/auth/ # ************************* # * Service Console * # ************************* echo http://$NODE_IP:$NODE_SVC_PORT
出力結果に従って、の URL にアクセスします。下記は、実行例のため実際のコマンド実行結果に読み替えてください。************************* * Administrator Console * ************************* http://172.16.20.XXX:32031/auth/ ************************* * Service Console * ************************* http://172.16.20.XXX:31798
¶ 管理コンソール
Helm コマンドを使い Kubernetes 環境にインストールを行います。
helm install exastro exastro/exastro \ --namespace exastro --create-namespace \ --values exastro.yaml
NAME: exastro LAST DEPLOYED: Sun Jan 29 12:18:02 2023 NAMESPACE: exastro STATUS: deployed REVISION: 1 TEST SUITE: None NOTES: Exastro install completion! 1. Execute the following command and wait until the pod becomes "Running" or "Completed": # NOTE: You can also append "-w" to the command or wait until the state changes with "watch command" kubectl get pods --namespace exastro 2. Get the ENCRYPT_KEY by running these commands: # Exastro IT Automation ENCRYPT_KEY kubectl get secret ita-secret-ita-global -n exastro -o jsonpath='{.data.ENCRYPT_KEY}' | base64 -d # Exastro Platform ENCRYPT_KEY kubectl get secret platform-secret-pf-global -n exastro -o jsonpath='{.data.ENCRYPT_KEY}' | base64 -d !!! Please save the output ENCRYPT_KEY carefully. !!! 3. Run the following command to get the application URL and go to the URL or go to the displayed URL: export NODE_SVC_PORT=$(kubectl get services platform-auth --namespace exastro -o jsonpath="{.spec.ports[0].nodePort}") export NODE_MGT_PORT=$(kubectl get services platform-auth --namespace exastro -o jsonpath="{.spec.ports[1].nodePort}") export NODE_IP=$(kubectl get nodes --namespace exastro -o jsonpath="{.items[0].status.addresses[0].address}") # ************************* # * Administrator Console * # ************************* echo http://$NODE_IP:$NODE_MGT_PORT/auth/ # ************************* # * Service Console * # ************************* echo http://$NODE_IP:$NODE_SVC_PORT # Note: You can display this note again by executing the following command.
以下、上記の出力結果に従って操作をします。- インストール状況確認
# Pod の一覧を取得
kubectl get po -n exastro
| 正常動作している場合は、すべて “Running” もしくは “Completed” となります。
| ※正常に起動するまで数分かかる場合があります。
NAME READY STATUS RESTARTS AGE
ita-by-menu-create-7fccfc7f57-7cc2f 1/1 Running 0 11m
ita-by-conductor-synchronize-9dc6cfbdf-vp64z 1/1 Running 0 11m
ita-api-admin-85b7d8f977-cxr58 1/1 Running 0 11m
ita-api-organization-5c5f4b86cb-rmf4g 1/1 Running 0 11m
ita-by-ansible-execute-6cd6d4d5fd-wkxjd 1/1 Running 0 11m
ita-by-ansible-legacy-role-vars-listup-67dbf5586f-dhdb2 1/1 Running 0 11m
ita-by-ansible-towermaster-sync-5674448c55-t9592 1/1 Running 0 11m
ita-web-server-7dbf6fd6ff-2s7s4 1/1 Running 0 11m
platform-auth-5b57bc57bd-h4k2g 1/1 Running 0 11m
platform-web-9f9d486fd-zf5vb 1/1 Running 0 11m
mariadb-67dd78cc76-nthtf 1/1 Running 0 11m
platform-api-8655864fbf-t5xxf 1/1 Running 0 11m
ita-setup-wv2t6 0/1 Completed 0 11m
keycloak-7f7cdccb6b-rf4rj 1/1 Running 0 11m
platform-setup-8vv2x 0/1 Completed 0 11m
暗号化キーのバックアップ
Exastro システムのパスワードや認証情報といった機密情報はすべて暗号化されています。必ず、下記で取得した暗号化キーをバックアップして、適切に保管してください。危険
暗号化キーを紛失した場合、バックアップデータからシステムを復旧した際にデータの復号ができなくなります。# Exastro IT Automation ENCRYPT_KEY kubectl get secret ita-secret-ita-global -n exastro -o jsonpath='{.data.ENCRYPT_KEY}' | base64 -d
JnIoXzJtPic2MXFqRl1yI1chMj8hWzQrNypmVn41Pk8=
# Exastro Platform ENCRYPT_KEY kubectl get secret platform-secret-pf-global -n exastro -o jsonpath='{.data.ENCRYPT_KEY}' | base64 -d
bHFZe2VEVVM2PmFeQDMqNG4oZT4lTlglLjJJekxBTHE=
接続確認
1. で実行した helm install の出力結果のコマンドをコンソール上に貼り付けて実行します。export NODE_SVC_PORT=$(kubectl get services platform-auth --namespace exastro -o jsonpath="{.spec.ports[0].nodePort}") export NODE_MGT_PORT=$(kubectl get services platform-auth --namespace exastro -o jsonpath="{.spec.ports[1].nodePort}") export NODE_IP=$(kubectl get nodes --namespace exastro -o jsonpath="{.items[0].status.addresses[0].address}") # ************************* # * Administrator Console * # ************************* echo http://$NODE_IP:$NODE_MGT_PORT/auth/ # ************************* # * Service Console * # ************************* echo http://$NODE_IP:$NODE_SVC_PORT
出力結果に従って、の URL にアクセスします。下記は、実行例のため実際のコマンド実行結果に読み替えてください。************************* * Administrator Console * ************************* http://172.16.20.xxx:30081/auth/ ************************* * Service Console * ************************* http://172.16.20.xxx:30080
¶ 管理コンソール