PaaS-TA-5.5.0
Search…
PaaS-TA 포털 API(VM Type)설치 가이드

Table of Contents

1. 문서 개요

1.1. 목적

본 문서(PaaS-TA Portal Release 설치 가이드)는 전자정부표준프레임워크 기반의 PaaS-TA에서 제공되는 PaaS-TA Portal Release를 Bosh2.0을 이용하여 설치 하는 방법을 기술하였다. PaaS-TA 3.5 버전부터는 Bosh2.0 기반으로 deploy를 진행하며 내부 네트워크는 link를 적용시켜 자동으로 Ip가 할당이 된다. 기존 Bosh1.0 기반으로 설치를 원할경우에는 PaaS-TA 3.1 이하 버전의 문서를 참고한다.

1.2. 범위

설치 범위는 PaaS-TA Portal Release를 검증하기 위한 기본 설치를 기준으로 작성하였다.

1.3. 시스템 구성도

본 문서의 설치된 시스템 구성도이다. Binary Storage, Mariadb, Proxy, Gateway Api, Registration Api, Portal Api, Common Api, Log Api, Storage Api, Webadmin, Webuser로 최소사항을 구성하였다.
  • Paas-TA Portal 설치할때 cloud config에 추가적으로 정의한 VM_Tpye명과 스펙
VM_Type
스펙
portal_tiny
1vCPU / 256MB RAM / 4GB Disk
portal_medium
1vCPU / 1GB RAM / 4GB Disk
portal_small
1vCPU / 512MB RAM / 4GB Disk
  • Paas-TA Portal각 Instance의 Resource Pool과 스펙
구분
Resource Pool
스펙
binary_storage
portal_small
1vCPU / 512MB RAM / 4GB Disk 10GB(영구적 Disk)
haproxy
portal_small
1vCPU / 512MB RAM / 4GB Disk
mariadb
portal_small
1vCPU / 512MB RAM / 4GB Disk +10GB(영구적 Disk)
paas-ta-portal-registration
portal_small
1vCPU / 512MB RAM / 4GB Disk
paas-ta-portal-gateway
portal_small
1vCPU / 512MB RAM / 4GB Disk
paas-ta-portal-api
portal_medium
1vCPU / 1GB RAM / 4GB Disk
paas-ta-portal-common-api
portal_small
1vCPU / 512MB RAM / 4GB Disk
paas-ta-portal-log-api
portal_small
1vCPU / 512MB RAM / 4GB Disk
paas-ta-portal-storage-api
portal_small
1vCPU / 512MB RAM / 4GB Disk

1.4. 참고자료

2. PaaS-TA Portal 설치

2.1. Prerequisite

본 설치 가이드는 Linux 환경에서 설치하는 것을 기준으로 하였다. 서비스팩 설치를 위해서는 먼저 BOSH CLI v2 가 설치 되어 있어야 하고 BOSH 에 로그인이 되어 있어야 한다. BOSH CLI v2 가 설치 되어 있지 않을 경우 먼저 BOSH2.0 설치 가이드 문서를 참고 하여 BOSH CLI v2를 설치를 하고 사용법을 숙지 해야 한다.

2.2. Stemcell 확인

Stemcell 목록을 확인하여 서비스 설치에 필요한 Stemcell이 업로드 되어 있는 것을 확인한다. (PaaS-TA 5.5.1 과 동일 stemcell 사용)
$ bosh -e ${BOSH_ENVIRONMENT} stemcells
1
Using environment '10.0.1.6' as client 'admin'
2
3
Name Version OS CPI CID
4
bosh-aws-xen-hvm-ubuntu-xenial-go_agent 621.94* ubuntu-xenial - ami-0297ff649e8eea21b
5
6
(*) Currently deployed
7
8
1 stemcells
9
10
Succeeded
Copied!

2.3. Deployment 다운로드

서비스 설치에 필요한 Deployment를 Git Repository에서 받아 서비스 설치 작업 경로로 위치시킨다.
1
# Deployment 다운로드 파일 위치 경로 생성 및 설치 경로 이동
2
$ mkdir -p ~/workspace/paasta-5.5.1/deployment
3
$ cd ~/workspace/paasta-5.5.1/deployment
4
5
# Deployment 파일 다운로드
6
$ git clone https://github.com/PaaS-TA/portal-deployment.git -b v5.1.1
Copied!

2.4. Deployment 파일 수정

BOSH Deployment manifest는 Components 요소 및 배포의 속성을 정의한 YAML 파일이다. Deployment 파일에서 사용하는 network, vm_type, disk_type 등은 Cloud config를 활용하고, 활용 방법은 BOSH 2.0 가이드를 참고한다.
  • Cloud config 설정 내용을 확인한다.
$ bosh -e ${BOSH_ENVIRONMENT} cloud-config
1
Using environment '10.0.1.6' as client 'admin'
2
3
azs:
4
- cloud_properties:
5
availability_zone: ap-northeast-2a
6
name: z1
7
- cloud_properties:
8
availability_zone: ap-northeast-2a
9
name: z2
10
11
... ((생략)) ...
12
13
disk_types:
14
- disk_size: 1024
15
name: default
16
- disk_size: 1024
17
name: 1GB
18
19
... ((생략)) ...
20
21
networks:
22
- name: default
23
subnets:
24
- az: z1
25
cloud_properties:
26
security_groups: paasta-security-group
27
subnet: subnet-00000000000000000
28
dns:
29
- 8.8.8.8
30
gateway: 10.0.1.1
31
range: 10.0.1.0/24
32
reserved:
33
- 10.0.1.2 - 10.0.1.9
34
static:
35
- 10.0.1.10 - 10.0.1.120
36
37
... ((생략)) ...
38
39
vm_types:
40
- cloud_properties:
41
ephemeral_disk:
42
size: 3000
43
type: gp2
44
instance_type: t2.small
45
name: minimal
46
- cloud_properties:
47
ephemeral_disk:
48
size: 10000
49
type: gp2
50
instance_type: t2.small
51
name: small
52
53
... ((생략)) ...
54
55
Succeeded
Copied!
  • common_vars.yml을 서버 환경에 맞게 수정한다.
  • Portal-API에서 사용하는 변수는 system_domain, paasta_admin_username, paasta_admin_password, paasta_database_ips, paasta_database_port, paasta_database_type, paasta_database_driver_class, paasta_cc_db_id, paasta_cc_db_password, paasta_uaa_db_id, paasta_uaa_db_password, uaa_client_admin_id, uaa_client_admin_secret, monitoring_api_url, portal_web_user_url이다.
$ vi ~/workspace/paasta-5.5.1/deployment/common/common_vars.yml
1
# BOSH INFO
2
bosh_ip: "10.0.1.6" # BOSH IP
3
bosh_url: "https://10.0.1.6" # BOSH URL (e.g. "https://00.000.0.0")
4
bosh_client_admin_id: "admin" # BOSH Client Admin ID
5
bosh_client_admin_secret: "ert7na4jpew" # BOSH Client Admin Secret('echo $(bosh int ~/workspace/paasta-5.5.1/deployment/paasta-deployment/bosh/{iaas}/creds.yml --path /admin_password)' 명령어를 통해 확인 가능)
6
bosh_director_port: 25555 # BOSH director port
7
bosh_oauth_port: 8443 # BOSH oauth port
8
bosh_version: 271.2 # BOSH version('bosh env' 명령어를 통해 확인 가능, on-demand service용, e.g. "271.2")
9
10
# PAAS-TA INFO
11
system_domain: "61.252.53.246.xip.io" # Domain (xip.io를 사용하는 경우 HAProxy Public IP와 동일)
12
paasta_admin_username: "admin" # PaaS-TA Admin Username
13
paasta_admin_password: "admin" # PaaS-TA Admin Password
14
paasta_nats_ip: "10.0.1.121"
15
paasta_nats_port: 4222
16
paasta_nats_user: "nats"
17
paasta_nats_password: "7EZB5ZkMLMqT7" # PaaS-TA Nats Password (CredHub 로그인후 'credhub get -n /micro-bosh/paasta/nats_password' 명령어를 통해 확인 가능)
18
paasta_nats_private_networks_name: "default" # PaaS-TA Nats 의 Network 이름
19
paasta_database_ips: "10.0.1.123" # PaaS-TA Database IP (e.g. "10.0.1.123")
20
paasta_database_port: 5524 # PaaS-TA Database Port (e.g. 5524(postgresql)/13307(mysql)) -- Do Not Use "3306"&"13306" in mysql
21
paasta_database_type: "postgresql" # PaaS-TA Database Type (e.g. "postgresql" or "mysql")
22
paasta_database_driver_class: "org.postgresql.Driver" # PaaS-TA Database driver-class (e.g. "org.postgresql.Driver" or "com.mysql.jdbc.Driver")
23
paasta_cc_db_id: "cloud_controller" # CCDB ID (e.g. "cloud_controller")
24
paasta_cc_db_password: "cc_admin" # CCDB Password (e.g. "cc_admin")
25
paasta_uaa_db_id: "uaa" # UAADB ID (e.g. "uaa")
26
paasta_uaa_db_password: "uaa_admin" # UAADB Password (e.g. "uaa_admin")
27
paasta_api_version: "v3"
28
29
# UAAC INFO
30
uaa_client_admin_id: "admin" # UAAC Admin Client Admin ID
31
uaa_client_admin_secret: "admin-secret" # UAAC Admin Client에 접근하기 위한 Secret 변수
32
uaa_client_portal_secret: "clientsecret" # UAAC Portal Client에 접근하기 위한 Secret 변수
33
34
# Monitoring INFO
35
metric_url: "10.0.161.101" # Monitoring InfluxDB IP
36
syslog_address: "10.0.121.100" # Logsearch의 ls-router IP
37
syslog_port: "2514" # Logsearch의 ls-router Port
38
syslog_transport: "relp" # Logsearch Protocol
39
saas_monitoring_url: "61.252.53.248" # Pinpoint HAProxy WEBUI의 Public IP
40
monitoring_api_url: "61.252.53.241" # Monitoring-WEB의 Public IP
41
42
### Portal INFO
43
portal_web_user_ip: "52.78.88.252"
44
portal_web_user_url: "http://portal-web-user.52.78.88.252.xip.io"
45
46
### ETC INFO
47
abacus_url: "http://abacus.61.252.53.248.xip.io" # abacus url (e.g. "http://abacus.xxx.xxx.xxx.xxx.xip.io")
Copied!
  • Deployment YAML에서 사용하는 변수 파일을 서버 환경에 맞게 수정한다.
$ vi ~/workspace/paasta-5.5.1/deployment/portal-deployment/portal-api/vars.yml
1
# STEMCELL INFO
2
stemcell_os: "ubuntu-xenial" # stemcell os
3
stemcell_version: "621.94" # stemcell version
4
5
# NETWORKS INFO
6
private_networks_name: "default" # private network name
7
public_networks_name: "vip" # public network name
8
9
# MARIADB INFO
10
mariadb_azs: [z6] # mariadb : azs
11
mariadb_instances: 1 # mariadb : instances (1)
12
mariadb_vm_type: "minimal" # mariadb : vm type
13
mariadb_persistent_disk_type: "10GB" # mariadb : persistent disk type
14
mariadb_port: "<MARIADB_PORT>" # mariadb : database port (e.g. 13306) -- Do Not Use "3306"
15
mariadb_admin_password: "<MARIADB_ADMIN_PASSWORD>" # mariadb : database admin password (e.g. "[email protected]")
16
17
# HAPROXY INFO
18
haproxy_azs: [z7] # haproxy : azs
19
haproxy_instances: 1 # haproxy : instances (1)
20
haproxy_vm_type: "small" # haproxy : vm type
21
haproxy_public_ips: "<HAPROXY_PUBLIC_IPS>" # haproxy : public ips (e.g. "00.00.00.00")
22
haproxy_infra_admin: false # haproxy : infra admin (default "false")
23
24
# BINARY_STORAGE INFO
25
binary_storage_azs: [z6] # binary storage : azs
26
binary_storage_instances: 1 # binary storage : instances (1)
27
binary_storage_vm_type: "minimal" # binary storage : vm type
28
binary_storage_persistent_disk_type: "10GB" # binary storage : persistent disk type
29
binary_storage_auth_port: "<BINARY_STORAGE_AUTH_PORT>" # binary storage : keystone port (e.g. 15001) -- Do Not Use "5000"
30
binary_storage_username: "<BINARY_STORAGE_USERNAME>" # binary storage : username (e.g. "paasta-portal")
31
binary_storage_password: "<BINARY_STORAGE_PASSWORD>" # binary storage : password (e.g. "paasta")
32
binary_storage_tenantname: "<BINARY_STORAGE_TENANTNAME>" # binary storage : tenantname (e.g. "paasta-portal")
33
binary_storage_email: "<BINARY_STORAGE_EMAIL>" # binary storage : email (e.g. "[email protected]")
34
35
# PORTAL_GATEWAY INFO
36
gateway_azs: [z6] # gateway : azs
37
gateway_instances: 1 # gateway : instances (1)
38
gateway_vm_type: "small" # gateway : vm type
39
40
# PORTAL_REGISTRATION INFO
41
registration_azs: [z6] # registration : azs
42
registration_instances: 1 # registration : instances (1)
43
registration_vm_type: "small" # registration : vm type
44
registration_infra_admin: false # registration : infra admin (default "false")
45
46
# PORTAL_API INFO
47
api_azs: [z6] # portal-api : azs
48
api_instances: 1 # portal-api : instances (1)
49
api_vm_type: "minimal" # portal-api : vm type
50
api_infra_admin: false # portal-api : infra admin (default "false")
51
52
# PORTAL_COMMON_API INFO
53
common_api_azs: [z6] # portal-common-api : azs
54
common_api_instances: 1 # portal-common-api : instances (1)
55
common_api_vm_type: "small" # portal-common-api : vm type
56
common_api_infra_admin: false # portal-common-api : infra admin (default "false")
57
58
# PORTAL_STORAGE_API INFO
59
storage_api_azs: [z6] # portal-storage-api : azs
60
storage_api_instances: 1 # portal-storage-api : instances (1)
61
storage_api_vm_type: "small" # portal-storage-api : vm type
62
storage_api_infra_admin: false # portal-storage-api : infra admin (default "false")
63
64
# PORTAL_LOG_API INFO
65
log_api_azs: [z6] # portal-log-api : azs
66
log_api_instances: 1 # portal-log-api : instances (1)
67
log_api_vm_type: "small" # portal-log-api : vm type
68
log_api_infra_admin: false # portal-log-api : infra admin (default "false")
69
70
# MAIL_SMTP INFO
71
mail_smtp_host: "<MAIL_SMTP_HOST>" # mail-smtp : host (e.g. "smtp.gmail.com")
72
mail_smtp_port: "<MAIL_SMTP_PORT>" # mail-smtp : port (e.g. "465")
73
mail_smtp_username: "<MAIL_SMTP_USERNAME>" # mail-smtp : user name
74
mail_smtp_password: "<MAIL_SMTP_PASSWORD>" # mail-smtp : password
75
mail_smtp_useremail: "<MAIL_SMTP_USER_EMAIL>" # mail-smtp : user email
76
mail_smtp_properties_auth: "true" # mail-smtp : properties auth
77
mail_smtp_properties_starttls_enable: "true" # mail-smtp : properties starttls enable
78
mail_smtp_properties_starttls_required: "true" # mail-smtp : properties starttls required
79
mail_smtp_properties_subject: "<MAIL_SMTP_PROPERTIES_SUBJECT>" # mail-smtp : properties subject (e.g. "PaaS-TA User Potal")
Copied!

2.5. 서비스 설치

  • 서버 환경에 맞추어 Deploy 스크립트 파일의 VARIABLES 설정을 수정하고, Option file을 추가할지 선택한다.
    (선택) -o operations/use-compiled-releases.yml (ubuntu-xenial/621.94로 컴파일 된 릴리즈 사용)
$ vi ~/workspace/paasta-5.5.1/deployment/portal-deployment/portal-api/deploy.sh
1
#!/bin/bash
2
3
# VARIABLES
4
COMMON_VARS_PATH="<COMMON_VARS_FILE_PATH>" # common_vars.yml File Path (e.g. ../../common/common_vars.yml)
5
CURRENT_IAAS="${CURRENT_IAAS}" # IaaS Information (PaaS-TA에서 제공되는 create-bosh-login.sh 미 사용시 aws/azure/gcp/openstack/vsphere 입력)
6
BOSH_ENVIRONMENT="${BOSH_ENVIRONMENT}" # bosh director alias name (PaaS-TA에서 제공되는 create-bosh-login.sh 미 사용시 bosh envs에서 이름을 확인하여 입력)
7
8
# DEPLOY
9
bosh -e ${BOSH_ENVIRONMENT} -n -d portal-api deploy --no-redact portal-api.yml \
10
-o operations/${CURRENT_IAAS}-network.yml \
11
-l ${COMMON_VARS_PATH} \
12
-l vars.yml
Copied!
  • 서비스를 설치한다.
1
$ cd ~/workspace/paasta-5.5.1/deployment/portal-deployment/portal-api
2
$ sh ./deploy.sh
Copied!

2.6. 서비스 설치 - 다운로드 된 PaaS-TA Release 파일 이용 방식

  • 서비스 설치에 필요한 릴리즈 파일을 다운로드 받아 Local machine의 서비스 설치 작업 경로로 위치시킨다.
  • 설치 릴리즈 파일 다운로드 : paasta-portal-api-release-2.4.0.tgz
1
# 릴리즈 다운로드 파일 위치 경로 생성
2
$ mkdir -p ~/workspace/paasta-5.5.1/release/portal
3
4
# 릴리즈 파일 다운로드 및 파일 경로 확인
5
$ ls ~/workspace/paasta-5.5.1/release/portal
6
paasta-portal-api-release-2.4.0.tgz
Copied!
  • 서버 환경에 맞추어 Deploy 스크립트 파일의 VARIABLES 설정을 수정하고 Option file 및 변수를 추가한다.
    (추가) -o operations/use-offline-releases.yml (미리 다운받은 offline 릴리즈 사용)
    (추가) -v releases_dir=""
$ vi ~/workspace/paasta-5.5.1/deployment/portal-deployment/portal-api/deploy.sh
1
#!/bin/bash
2
3
# VARIABLES
4
COMMON_VARS_PATH="<COMMON_VARS_FILE_PATH>" # common_vars.yml File Path (e.g. ../../common/common_vars.yml)
5
CURRENT_IAAS="${CURRENT_IAAS}" # IaaS Information (PaaS-TA에서 제공되는 create-bosh-login.sh 미 사용시 aws/azure/gcp/openstack/vsphere 입력)
6
BOSH_ENVIRONMENT="${BOSH_ENVIRONMENT}" # bosh director alias name (PaaS-TA에서 제공되는 create-bosh-login.sh 미 사용시 bosh envs에서 이름을 확인하여 입력)
7
8
# DEPLOY
9
bosh -e ${BOSH_ENVIRONMENT} -n -d portal-api deploy --no-redact portal-api.yml \
10
-o operations/use-offline-releases.yml \
11
-o operations/${CURRENT_IAAS}-network.yml \
12
-l ${COMMON_VARS_PATH} \
13
-l vars.yml \
14
-v releases_dir="/home/ubuntu/workspace/paasta-5.5.1/release"
Copied!
  • 서비스를 설치한다.
1
$ cd ~/workspace/paasta-5.5.1/deployment/portal-deployment/portal-api
2
$ sh ./deploy.sh
Copied!

2.7. 서비스 설치 확인

설치 완료된 서비스를 확인한다.
$ bosh -e ${BOSH_ENVIRONMENT} -d portal-api vms
1
Using environment '10.0.1.6' as client 'admin'
2
3
Task 4823. Done
4
5
Deployment 'portal-api'
6
7
Instance Process State AZ IPs VM CID VM Type Active
8
binary_storage/9f58a9b7-2a3d-4ee9-8975-7b04b99c0a21 running z5 10.30.107.212 vm-e65ad396-ce65-4ef0-962d-5c54fa411769 portal_large true
9
haproxy/8cc2d633-2b43-4f3d-a2e8-72f5279c11d5 running z5 10.30.107.213 vm-315bfa1b-9829-46de-a19d-3bd65e9f9ad4 portal_large true
10
115.68.46.214
11
mariadb/117cbf05-b223-4133-bf61-e15f16494e21 running z5 10.30.107.211 vm-bc5ae334-12d4-41d4-8411-d9315a96a305 portal_large true
12
paas-ta-portal-api/48fa0c5a-52eb-4ae8-a7b9-91275615318c running z5 10.30.107.217 vm-9d2a1929-0157-4c77-af5e-707ec496ed87 portal_medium true
13
paas-ta-portal-common-api/060320fa-7f26-4032-a1d9-6a7a41a044a8 running z5 10.30.107.219 vm-f35e9838-74cf-40e0-9f97-894b53a68d1f portal_medium true
14
paas-ta-portal-gateway/6baba810-9a4a-479d-98b2-97e5ba651784 running z5 10.30.107.214 vm-7ec75160-bf34-442e-b755-778ae7dd3fec portal_medium true
15
paas-ta-portal-log-api/a4460008-42b5-4ba0-84ee-fff49fe6c1bd running z5 10.30.107.218 vm-9ec0a1b0-09f6-415b-8e23-53af91fd94b8 portal_medium true
16
paas-ta-portal-registration/3728ed73-451e-4b93-ab9b-c610826c3135 running z5 10.30.107.215 vm-c4020514-c458-41c6-bcbc-7e0ee1bc6f42 portal_small true
17
paas-ta-portal-storage-api/2940366a-8294-4509-a9c0-811c8140663a running z5 10.30.107.220 vm-79ad6ee1-1bb5-4308-8b71-9ed30418e2c1 portal_medium true
18
19
9 vms
20
21
Succeeded
Copied!

3. PaaS-TA Portal 운영

3.1. 사용자의 조직 생성 Flag 활성화

PaaS-TA는 기본적으로 일반 사용자는 조직을 생성할 수 없도록 설정되어 있다. 포털 배포를 위해 조직 및 공간을 생성해야 하고 또 테스트를 구동하기 위해서도 필요하므로 사용자가 조직을 생성할 수 있도록 user_org_creation FLAG를 활성화 한다. FLAG 활성화를 위해서는 PaaS-TA 운영자 계정으로 로그인이 필요하다.
$ cf enable-feature-flag user_org_creation
1
Setting status of user_org_creation as admin...
2
OK
3
4
Feature user_org_creation Enabled.
Copied!

3.2. 사용자포탈 UAA페이지 오류

(1) uaac portalclient가 등록이 되어있지 않다면 해당 화면과 같이 redirect오류가 발생한다.
(2) uaac client add를 통해 potalclient를 추가시켜주어야 한다.
$ uaac target $ uaac token client get Client ID: admin Client secret: *
(3) uaac client add portalclient –s “portalclient Secret”
--redirect_uri "사용자포탈 Url, 사용자포탈 Url/callback" $ uaac client add portalclient -s xxxxx --redirect_uri "http://portal-web-user.xxxx.xip.io, http://portal-web-user.xxxx.xip.io/callback" --scope "cloud_controller_service_permissions.read , openid , cloud_controller.read , cloud_controller.write , cloud_controller.admin" --authorized_grant_types "authorization_code , client_credentials , refresh_token" --authorities="uaa.resource" --autoapprove="openid , cloud_controller_service_permissions.read"
(1) uaac portalclient가 url이 잘못 등록되어있다면 해당 화면과 같이 redirect오류가 발생한다.
(2) uaac client update를 통해 url을 수정해야한다.
$ uaac target $ uaac token client get Client ID: admin Client secret: *
(3) uaac client update portalclient --redirect_uri "사용자포탈 Url, 사용자포탈 Url/callback"
$ uaac client update portalclient --redirect_uri "http://portal-web-user.xxxx.xip.io, http://portal-web-user.xxxx.xip.io/callback"

3.3. 운영자 포탈 유저 페이지 조회 오류

페이지 이동시 정보를 가져오지 못하고 오류가 났을 경우 common-api VM으로 이동후에 DB 정보 config를 수정후 재시작을 해 주어야 한다.

3.4. DB Migration

이전버전에서 사용한 Portal DB를 PaaS-TA 3.5 Portal DB에 마이그레이션 하는 방법을 설명한다.

(1) DB tool을 이용해 기존에 사용한 DB와 Paas-TA 3.5 Portal DB를 연결한다.

  • 가이드의 DB tool을 이용한 마이그레이션 설명은 navicat을 기준으로 한다.

(2) 마이그레이션할 table의 레코드 데이터를 전부 삭제한다.

(3) Tools - Data Transfer를 클릭해서 마이그레이션 설정창을 띄운다.

(4) 마이그레이션할 source DB(기존 DB), target DB(Paas-TA 3.5 Portal DB)를 설정한다.

(5) Option에 들어가 Table Options의 Create tables 옵션에 체크를 해제, Orther Options의 Contiune on error를 체크한 후 next를 누른다.

(6) 데이터를 이동할 테이블을 설정 후 next를 누른다.

(7). 마이그레이션이 정상적으로 완료된 모습

(8) 마이그레이션 오류난 모습

(9) 기존 DB에 오류난 Paas-TA Portal table의 Design에 맞춰 수정후에 다시 마이그레이션을 진행한다.

3.5. Log

Paas-TA Portal 각각 Instance의 log를 확인 할 수 있다.
(1) 로그를 확인할 Instance에 접근한다.
bosh ssh -d [deployment name] [instance name]
1
Instance Process State AZ IPs VM CID VM Type Active
2
binary_storage/9f58a9b7-2a3d-4ee9-8975-7b04b99c0a21 running z5 10.30.107.212 vm-e65ad396-ce65-4ef0-962d-5c54fa411769 portal_large true
3
haproxy/8cc2d633-2b43-4f3d-a2e8-72f5279c11d5 running z5 10.30.107.213 vm-315bfa1b-9829-46de-a19d-3bd65e9f9ad4 portal_large true
4
115.68.46.214
5
mariadb/117cbf05-b223-4133-bf61-e15f16494e21 running z5 10.30.107.211 vm-bc5ae334-12d4-41d4-8411-d9315a96a305 portal_large true
6
paas-ta-portal-api/48fa0c5a-52eb-4ae8-a7b9-91275615318c running z5 10.30.107.217 vm-9d2a1929-0157-4c77-af5e-707ec496ed87 portal_medium true
7
paas-ta-portal-common-api/060320fa-7f26-4032-a1d9-6a7a41a044a8 running z5 10.30.107.219 vm-f35e9838-74cf-40e0-9f97-894b53a68d1f portal_medium true
8
paas-ta-portal-gateway/6baba810-9a4a-479d-98b2-97e5ba651784 running z5 10.30.107.214 vm-7ec75160-bf34-442e-b755-778ae7dd3fec portal_medium true
9
paas-ta-portal-log-api/a4460008-42b5-4ba0-84ee-fff49fe6c1bd running z5 10.30.107.218 vm-9ec0a1b0-09f6-415b-8e23-53af91fd94b8 portal_medium true
10
paas-ta-portal-registration/3728ed73-451e-4b93-ab9b-c610826c3135 running z5 10.30.107.215 vm-c4020514-c458-41c6-bcbc-7e0ee1bc6f42 portal_small true
11
paas-ta-portal-storage-api/2940366a-8294-4509-a9c0-811c8140663a running z5 10.30.107.220 vm-79ad6ee1-1bb5-4308-8b71-9ed30418e2c1 portal_medium true
12
paas-ta-portal-webadmin/8047fcbd-9a98-4b61-b161-0cbb277fa643 running z5 10.30.107.221 vm-188250fd-e918-4aab-9cbe-7d368852ea8a portal_medium true
13
paas-ta-portal-webuser/cb206717-81c9-49ed-a0a8-e6c3b957cb66 running z5 10.30.107.222 vm-822f68a5-91c8-453a-b9b3-c1bbb388e377 portal_medium true
14
15
11 vms
16
17
Succeeded
18
[email protected]:~$ bosh ssh -d paas-ta-portal-v2 paas-ta-portal-api << instance 접근(bosh ssh) 명령어 입력
19
Using environment '10.30.40.111' as user 'admin' (openid, bosh.admin)
20
21
Using deployment 'paas-ta-portal-v2'
22
23
Task 5195. Done
24
Unauthorized use is strictly prohibited. All access and activity
25
is subject to logging and monitoring.
26
Welcome to Ubuntu 14.04.5 LTS (GNU/Linux 4.4.0-92-generic x86_64)
27
28
* Documentation: https://help.ubuntu.com/
29
30
The programs included with the Ubuntu system are free software;
31
the exact distribution terms for each program are described in the
32
individual files in /usr/share/doc/*/copyright.
33
34
Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
35
applicable law.
36
37
Last login: Tue Sep 4 07:11:42 2018 from 10.30.20.28
38
To run a command as administrator (user "root"), use "sudo <command>".
39
See "man sudo_root" for details.
40
41
paas-ta-portal-api/48fa0c5a-52eb-4ae8-a7b9-91275615318c:~$
Copied!
(2) 로그파일이 있는 폴더로 이동한다.
위치 : /var/vcap/sys/log/[job name]/
1
paas-ta-portal-api/48fa0c5a-52eb-4ae8-a7b9-91275615318c:~$ cd /var/vcap/sys/log/paas-ta-portal-api/
2
paas-ta-portal-api/48fa0c5a-52eb-4ae8-a7b9-91275615318c:/var/vcap/sys/log/paas-ta-portal-api$ ls
3
paas-ta-portal-api.stderr.log paas-ta-portal-api.stdout.log
Copied!
(3) 로그파일을 열어 내용을 확인한다.
vim [job name].stdout.log
1
예)
2
vim paas-ta-portal-api.stdout.log
3
2018-09-04 02:08:42.447 ERROR 7268 --- [nio-2222-exec-1] p.p.a.e.GlobalControllerExceptionHandler : Error message : Response : [email protected]a1dc2
4
Occured an exception : 403 Access token denied.
5
Caused by...
6
org.cloudfoundry.client.lib.CloudFoundryException: 403 Access token denied. (error="access_denied", error_description="Access token denied.")
7
at org.cloudfoundry.client.lib.oauth2.OauthClient.createToken(OauthClient.java:114)
8
at org.cloudfoundry.client.lib.oauth2.OauthClient.init(OauthClient.java:70)
9
at org.cloudfoundry.client.lib.rest.CloudControllerClientImpl.initialize(CloudControllerClientImpl.java:187)
10
at org.cloudfoundry.client.lib.rest.CloudControllerClientImpl.<init>(CloudControllerClientImpl.java:163)
11
at org.cloudfoundry.client.lib.rest.CloudControllerClientFactory.newCloudController(CloudControllerClientFactory.java:69)
12
at org.cloudfoundry.client.lib.CloudFoundryClient.<init>(CloudFoundryClient.java:138)
13
at org.cloudfoundry.client.lib.CloudFoundryClient.<init>(CloudFoundryClient.java:102)
14
at org.openpaas.paasta.portal.api.service.LoginService.login(LoginService.java:47)
15
at org.openpaas.paasta.portal.api.controller.LoginController.login(LoginController.java:51)
16
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
17
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
18
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
19
at java.lang.reflect.Method.invoke(Method.java:498)
20
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
21
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)
22
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:97)
23
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827)
24
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)
25
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
26
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967)
27
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901)
28
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
29
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
30
at javax.servlet.http.HttpServlet.service(HttpServlet.java:661)
31
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
32
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
33
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
34
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
35
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
36
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
37
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
Copied!

3.6. 카탈로그 적용

(1) Catalog 빌드팩, 서비스팩 추가

Paas-TA Portal 설치 후에 관리자 포탈에서 빌드팩, 서비스팩을 등록해야 사용자 포탈에서 사용이 가능하다.
1) 관리자 포탈에 접속한다.(portal-web-admin.[public ip].xip.io)
2) 운영관리를 누른다.
3) 카탈로그 페이지에 들어간다.
4) 빌드팩, 서비스팩 상세화면에 들어가서 각 항목란에 값을 입력후에 저장을 누른다.
5) 사용자포탈에서 변경된값이 적용되어있는지 확인한다.
Last modified 8mo ago