Lifecycle Manage 설치 가이드

Table of Contents

1. 문서 개요

1.1. 목적

본 문서는 라이프사이클 관리 서비스 Release를 Bosh2.0을 이용하여 설치 하는 방법을 기술하였다.

1.2. 범위

설치 범위는 라이프사이클 관리 서비스 Release를 검증하기 위한 기본 설치를 기준으로 작성하였다.

1.3. 시스템 구성

본 장에서는 라이프사이클 관리 서비스의 시스템 구성에 대해 기술하였다. 라이프사이클 관리 서비스 시스템은 service-broker, mariadb, app-lifecycle(TAIGA)서비스의 최소사항을 구성하였다.
VM명
인스턴스 수
vCPU수
메모리(GB)
디스크(GB)
service-broker
1
1
1
mariadb
1
1
2
Root 8G + Persistent disk 10G
app-lifecycle
N
1
4
Root 10G + Persistent disk 20G

1.4. 참고자료

2. 라이프사이클 관리 서비스 설치

2.1. 설치 전 준비 사항

본 설치 가이드는 Linux 환경에서 설치하는 것을 기준으로 하였다. 라이프사이클 관리 서비스 설치를 위해서는 BOSH 2.0과 PaaS-TA 5.0, PaaS-TA 포털이 설치되어 있어야 한다.

2.1.1 라이프사이클 관리 서비스 설치 파일 다운로드

라이프사이클 관리 서비스 설치에 필요한 Deployment 및 릴리즈 파일을 다운로드 받아 서비스 설치 작업 경로로 위치시킨다.
  • 설치 파일 다운로드 위치 : https://paas-ta.kr/download/package = Deployment : paasta-app-lifecycle-service = 릴리즈 파일 : paasta-app-lifecycle-service-release.tgz
  • 설치 작업 경로 생성 및 파일 다운로드
1
# Deployment 다운로드 파일 위치 경로 생성
2
$ mkdir -p ~/workspace/paasta-5.0/deployment/service-deployment
3
4
# Deployment 다운로드(paasta-app-lifecycle-service) 및 파일 경로 확인
5
$ ls ~/workspace/paasta-5.0/deployment/service-deployment/paasta-app-lifecycle-service
6
README.md deploy-paasta-app-lifecycle-service.sh manifests
7
8
# 릴리즈 다운로드 파일 위치 경로 생성
9
$ mkdir -p ~/workspace/paasta-5.0/release/service
10
11
# 릴리즈 파일 다운로드(paasta-app-lifecycle-service-release.tgz) 및 파일 경로 확인
12
$ ls ~/workspace/paasta-5.0/release/service
13
paasta-app-lifecycle-service-release.tgz
Copied!

2.1.2 Stemcell 다운로드

라이프사이클 관리 서비스 설치에 필요한 Stemcell을 확인하여 존재하지 않을 경우 BOSH 설치 가이드 문서를 참고 하여 Stemcell을 업로드 한다. (라이프사이클 관리 서비스는 Stemcell ubuntu-xenial 315.64 버전을 사용, PaaSTA-Stemcell.zip)
1
# Stemcell 목록 확인
2
$ bosh -e micro-bosh stemcells
3
Using environment '10.0.1.6' as client 'admin'
4
5
Name Version OS CPI CID
6
bosh-aws-xen-hvm-ubuntu-xenial-go_agent 315.64* ubuntu-xenial - ami-0297ff649e8eea21b
7
8
(*) Currently deployed
9
10
1 stemcells
11
12
Succeeded
Copied!

2.2. 라이프사이클 관리 서비스 릴리즈 업로드

  • 릴리즈 목록을 확인하여 라이프사이클 관리 서비스 릴리즈(paasta-app-lifecycle-service)가 업로드 되어 있지 않은 것을 확인한다.
1
# 릴리즈 목록 확인 (검색)
2
$ bosh -e micro-bosh releases | grep "app-lifecycle-service"
3
4
# 릴리즈 목록 확인 (전체)
5
$ bosh -e micro-bosh releases
6
Using environment '10.0.1.6' as client 'admin'
7
8
Name Version Commit Hash
9
binary-buildpack 1.0.32* 2399a07
10
bosh-dns 1.12.0* 5d607ed
11
bosh-dns-aliases 0.0.3* eca9c5a
12
bpm 1.1.0* 27e1c8f
13
capi 1.83.0* 6b3cd37
14
15
... ((생략)) ...
16
17
(*) Currently deployed
18
(+) Uncommitted changes
19
20
34 releases
21
22
Succeeded
Copied!
  • 라이프사이클 관리 서비스 릴리즈 파일을 업로드한다.
1
# 릴리즈 파일 업로드
2
$ bosh -e micro-bosh upload-release ~/workspace/paasta-5.0/release/service/paasta-app-lifecycle-service-release.tgz
3
4
Using environment '10.0.1.6' as client 'admin'
5
6
######################################################## 100.00% 143.81 MiB/s 6s
7
Task 103
8
9
Task 103 | 06:11:59 | Extracting release: Extracting release (00:00:06)
10
Task 103 | 06:12:05 | Verifying manifest: Verifying manifest (00:00:00)
11
Task 103 | 06:12:05 | Resolving package dependencies: Resolving package dependencies (00:00:00)
12
Task 103 | 06:12:05 | Creating new packages: app-lifecycle/5180829fda06256327280d717a023e04f6faef97c952cb2b8a7b4c06e5081701 (00:00:01)
13
Task 103 | 06:12:06 | Creating new packages: common/1213e44f16684a87f85f2a1784f1a8bb2b6d4dc8bb8caf8fed62a94c80352a20 (00:00:00)
14
Task 103 | 06:12:06 | Creating new packages: java/9ee03ac5327ece3bc9f8e67dd78abded89b56b1cff6079620b820e88ef336889 (00:00:01)
15
Task 103 | 06:12:07 | Creating new packages: mariadb/5ca7d73845bf5b8047c389bae4eb3bd91217e1a3fa64baacfa183524bbb3c078 (00:00:09)
16
Task 103 | 06:12:16 | Creating new packages: nginx/d4c0e2e80bd94e0d56b6e4479d271216d348a3f84ffb4bf1aeb9636c55d4b307 (00:00:01)
17
Task 103 | 06:12:17 | Creating new packages: service-broker/ae7d27c83e673435e93673d2bff99e648a65fc42df04ec382235ee727e389574 (00:00:01)
18
Task 103 | 06:12:18 | Creating new jobs: app-lifecycle/78d6d7219352458994ed832c91edd63caeb56e77332c21b3a7ca847f00e19f53 (00:00:00)
19
Task 103 | 06:12:18 | Creating new jobs: mariadb/3802b058c761286c27aed724bd371279ae8873714f6cd1e4108b8077047b7d1e (00:00:00)
20
Task 103 | 06:12:18 | Creating new jobs: service-broker/c5d95721ec29a51b242cae2f9753b2853e8b595f9fe229063e895541ba4d2a8e (00:00:00)
21
Task 103 | 06:12:18 | Release has been created: paasta-app-lifecycle-service/1.0 (00:00:00)
22
23
Task 103 Started Thu Nov 7 06:11:59 UTC 2019
24
Task 103 Finished Thu Nov 7 06:12:18 UTC 2019
25
Task 103 Duration 00:00:19
26
Task 103 done
27
28
Succeeded
Copied!
  • 릴리즈 목록을 확인하여 라이프사이클 관리 서비스 릴리즈(paasta-app-lifecycle-service)가 업로드 되어 있는 것을 확인한다.
1
# 릴리즈 목록 확인 (검색)
2
$ bosh -e micro-bosh releases | grep "app-lifecycle-service"
3
paasta-app-lifecycle-service 1.0 81df11b+
4
5
# 릴리즈 목록 확인 (전체)
6
$ bosh -e micro-bosh releases
7
Using environment '10.0.1.6' as client 'admin'
8
9
Name Version Commit Hash
10
binary-buildpack 1.0.32* 2399a07
11
bosh-dns 1.12.0* 5d607ed
12
bosh-dns-aliases 0.0.3* eca9c5a
13
bpm 1.1.0* 27e1c8f
14
capi 1.83.0* 6b3cd37
15
cf-cli 1.16.0* 05d9348
16
paasta-app-lifecycle-service 1.0 81df11b+
17
18
... ((생략)) ...
19
20
(*) Currently deployed
21
(+) Uncommitted changes
22
23
35 releases
24
25
Succeeded
Copied!

2.3. 라이프사이클 관리 서비스 Deployment 파일 수정 및 배포

BOSH Deployment manifest는 Components 요소 및 배포의 속성을 정의한 YAML 파일이다. Deployment 파일에서 사용하는 network, vm_type, disk_type 등은 Cloud config를 활용하고, 활용 방법은 BOSH 2.0 가이드를 참고한다.
  • Cloud config 설정 내용을 확인한다.
1
# Cloud config 조회
2
$ bosh -e micro-bosh cloud-config
3
Using environment '10.0.1.6' as client 'admin'
4
5
azs:
6
- cloud_properties:
7
availability_zone: ap-northeast-2a
8
name: z1
9
- cloud_properties:
10
availability_zone: ap-northeast-2a
11
name: z2
12
13
... ((생략)) ...
14
15
- cloud_properties:
16
availability_zone: ap-northeast-2a
17
name: z7
18
compilation:
19
az: z4
20
network: default
21
reuse_compilation_vms: true
22
vm_type: xlarge
23
workers: 5
24
disk_types:
25
- disk_size: 1024
26
name: default
27
28
... ((생략)) ...
29
30
- cloud_properties:
31
type: gp2
32
disk_size: 500000
33
name: 50GB_GP2
34
networks:
35
- name: default
36
subnets:
37
- az: z1
38
cloud_properties:
39
security_groups: paasta-security-group
40
subnet: subnet-00000000000000000
41
dns:
42
- 8.8.8.8
43
gateway: 10.0.1.1
44
range: 10.0.1.0/24
45
reserved:
46
- 10.0.1.2 - 10.0.1.9
47
static:
48
- 10.0.1.10 - 10.0.1.120
49
50
... ((생략)) ...
51
52
- cloud_properties:
53
ephemeral_dist:
54
size: 4096
55
type: gp2
56
instance_type: t2.small
57
name: caas_small
58
- cloud_properties:
59
ephemeral_dist:
60
size: 30000
61
type: gp2
62
instance_type: m4.xlarge
63
name: caas_small_highmem
64
65
Succeeded
Copied!
  • Deployment YAML에서 사용하는 변수들을 서버 환경에 맞게 수정한다.
1
# 변수 설정
2
$ vi ~/workspace/paasta-5.0/deployment/service-deployment/paasta-app-lifecycle-service/manifests/vars.yml
3
4
# RELEASE
5
service_release_name: "paasta-app-lifecycle-service" # release name
6
service_release_version: "1.0" # release version
7
8
# STEMCELL
9
stemcell_os: "ubuntu-xenial" # stemcell os
10
stemcell_version: "315.64" # stemcell version
11
12
# VM_TYPE
13
vm_type_default: "medium" # vm type default
14
vm_type_highmem: "small-highmem-16GB" # vm type highmemory
15
16
# NETWORK
17
private_networks_name: "service_private" # private network name
18
public_networks_name: "service_public" # public network name :: The public network name can only use "vip" or "service_public".
19
#private_nat_networks_name: "service_private" # AWS의 경우, NATS Network Name
20
21
# MARIA_DB
22
mariadb_azs: [z3] # mariadb : azs
23
mariadb_instances: 1 # mariadb : instances (1)
24
mariadb_persistent_disk_type: "10GB" # mariadb : persistent_disk_type
25
mariadb_port: "<MARIADB_PORT>" # mariadb : database port (e.g. 3306)
26
mariadb_admin_password: "<MARIADB_ADMIN_PASSWORD>" # mariadb : database admin password (e.g. "paas-ta!admin")
27
mariadb_broker_username: "<MARIADB_BROKER_USERNAME>" # mariadb : service-broker-user id (e.g. "applifecycle")
28
mariadb_broker_password: "<MARIADB_BROKER_PASSWORD>" # mariadb : service-broker-user password (e.g. "broker!admin")
29
30
# SERVICE-BROKER
31
broker_azs: [z3] # service-broker : azs
32
broker_instances: 1 # service-broker : instances (1)
33
broker_port: "<SERVICE_BROKER_PORT>" # service-broker : broker port (e.g. "8080")
34
broker_logging_level_broker: "INFO" # service-broker : broker logging level
35
broker_logging_level_hibernate: "INFO" # service-broker : hibernate logging level
36
broker_services_id: "<SERVICE_BROKER_SERVICES_GUID>" # service-broker : service guid (e.g. "b988f110-2bc3-46ce-8e55-9b8d50e529d4")
37
broker_services_plans_id: "<SERVICE_BROKER_SERVICES_PLANS_GUID>" # service-broker : service plan id (e.g. "6eb97b3e-91db-4880-ad8a-503003e8e7dd")
38
bosh_client_id: "<BOSH_CLIENT_ID>" # service-broker : bosh client id
39
bosh_client_secret: "<BOSH_CLIENT_SECRET>" # service-broker : bosh client secret
40
bosh_url: "<BOSH_URL>" # service-broker : bosh url (e.g. https://00.000.0.0:25555)
41
bosh_oauth_url: "<BOSH_OAUTH_URL>" # service-broker : bosh oauth url (e.g. https://00.000.0.0:8443)
42
43
# APP-LIFECYCLE
44
app_lifecycle_azs: [z3] # app-lifecycle : azs
45
app_lifecycle_instances: 2 # app-lifecycle : instances (N)
46
app_lifecycle_persistent_disk_type: "20GB" # app-lifecycle : persistent_disk_type
47
app_lifecycle_public_ips: "<APP_LIFECYCLE_PUBLIC_IPS>" # app-lifecycle : public ips (e.g. ["00.00.00.00" , "11.11.11.11"])
48
app_lifecycle_admin_password: "<APP_LIFECYCLE_ADMIN_PASSWORD>" # app-lifecycle : app-lifecycle super admin password (e.g. "admin!super")
49
app_lifecycle_serviceadmin_password: "<APP_LIFECYCLE_SERVICEADMIN_INIT_PASSWORD>" # app-lifecycle : app-lifecycle serviceadmin user init password (e.g. "Service!admin")
Copied!
  • Deploy 스크립트 파일을 서버 환경에 맞게 수정한다.
    = vSphere : -o manifests/ops-files/vsphere-network.yml
    = AWS : -o manifests/ops-files/aws-network.yml
    = OpenStack : -o manifests/ops-files/openstack-network.yml
    = Azure : -o manifests/ops-files/azure-network.yml
    = GCP : -o manifests/ops-files/gcp-network.yml
1
# Deploy 스크립트 수정
2
$ vi ~/workspace/paasta-5.0/deployment/service-deployment/paasta-app-lifecycle-service/deploy-paasta-app-lifecycle-service.sh
3
4
#!/bin/bash
5
6
# VARIABLES
7
DEPLOYMENT_NAME="paasta-app-lifecycle-service"
8
BOSH2_NAME="micro-bosh"
9
10
# DEPLOY
11
bosh -e ${BOSH2_NAME} -n -d ${DEPLOYMENT_NAME} deploy --no-redact manifests/${DEPLOYMENT_NAME}.yml \
12
-o manifests/ops-files/vsphere-network.yml \
13
-l manifests/vars.yml \
14
-v deployment_name=${DEPLOYMENT_NAME}
Copied!
  • 라이프사이클 관리 서비스를 배포한다.
1
# 라이프사이클 관리 서비스 Deploy (e.g AWS)
2
$ cd ~/workspace/paasta-5.0/deployment/service-deployment/paasta-app-lifecycle-service
3
$ sh ./deploy-paasta-app-lifecycle-service.sh
4
5
Using environment '10.0.1.6' as client 'admin'
6
7
Using deployment 'paasta-app-lifecycle-service'
8
9
+ azs:
10
+ - cloud_properties:
11
+ availability_zone: ap-northeast-2a
12
+ name: z1
13
+ - cloud_properties:
14
+ availability_zone: ap-northeast-2a
15
+ name: z2
16
+ - cloud_properties:
17
+ availability_zone: ap-northeast-2a
18
+ name: z3
19
+ - cloud_properties:
20
+ availability_zone: ap-northeast-2a
21
+ name: z4
22
+ - cloud_properties:
23
+ availability_zone: ap-northeast-2a
24
+ name: z5
25
+ - cloud_properties:
26
+ availability_zone: ap-northeast-2a
27
+ name: z6
28
+ - cloud_properties:
29
+ availability_zone: ap-northeast-2a
30
+ name: z7
31
32
... ((생략)) ...
33
34
+ - cloud_properties:
35
+ type: gp2
36
+ disk_size: 500000
37
+ name: 50GB_GP2
38
39
+ stemcells:
40
+ - alias: default
41
+ os: ubuntu-xenial
42
+ version: '315.64'
43
44
+ releases:
45
+ - name: paasta-app-lifecycle-service
46
+ version: '1.0'
47
48
+ update:
49
+ canaries: 1
50
+ canary_watch_time: 30000-600000
51
+ max_in_flight: 1
52
+ serial: true
53
+ update_watch_time: 10000-600000
54
55
... ((생략)) ...
56
57
+ instance_groups:
58
+ - azs:
59
+ - z3
60
+ instances: 1
61
+ jobs:
62
+ - name: mariadb
63
+ properties:
64
+ database:
65
+ admin_password: "<redacted>"
66
+ broker:
67
+ password: "<redacted>"
68
+ username: "<redacted>"
69
+ port: "<redacted>"
70
+ release: paasta-app-lifecycle-service
71
+ name: mariadb
72
+ networks:
73
+ - name: default
74
+ persistent_disk_type: 10GB
75
+ stemcell: default
76
+ update:
77
+ max_in_flight: 1
78
+ vm_type: medium
79
+ - azs:
80
+ - z3
81
+ instances: 1
82
+ jobs:
83
+ - name: service-broker
84
+ properties:
85
+ bosh:
86
+ client:
87
+ id: "<redacted>"
88
+ secret: "<redacted>"
89
+ deployment_name: "<redacted>"
90
+ oauth_url: "<redacted>"
91
+ url: "<redacted>"
92
+ logging:
93
+ level_broker: "<redacted>"
94
+ level_hibernate: "<redacted>"
95
+ port: "<redacted>"
96
+ service:
97
+ init_password: "<redacted>"
98
+ services:
99
+ id: "<redacted>"
100
+ plans:
101
+ id: "<redacted>"
102
+ release: paasta-app-lifecycle-service
103
+ name: service-broker
104
+ networks:
105
+ - name: default
106
+ stemcell: default
107
+ update:
108
+ max_in_flight: 1
109
+ vm_type: medium
110
+ - azs:
111
+ - z7
112
+ instances: 2
113
+ jobs:
114
+ - name: app-lifecycle
115
+ properties:
116
+ service:
117
+ admin_password: "<redacted>"
118
+ init_password: "<redacted>"
119
+ release: paasta-app-lifecycle-service
120
+ name: app-lifecycle
121
+ networks:
122
+ - default:
123
+ - dns
124
+ - gateway
125
+ name: default
126
+ - name: vip
127
+ static_ips:
128
+ - 13.124.4.62
129
+ - 52.78.10.153
130
+ persistent_disk_type: 20GB
131
+ stemcell: default
132
+ update:
133
+ max_in_flight: 1
134
+ vm_type: medium
135
136
+ name: paasta-app-lifecycle-service
137
Task 104
138
139
Task 104 | 06:40:27 | Preparing deployment: Preparing deployment (00:00:02)
140
Task 104 | 06:40:29 | Preparing deployment: Rendering templates (00:00:01)
141
Task 104 | 06:40:30 | Preparing package compilation: Finding packages to compile (00:00:00)
142
Task 104 | 06:40:30 | Compiling packages: app-lifecycle/5180829fda06256327280d717a023e04f6faef97c952cb2b8a7b4c06e5081701
143
Task 104 | 06:40:30 | Compiling packages: nginx/d4c0e2e80bd94e0d56b6e4479d271216d348a3f84ffb4bf1aeb9636c55d4b307
144
Task 104 | 06:40:30 | Compiling packages: java/9ee03ac5327ece3bc9f8e67dd78abded89b56b1cff6079620b820e88ef336889
145
Task 104 | 06:40:30 | Compiling packages: service-broker/ae7d27c83e673435e93673d2bff99e648a65fc42df04ec382235ee727e389574
146
Task 104 | 06:40:30 | Compiling packages: mariadb/5ca7d73845bf5b8047c389bae4eb3bd91217e1a3fa64baacfa183524bbb3c078
147
Task 104 | 06:41:46 | Compiling packages: service-broker/ae7d27c83e673435e93673d2bff99e648a65fc42df04ec382235ee727e389574 (00:01:16)
148
Task 104 | 06:41:46 | Compiling packages: common/1213e44f16684a87f85f2a1784f1a8bb2b6d4dc8bb8caf8fed62a94c80352a20
149
Task 104 | 06:41:49 | Compiling packages: java/9ee03ac5327ece3bc9f8e67dd78abded89b56b1cff6079620b820e88ef336889 (00:01:19)
150
Task 104 | 06:41:51 | Compiling packages: common/1213e44f16684a87f85f2a1784f1a8bb2b6d4dc8bb8caf8fed62a94c80352a20 (00:00:05)
151
Task 104 | 06:41:52 | Compiling packages: app-lifecycle/5180829fda06256327280d717a023e04f6faef97c952cb2b8a7b4c06e5081701 (00:01:22)
152
Task 104 | 06:42:05 | Compiling packages: nginx/d4c0e2e80bd94e0d56b6e4479d271216d348a3f84ffb4bf1aeb9636c55d4b307 (00:01:35)
153
Task 104 | 06:44:53 | Compiling packages: mariadb/5ca7d73845bf5b8047c389bae4eb3bd91217e1a3fa64baacfa183524bbb3c078 (00:04:23)
154
Task 104 | 06:45:30 | Creating missing vms: app-lifecycle/4a4e1dc8-7214-46ca-9d3a-4254cb784e6f (0)
155
Task 104 | 06:45:30 | Creating missing vms: service-broker/3307c237-d9a9-4885-ae78-007db70a0e22 (0)
156
Task 104 | 06:45:30 | Creating missing vms: mariadb/e859e63c-4358-4ef7-bbeb-93fa19be7baf (0)
157
Task 104 | 06:45:30 | Creating missing vms: app-lifecycle/a066d71a-0c93-48e3-bddc-0e6dadb1ffcd (1)
158
Task 104 | 06:46:34 | Creating missing vms: service-broker/3307c237-d9a9-4885-ae78-007db70a0e22 (0) (00:01:04)
159
Task 104 | 06:46:34 | Creating missing vms: app-lifecycle/a066d71a-0c93-48e3-bddc-0e6dadb1ffcd (1) (00:01:04)
160
Task 104 | 06:46:37 | Creating missing vms: app-lifecycle/4a4e1dc8-7214-46ca-9d3a-4254cb784e6f (0) (00:01:07)
161
Task 104 | 06:46:39 | Creating missing vms: mariadb/e859e63c-4358-4ef7-bbeb-93fa19be7baf (0) (00:01:09)
162
Task 104 | 06:46:39 | Updating instance mariadb: mariadb/e859e63c-4358-4ef7-bbeb-93fa19be7baf (0) (canary) (00:02:22)
163
Task 104 | 06:49:01 | Updating instance service-broker: service-broker/3307c237-d9a9-4885-ae78-007db70a0e22 (0) (canary) (00:00:42)
164
Task 104 | 06:49:43 | Updating instance app-lifecycle: app-lifecycle/4a4e1dc8-7214-46ca-9d3a-4254cb784e6f (0) (canary) (00:06:24)
165
Task 104 | 06:56:07 | Updating instance app-lifecycle: app-lifecycle/a066d71a-0c93-48e3-bddc-0e6dadb1ffcd (1) (00:06:04)
166
167
Task 104 Started Thu Nov 7 06:40:27 UTC 2019
168
Task 104 Finished Thu Nov 7 07:02:11 UTC 2019
169
Task 104 Duration 00:21:44
170
Task 104 done
171
172
Succeeded
Copied!
  • 배포된 라이프사이클 관리 서비스를 확인한다.
1
$ bosh -e micro-bosh -d paasta-app-lifecycle-service vms
2
3
Using environment '10.0.1.6' as client 'admin'
4
5
Task 108. Done
6
7
Deployment 'paasta-app-lifecycle-service'
8
9
Instance Process State AZ IPs VM CID VM Type Active
10
app-lifecycle/4a4e1dc8-7214-46ca-9d3a-4254cb784e6f running z7 10.0.0.122 i-08fdee7878ea1fd77 medium true
11
13.124.4.62
12
app-lifecycle/a066d71a-0c93-48e3-bddc-0e6dadb1ffcd running z7 10.0.0.123 i-044fcd1932afeda19 medium true
13
52.78.10.153
14
mariadb/e859e63c-4358-4ef7-bbeb-93fa19be7baf running z3 10.0.81.122 i-0091a0c9848be5277 medium true
15
service-broker/3307c237-d9a9-4885-ae78-007db70a0e22 running z3 10.0.81.123 i-00c9496182c78d040 medium true
16
17
4 vms
18
19
Succeeded
Copied!

2.4. 라이프사이클 관리 서비스 브로커 등록

라이프사이클 관리 서비스의 배포가 완료 되면, PaaS-TA 포탈에서 서비스를 사용하기 위해 라이프사이클 관리 서비스 브로커를 등록해 주어야 한다. 서비스 브로커 등록 시에는 개방형 클라우드 플랫폼에서 서비스 브로커를 등록 할 수 있는 권한을 가진 사용자로 로그인 되어 있어야 한다.
  • 서비스 브로커 목록을 확인한다
    $ cf service-brokers
    1
    Getting service brokers as admin...
    2
    3
    name url
    4
    No service brokers found
    Copied!
  • 라이프사이클 관리 서비스 브로커를 등록한다.
    $ cf create-service-broker [SERVICE_BROKER] [USERNAME] [PASSWORD] [SERVICE_BROKER_URL]
    • [SERVICE_BROKER] : 서비스 브로커 명
    • [USERNAME] / [PASSWORD] : 서비스 브로커에 접근할 수 있는 사용자 ID / PASSWORD
    • [SERVICE_BROKER_URL] : 서비스 브로커 접근 URL
    1
    ### e.g. 라이프사이클 관리 서비스 브로커 등록
    2
    $ cf create-service-broker app-lifecycle-service-broker admin cloudfoundry http://10.0.81.123:8081
    3
    Creating service broker app-lifecycle-service-broker as admin...
    4
    OK
    Copied!
  • 등록된 라이프사이클 관리 서비스 브로커를 확인한다.
    $ cf service-brokers
    1
    Getting service brokers as admin...
    2
    3
    name url
    4
    app-lifecycle-service-broker http://10.0.81.123:8081
    Copied!
  • 라이프사이클 관리 서비스의 서비스 접근 정보를 확인한다.
    $ cf service-access -b app-lifecycle-service-broker
    1
    Getting service access for broker app-lifecycle-service-broker as admin...
    2
    broker: app-lifecycle-service-broker
    3
    service plan access orgs
    4
    app-lifecycle dedicated-vm none
    Copied!
  • 라이프사이클 관리 서비스의 서비스 접근 허용을 설정(전체)하고 서비스 접근 정보를 재확인 한다.
    $ cf enable-service-access app-lifecycle $ cf service-access -b app-lifecycle-service-broker
1
$ cf enable-service-access app-lifecycle
2
Enabling access to all plans of service app-lifecycle for all orgs as admin...
3
OK
4
5
$ cf service-access -b app-lifecycle-service-broker
6
Getting service access for broker app-lifecycle-service-broker as admin...
7
broker: app-lifecycle-service-broker
8
service plan access orgs
9
app-lifecycle dedicated-vm all
Copied!

3. 라이프사이클 관리 서비스 관리 및 신청

PaaS-TA 운영자 포탈을 통해 라이프사이클 관리 서비스를 등록 및 공개하면, PaaS-TA 사용자 포탈을 통해 서비스를 신청 하여 사용할 수 있다.

3.1. PaaS-TA 운영자 포탈 - 라이프사이클 관리 서비스 등록

  • PaaS-TA 운영자 포탈에 접속하여 라이프사이클 관리 서비스를 등록한다.
※ 운영관리 > 카탈로그 > 앱서비스 등록
  • 이름 : 라이프사이클 관리 서비스
  • 분류 : 개발 지원 도구
  • 서비스 : app-lifecycle
  • 썸네일 : [라이프사이클 관리 서비스 썸네일]
  • 서비스 생성 파라미터 : password / 패스워드
  • 앱 바인드 사용 : N
  • 공개 : Y
  • 대시보드 사용 : Y
  • 온디멘드 : N
  • 태그 : paasta / tag1, free / tag2
  • 요약 : 라이프사이클 관리 서비스
  • 설명 : 체계적인 Agile 개발 지원과 프로젝트 협업에 필요한 커뮤니케이션 중심의 문서 및 지식 공유 지원 기능을 제공하는 TAIGA를 dedicated 방식으로 제공합니다. 서비스 관리자 계정은 serviceadmin/<서비스 신청 시 입력한 Password> 입니다.

3.2. PaaS-TA 사용자 포탈 - 라이프사이클 관리 서비스 신청

  • PaaS-TA 사용자 포탈에 접속하여, 카탈로그를 통해 라이프사이클 관리 서비스를 신청한다.
Could not load image
  • 대시보드 URL을 통해 서비스에 접근한다. (서비스의 관리자 계정은 serviceadmin/[서비스 신청시 입력받은 패스워드])
Could not load image
라이프사이클 관리 서비스 대시보드
Last modified 1yr ago