Portal API 설치 가이드

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. 설치전 준비사항

본 설치 가이드는 Linux 환경에서 설치하는 것을 기준으로 하였다. 서비스팩 설치를 위해서는 먼저 BOSH CLI v2 가 설치 되어 있어야 하고 BOSH 에 로그인이 되어 있어야 한다. BOSH CLI v2 가 설치 되어 있지 않을 경우 먼저 BOSH2.0 설치 가이드 문서를 참고 하여 BOSH CLI v2를 설치를 하고 사용법을 숙지 해야 한다.
  • BOSH2.0 사용자 가이드
  • PaaS-TA에서 제공하는 압축된 릴리즈 파일들을 다운받는다.
  • 다운로드 방법
  • 릴리즈된 파일받는방법
    1
    $ wget -O download.zip http://45.248.73.44/index.php/s/eZNmyXHc62sFL6K/download
    2
    $ unzip download.zip
    Copied!
  • PAAS-TA-PORTAL-UI-RELEASE 다운받아 직접 릴리즈 생성및 업로드 하는 방법
    1
    $ git clone https://github.com/PaaS-TA/PAAS-TA-PORTAL-API-RELEASE.git
    2
    $ cd ~/PAAS-TA-PORTAL-API-RELEASE
    3
    $ wget -O src.zip http://45.248.73.44/index.php/s/Ww94aojKCADdb3N/download
    4
    $ unzip src.zip
    5
    $ rm -rf src.zip
    6
    $ sh start.sh
    Copied!
  1. 1.
    bosh envs 명령어를 통해 사용할 bosh env를 확인한다.
    1
    $ bosh envs
    2
    URL Alias
    3
    10.0.1.7 micro-bosh
    4
    5
    1 environments
    6
    7
    Succeeded
    Copied!
  2. 2.
    bosh runtime-config 확인 및 수정
    1. 1.
      명령어를 통해 bosh-dns include deployments 에 paasta가 있는지 확인한다.
    $ bosh -e micro-bosh runtime-config Using environment '10.0.50.90' as client 'admin'
    addons:
    • include:
      deployments:
      • paasta
        stemcell:
      • os: ubuntu-trusty
      • os: ubuntu-xenial
        jobs:
        • name: bosh-dns
          properties:
          api:
          client:
          tls: "((/dns_api_client_tls))"
          server:
          tls: "((/dns_api_server_tls))"
          cache:
          enabled: true
          health:
          client:
          tls: "((/dns_healthcheck_client_tls))"
          enabled: true
          server:
          tls: "((/dns_healthcheck_server_tls))"
          release: bosh-dns
          name: bosh-dns
    • include:
      stemcell:
      • os: windows2012R2
      • os: windows2016
      • os: windows1803
        jobs:
        • name: bosh-dns-windows
          properties:
          api:
          client:
          tls: "((/dns_api_client_tls))"
          server:
          tls: "((/dns_api_server_tls))"
          cache:
          enabled: true
          health:
          client:
          tls: "((/dns_healthcheck_client_tls))"
          enabled: true
          server:
          tls: "((/dns_healthcheck_server_tls))"
          release: bosh-dns
          name: bosh-dns-windows
          releases:
    • name: bosh-dns
      sha1: d1aadbda5d60c44dec4a429cda872cf64f6d8d0b
      version: 1.10.0
      variables:
    • name: "/dns_healthcheck_tls_ca"
      options:
      common_name: dns-healthcheck-tls-ca
      is_ca: true
      type: certificate
    • name: "/dns_healthcheck_server_tls"
      options:
      ca: "/dns_healthcheck_tls_ca"
      common_name: health.bosh-dns
      extended_key_usage:
      • server_auth
        type: certificate
    • name: "/dns_healthcheck_client_tls"
      options:
      ca: "/dns_healthcheck_tls_ca"
      common_name: health.bosh-dns
      extended_key_usage:
      • client_auth
        type: certificate
    • name: "/dns_api_tls_ca"
      options:
      common_name: dns-api-tls-ca
      is_ca: true
      type: certificate
    • name: "/dns_api_server_tls"
      options:
      ca: "/dns_api_tls_ca"
      common_name: api.bosh-dns
      extended_key_usage:
      • server_auth
        type: certificate
    • name: "/dns_api_client_tls" options: ca: "/dns_api_tls_ca" common_name: api.bosh-dns extended_key_usage:
      • client_auth
        type: certificate
      Succeeded
  1. 1.
    bosh-dns include deployments에 paasta가 없다면 ~/workspace/paasta-5.0/deployment/bosh-deployment/runtime-configs 의 dns.yml 을 열어서 paasta를 추가해야한다.
1
addons:
2
- name: bosh-dns
3
jobs:
4
- name: bosh-dns
5
release: bosh-dns
6
properties:
7
cache:
8
enabled: true
9
health:
10
enabled: true
11
server:
12
tls: ((/dns_healthcheck_server_tls))
13
client:
14
tls: ((/dns_healthcheck_client_tls))
15
api:
16
server:
17
tls: ((/dns_api_server_tls))
18
client:
19
tls: ((/dns_api_client_tls))
20
include:
21
deployments:
22
- paasta
23
stemcell:
24
- os: ubuntu-trusty
25
- os: ubuntu-xenial
Copied!
  1. 1.
    dns.yml의 bosh-dns addons 설정 부분이다. Incoude.deployments에 paasta를 위와같이 추가시킨다.
  2. 2.
    yml설정을 한 후에 ~/workspace/paasta-5.0/deployment/bosh-deployment/update-runtime-config.sh을 실행시키면 runtime-config가 업데이트가 된다.
  3. 3.
    다시 bosh runtime-config 명령어를 통해 bosh-dns include deployments 에 paasta가 있는지 확인 후 성공적으로 등록이 되었으면 paasta-portal 릴리즈 업로드 및 deploy를 진행한다.
    2.2. PaaS-TA Portal API 릴리즈 업로드
  • 업로드 되어 있는 릴리즈 목록을 확인한다.
  • 사용 예시
    1
    $ bosh -e micro-bosh releases
    2
    Using environment '10.30.40.111' as user 'admin' (openid, bosh.admin)
    3
    4
    Name Version Commit Hash
    5
    binary-buildpack 1.0.21* d714741
    6
    bpm 0.9.0* c9b7136
    7
    caas-release 1.0* empty+
    8
    capi 1.62.0* 22a608c
    9
    cf-networking 2.8.0* 479f4a66
    10
    cf-smoke-tests 40.0.5* d6aaf1f
    11
    cf-syslog-drain 7.0* 71b995a
    12
    cflinuxfs2 1.227.0* 60128e1
    13
    consul 195* 67cdbcd
    14
    diego 2.13.0* b5644d9
    15
    dotnet-core-buildpack 2.1.3* 46a41cd
    16
    garden-runc 1.15.1* 75107e7+
    17
    go-buildpack 1.8.25* 40c60a0
    18
    haproxy 8.8.0* 9292573
    19
    java-buildpack 4.13* c2749d3
    20
    loggregator 103.0* 05da4e3d
    21
    loggregator-agent 2.0* 2382c90
    22
    nats 24* 30e7a82
    23
    nodejs-buildpack 1.6.28* 4cfdb7b
    24
    paasta-delivery-pipeline-release 1.0* b3ee8f48+
    25
    paasta-pinpoint 2.0* 2dbb8bf3+
    26
    php-buildpack 4.3.57* efc48f3
    27
    postgres 29* 5de4d63d+
    28
    python-buildpack 1.6.18* bcc4f26
    29
    routing 0.179.0* 18155a5
    30
    ruby-buildpack 1.7.21* 9d69600
    31
    silk 2.9.0* eebed55
    32
    staticfile-buildpack 1.4.29* 8a82e63
    33
    statsd-injector 1.3.0* 39e5179
    34
    uaa 60.2* ebb5895
    35
    36
    (*) Currently deployed
    37
    (+) Uncommitted changes
    38
    39
    30 releases
    40
    41
    Succeeded
    Copied!
  • paasta-portal-api-release(ver 2.0)이 업로드 되어 있지 않은 것을 확인
  • PaaS-TA Portal 릴리즈 파일을 업로드한다.
    명령어 : bosh -e "bosh env" upload-release "release file"
    1
    릴리즈 파일 위치 : PAAS-TA-PORTAL-API-RELEASE/paasta-portal-api-release-2.0.tgz
    Copied!
  • 사용 예시
    1
    $ bosh -e micro-bosh upload-release paasta-portal-release-2.0.tgz
    2
    Using environment '10.30.40.111' as user 'admin' (openid, bosh.admin)
    3
    4
    ######################################################## 100.00% 153.81 MiB/s 3s
    5
    Task 4687
    6
    7
    Task 4687 | 02:09:08 | Extracting release: Extracting release (00:00:05)
    8
    Task 4687 | 02:09:13 | Verifying manifest: Verifying manifest (00:00:00)
    9
    Task 4687 | 02:09:14 | Resolving package dependencies: Resolving package dependencies (00:00:00)
    10
    Task 4687 | 02:09:15 | Creating new packages: paas-ta-portal-log-api/0aff609e64bd4f3ea2cef82d470c0881933b5bbf (00:00:01)
    11
    Task 4687 | 02:09:16 | Creating new packages: paas-ta-portal-api/02e6c62924be62a2672a662f80bbf8d77c0afdb1 (00:00:01)
    12
    Task 4687 | 02:09:17 | Creating new packages: paas-ta-portal-storage-api/6cd6d9b3dd2376509ab79ed944c10c3782617db7 (00:00:01)
    13
    Task 4687 | 02:09:18 | Creating new packages: apache2/ced88bee5e97185ff8d299e2892975bd2062fa01 (00:00:00)
    14
    Task 4687 | 02:09:18 | Creating new packages: python/4e255efa754d91b825476b57e111345f200944e1 (00:00:02)
    15
    Task 4687 | 02:09:20 | Creating new packages: haproxy/14b0441f6d68c89612f53ce4334a65c80d601e51 (00:00:00)
    16
    Task 4687 | 02:09:20 | Creating new packages: paas-ta-portal-registration/66ed72c68e86717bf53af02f07e85fa19d7da874 (00:00:01)
    17
    Task 4687 | 02:09:21 | Creating new packages: sshpass/1b75eb8cd625da33e67fe33deba7b675796adb83 (00:00:00)
    18
    Task 4687 | 02:09:21 | Creating new packages: paas-ta-portal-config-server/8064c9e7488f2f688bc259d8cb8b15f0894faa94 (00:00:00)
    19
    Task 4687 | 02:09:21 | Creating new packages: paas-ta-portal-infra-admin/69c651f70ca9ecfa305d60ef6c2cec36ae6d8fb6 (00:00:01)
    20
    Task 4687 | 02:09:22 | Creating new packages: tomcat/1ff8747498f45f21b2d43d6bc50d8e53a0ddfca7 (00:00:01)
    21
    Task 4687 | 02:09:23 | Creating new packages: swift-all-in-one/af76e98d69570ca8c886b3c7fcb23c3a1ccbbe40 (00:00:05)
    22
    Task 4687 | 02:09:30 | Creating new packages: paas-ta-portal-common-api/8d7f3eb353ec32adf744d4514e95a936c2ea1ce3 (00:00:02)
    23
    Task 4687 | 02:09:32 | Creating new packages: java/86d8b8f8115418addf836753c1735abe547d4105 (00:00:03)
    24
    Task 4687 | 02:09:35 | Creating new packages: mariadb/59a218308c6c7dcf8795b531b53aa4a1c666ce00 (00:00:23)
    25
    Task 4687 | 02:09:58 | Creating new packages: paas-ta-portal-gateway/1fc98dd004de2dd036ed8c69fe9643efa4d74f5a (00:00:00)
    26
    Task 4687 | 02:09:59 | Creating new jobs: paas-ta-portal-log-api/3a5acb369f0491a48a3c7f8c2fdcddf469a0c2e8 (00:00:00)
    27
    Task 4687 | 02:09:59 | Creating new jobs: paas-ta-portal-api/d047be88ad2335b7981b7bf3e8a1396176ec04eb (00:00:00)
    28
    Task 4687 | 02:09:59 | Creating new jobs: paas-ta-portal-storage-api/46783767f597931024cd2ae3e9d4f71f08a5a71b (00:00:00)
    29
    Task 4687 | 02:09:59 | Creating new jobs: haproxy/6fb2bf3eefc2ec935bbb6a1d05ed92ba66ea7988 (00:00:00)
    30
    Task 4687 | 02:09:59 | Creating new jobs: paas-ta-portal-registration/dc5256799b47b1e0abab0d55dbbed8dabbd4997b (00:00:00)
    31
    Task 4687 | 02:09:59 | Creating new jobs: paas-ta-portal-infra-admin/6d09e520e3cb89e443c13b0a77f700cceb46b37a (00:00:00)
    32
    Task 4687 | 02:09:59 | Creating new jobs: binary_storage/8315c60cb8259e61fb0df4742e72cb2093dd32e4 (00:00:00)
    33
    Task 4687 | 02:09:59 | Creating new jobs: paas-ta-portal-common-api/e9ce476a7e453bb54a1581fbfaa09f669dbe39f0 (00:00:00)
    34
    Task 4687 | 02:09:59 | Creating new jobs: mariadb/3810edf74d908d7fb1cd284ce69a172b5fb51225 (00:00:01)
    35
    Task 4687 | 02:10:00 | Creating new jobs: paas-ta-portal-gateway/5950348e71002c4e7e511e8218e645f35cc887be (00:00:00)
    36
    Task 4687 | 02:10:00 | Release has been created: paas-ta-portal-ui-release/2.0 (00:00:00)
    37
    38
    Task 4687 Started Mon Sep 3 02:09:08 UTC 2018
    39
    Task 4687 Finished Mon Sep 3 02:10:00 UTC 2018
    40
    Task 4687 Duration 00:00:52
    41
    Task 4687 done
    42
    43
    Succeeded
    Copied!
  • PaaS-TA Portal 릴리즈를 확인한다.
  • 사용 예시
    1
    $ bosh -e micro-bosh releases
    2
    Using environment '10.30.40.111' as user 'admin' (openid, bosh.admin)
    3
    4
    Name Version Commit Hash
    5
    binary-buildpack 1.0.21* d714741
    6
    bpm 0.9.0* c9b7136
    7
    caas-release 1.0* empty+
    8
    capi 1.62.0* 22a608c
    9
    cf-networking 2.8.0* 479f4a66
    10
    cf-smoke-tests 40.0.5* d6aaf1f
    11
    cf-syslog-drain 7.0* 71b995a
    12
    cflinuxfs2 1.227.0* 60128e1
    13
    consul 195* 67cdbcd
    14
    diego 2.13.0* b5644d9
    15
    dotnet-core-buildpack 2.1.3* 46a41cd
    16
    garden-runc 1.15.1* 75107e7+
    17
    go-buildpack 1.8.25* 40c60a0
    18
    haproxy 8.8.0* 9292573
    19
    java-buildpack 4.13* c2749d3
    20
    loggregator 103.0* 05da4e3d
    21
    loggregator-agent 2.0* 2382c90
    22
    nats 24* 30e7a82
    23
    nodejs-buildpack 1.6.28* 4cfdb7b
    24
    paasta-portal-api-release 2.0* 00000000
    25
    paasta-delivery-pipeline-release 1.0* b3ee8f48+
    26
    paasta-pinpoint 2.0* 2dbb8bf3+
    27
    php-buildpack 4.3.57* efc48f3
    28
    postgres 29* 5de4d63d+
    29
    python-buildpack 1.6.18* bcc4f26
    30
    routing 0.179.0* 18155a5
    31
    ruby-buildpack 1.7.21* 9d69600
    32
    silk 2.9.0* eebed55
    33
    staticfile-buildpack 1.4.29* 8a82e63
    34
    statsd-injector 1.3.0* 39e5179
    35
    uaa 60.2* ebb5895
    36
    37
    (*) Currently deployed
    38
    (+) Uncommitted changes
    39
    40
    31 releases
    41
    42
    Succeeded
    Copied!
  • PaaS-TA Portal 릴리즈가 업로드 되어 있는 것을 확인
  • Deploy시 사용할 Stemcell을 확인한다.
  • 사용 예시
    1
    $ bosh -e micro-bosh stemcells
    2
    Name Version OS CPI CID
    3
    bosh-openstack-kvm-ubuntu-xenial-go_agent 315.64* ubuntu-xenial - 240752b1-b1f9-43ed-8e96-7f3e4f269d71
    4
    5
    (*) Currently deployed
    6
    7
    1 stemcells
    8
    9
    Succeeded
    Copied!
Stemcell 목록이 존재 하지 않을 경우 Stemcell을 업로드를 해야 한다.

2.3. PaaS-TA Portal API Deployment 배포

BOSH Deployment manifest 는 components 요소 및 배포의 속성을 정의한 YAML 파일이다. Deployment manifest 에는 sotfware를 설치 하기 위해서 어떤 Stemcell (OS, BOSH agent) 을 사용할것이며 Release (Software packages, Config templates, Scripts) 이름과 버전, VMs 용량, Jobs params 등을 정의가 되어 있다.
deployment 파일에서 사용하는 network, vm_type 등은 cloud config 를 활용하고 해당 가이드는 Bosh2.0 가이드를 참고한다.
  • cloud config 내용 조회
    명령어 bosh -e "bosh env" cloud-config
  • 사용 예시
    1
    bosh -e micro-bosh cloud-config
    2
    Using environment '10.30.40.111' as user 'admin' (openid, bosh.admin)
    3
    4
    azs:
    5
    - cloud_properties:
    6
    datacenters:
    7
    - clusters:
    8
    - BD-HA:
    9
    resource_pool: CF_BOSH2_Pool
    10
    name: BD-HA
    11
    name: z1
    12
    - cloud_properties:
    13
    datacenters:
    14
    - clusters:
    15
    - BD-HA:
    16
    resource_pool: CF_BOSH2_Pool
    17
    name: BD-HA
    18
    name: z2
    19
    - cloud_properties:
    20
    datacenters:
    21
    - clusters:
    22
    - BD-HA:
    23
    resource_pool: CF_BOSH2_Pool
    24
    name: BD-HA
    25
    name: z3
    26
    - cloud_properties:
    27
    datacenters:
    28
    - clusters:
    29
    - BD-HA:
    30
    resource_pool: CF_BOSH2_Pool
    31
    name: BD-HA
    32
    name: z4
    33
    - cloud_properties:
    34
    datacenters:
    35
    - clusters:
    36
    - BD-HA:
    37
    resource_pool: CF_BOSH2_Pool
    38
    name: BD-HA
    39
    name: z5
    40
    - cloud_properties:
    41
    datacenters:
    42
    - clusters:
    43
    - BD-HA:
    44
    resource_pool: CF_BOSH2_Pool
    45
    name: BD-HA
    46
    name: z6
    47
    compilation:
    48
    az: z1
    49
    network: default
    50
    reuse_compilation_vms: true
    51
    vm_type: large
    52
    workers: 5
    53
    disk_types:
    54
    - disk_size: 1024
    55
    name: default
    56
    - disk_size: 1024
    57
    name: 1GB
    58
    - disk_size: 2048
    59
    name: 2GB
    60
    - disk_size: 4096
    61
    name: 4GB
    62
    - disk_size: 5120
    63
    name: 5GB
    64
    - disk_size: 8192
    65
    name: 8GB
    66
    - disk_size: 10240
    67
    name: 10GB
    68
    - disk_size: 20480
    69
    name: 20GB
    70
    - disk_size: 30720
    71
    name: 30GB
    72
    - disk_size: 51200
    73
    name: 50GB
    74
    - disk_size: 102400
    75
    name: 100GB
    76
    - disk_size: 1048576
    77
    name: 1TB
    78
    networks:
    79
    - name: default
    80
    subnets:
    81
    - azs:
    82
    - z1
    83
    - z2
    84
    - z3
    85
    - z4
    86
    - z5
    87
    - z6
    88
    cloud_properties:
    89
    name: Internal
    90
    dns:
    91
    - 8.8.8.8
    92
    gateway: 10.30.20.23
    93
    range: 10.30.0.0/16
    94
    reserved:
    95
    - 10.30.0.0 - 10.30.111.40
    96
    - name: public
    97
    subnets:
    98
    - azs:
    99
    - z1
    100
    - z2
    101
    - z3
    102
    - z4
    103
    - z5
    104
    - z6
    105
    cloud_properties:
    106
    name: External
    107
    dns:
    108
    - 8.8.8.8
    109
    gateway: 115.68.46.177
    110
    range: 115.68.46.176/28
    111
    reserved:
    112
    - 115.68.46.176 - 115.68.46.188
    113
    static:
    114
    - 115.68.46.189 - 115.68.46.190
    115
    type: manual
    116
    - name: service_private
    117
    subnets:
    118
    - azs:
    119
    - z1
    120
    - z2
    121
    - z3
    122
    - z4
    123
    - z5
    124
    - z6
    125
    cloud_properties:
    126
    name: Internal
    127
    dns:
    128
    - 8.8.8.8
    129
    gateway: 10.30.20.23
    130
    range: 10.30.0.0/16
    131
    reserved:
    132
    - 10.30.0.0 - 10.30.106.255
    133
    static:
    134
    - 10.30.107.1 - 10.30.107.255
    135
    - name: service_public
    136
    subnets:
    137
    - azs:
    138
    - z1
    139
    - z2
    140
    - z3
    141
    - z4
    142
    - z5
    143
    - z6
    144
    cloud_properties:
    145
    name: External
    146
    dns:
    147
    - 8.8.8.8
    148
    gateway: 115.68.47.161
    149
    range: 115.68.47.160/24
    150
    reserved:
    151
    - 115.68.47.161 - 115.68.47.174
    152
    static:
    153
    - 115.68.47.175 - 115.68.47.185
    154
    type: manual
    155
    - name: portal_service_public
    156
    subnets:
    157
    - azs:
    158
    - z1
    159
    - z2
    160
    - z3
    161
    - z4
    162
    - z5
    163
    - z6
    164
    cloud_properties:
    165
    name: External
    166
    dns:
    167
    - 8.8.8.8
    168
    gateway: 115.68.46.209
    169
    range: 115.68.46.208/28
    170
    reserved:
    171
    - 115.68.46.216 - 115.68.46.222
    172
    static:
    173
    - 115.68.46.214
    174
    type: manual
    175
    vm_extensions:
    176
    - cloud_properties:
    177
    ports:
    178
    - host: 3306
    179
    name: mysql-proxy-lb
    180
    - name: cf-router-network-properties
    181
    - name: cf-tcp-router-network-properties
    182
    - name: diego-ssh-proxy-network-properties
    183
    - name: cf-haproxy-network-properties
    184
    - cloud_properties:
    185
    disk: 51200
    186
    name: small-50GB
    187
    - cloud_properties:
    188
    disk: 102400
    189
    name: small-highmem-100GB
    190
    vm_types:
    191
    - cloud_properties:
    192
    cpu: 1
    193
    disk: 8192
    194
    ram: 1024
    195
    name: minimal
    196
    - cloud_properties:
    197
    cpu: 1
    198
    disk: 10240
    199
    ram: 2048
    200
    name: default
    201
    - cloud_properties:
    202
    cpu: 1
    203
    disk: 30720
    204
    ram: 4096
    205
    name: small
    206
    - cloud_properties:
    207
    cpu: 2
    208
    disk: 20480
    209
    ram: 4096
    210
    name: medium
    211
    - cloud_properties:
    212
    cpu: 2
    213
    disk: 20480
    214
    ram: 8192
    215
    name: medium-memory-8GB
    216
    - cloud_properties:
    217
    cpu: 4
    218
    disk: 20480
    219
    ram: 8192
    220
    name: large
    221
    - cloud_properties:
    222
    cpu: 8
    223
    disk: 20480
    224
    ram: 16384
    225
    name: xlarge
    226
    - cloud_properties:
    227
    cpu: 2
    228
    disk: 51200
    229
    ram: 4096
    230
    name: small-50GB
    231
    - cloud_properties:
    232
    cpu: 2
    233
    disk: 51200
    234
    ram: 4096
    235
    name: small-50GB-ephemeral-disk
    236
    - cloud_properties:
    237
    cpu: 4
    238
    disk: 102400
    239
    ram: 8192
    240
    name: small-100GB-ephemeral-disk
    241
    - cloud_properties:
    242
    cpu: 4
    243
    disk: 102400
    244
    ram: 8192
    245
    name: small-highmem-100GB-ephemeral-disk
    246
    - cloud_properties:
    247
    cpu: 8
    248
    disk: 20480
    249
    ram: 16384
    250
    name: small-highmem-16GB
    251
    - cloud_properties:
    252
    cpu: 1
    253
    disk: 4096
    254
    ram: 2048
    255
    name: caas_small
    256
    - cloud_properties:
    257
    cpu: 1
    258
    disk: 4096
    259
    ram: 1024
    260
    name: caas_small_api
    261
    - cloud_properties:
    262
    cpu: 1
    263
    disk: 4096
    264
    ram: 4096
    265
    name: caas_medium
    266
    - cloud_properties:
    267
    cpu: 2
    268
    disk: 8192
    269
    ram: 4096
    270
    name: service_medium
    271
    - cloud_properties:
    272
    cpu: 2
    273
    disk: 10240
    274
    ram: 2048
    275
    name: service_medium_2G
    276
    - cloud_properties:
    277
    cpu: 1
    278
    disk: 4096
    279
    ram: 512
    280
    name: portal_small
    281
    - cloud_properties:
    282
    cpu: 1
    283
    disk: 4096
    284
    ram: 1024
    285
    name: portal_medium
    286
    - cloud_properties:
    287
    cpu: 1
    288
    disk: 4096
    289
    ram: 2048
    290
    name: portal_large
    Copied!
1
Succeeded
Copied!
  • Deployment 파일을 서버 환경에 맞게 수정한다.
  • azs의 경우 z5 ~ z6 로 설정한다.
  • "(())" 구문은 bosh deploy 할 때 변수로 받아서 처리하는 구문이므로 이 부분의 수정 방법은 아래의 deploy-portal-bosh2.0.sh 참고 예) os : ((stemcell_os))
1
# paas-ta-portal-bosh2.0.yml 설정 파일 내용
2
---
3
name: paasta-portal-api # 서비스 배포이름(필수) bosh deployments 로 확인 가능한 이름
4
5
stemcells:
6
- alias: ((stemcell_alias))
7
os: ((stemcell_os))
8
version: "((stemcell_version))"
9
10
11
12
13
releases:
14
- name: "((releases_name))" # 서비스 릴리즈 이름(필수) bosh releases로 확인 가능
15
version: "2.0" # 서비스 릴리즈 버전(필수):latest 시 업로드된 서비스 릴리즈 최신버전
16
17
update:
18
canaries: 1 # canary 인스턴스 수(필수)
19
canary_watch_time: 5000-120000 # canary 인스턴스가 수행하기 위한 대기 시간(필수)
20
update_watch_time: 5000-120000 # non-canary 인스턴스가 수행하기 위한 대기 시간(필수)
21
max_in_flight: 1 # non-canary 인스턴스가 병렬로 update 하는 최대 개수(필수)
22
serial: false
23
24
instance_groups:
25
########## INFRA ##########
26
- name: mariadb
27
azs:
28
- z6
29
instances: 1
30
vm_type: "((vm_type_small))"
31
stemcell: "((stemcell_alias))"
32
persistent_disk_type: "((mariadb_disk_type))"
33
networks:
34
- name: ((internal_networks_name))
35
jobs:
36
- name: mariadb
37
release: "((releases_name))"
38
syslog_aggregator: null
39
40
- name: haproxy
41
azs:
42
- z6
43
instances: 1
44
vm_type: "((vm_type_tiny))"
45
stemcell: "((stemcell_alias))"
46
networks:
47
- name: ((internal_networks_name))
48
- name: ((external_networks_name))
49
static_ips: ((haproxy_public_ip))
50
jobs:
51
- name: haproxy
52
release: "((releases_name))"
53
syslog_aggregator: null
54
properties:
55
infra:
56
admin:
57
enable: "((infra_admin))"
58
59
- name: binary_storage
60
azs:
61
- z6
62
instances: 1
63
persistent_disk_type: "((binary_storage_disk_type))"
64
vm_type: "((vm_type_small))"
65
stemcell: "((stemcell_alias))"
66
networks:
67
- name: ((internal_networks_name))
68
jobs:
69
- name: binary_storage
70
release: "((releases_name))"
71
syslog_aggregator: null
72
73
74
75
######## WEB SERVICE ########
76
77
- name: paas-ta-portal-gateway
78
azs:
79
- z6
80
instances: 1
81
vm_type: "((vm_type_small))"
82
stemcell: "((stemcell_alias))"
83
networks:
84
- name: ((internal_networks_name))
85
jobs:
86
- name: paas-ta-portal-gateway
87
release: "((releases_name))"
88
syslog_aggregator: null
89
properties:
90
java_opts: "-Xmx450m -Xss1M -XX:MaxMetaspaceSize=93382K -XX:ReservedCodeCacheSize=240m -XX:+UseCompressedOops -Djdk.tls.ephemeralDHKeySize=2048 -Dfile.encoding=UTF-8 -XX:+UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB=50 -Dsun.io.useCanonCaches=false -Djava.net.preferIPv4Stack=true -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Xverify:none -XX:ErrorFile=/var/vcap/sys/log/java_error_in_idea_%p.log -XX:HeapDumpPath=/var/vcap/sys/log/java_error_in_idea.hprof"
91
92
- name: paas-ta-portal-registration
93
azs:
94
- z6
95
instances: 1
96
vm_type: "((vm_type_small))"
97
stemcell: "((stemcell_alias))"
98
networks:
99
- name: ((internal_networks_name))
100
jobs:
101
- name: paas-ta-portal-registration
102
release: "((releases_name))"
103
syslog_aggregator: null
104
properties:
105
java_opts: "-Xmx450m -Xss1M -XX:MaxMetaspaceSize=93382K -XX:ReservedCodeCacheSize=240m -XX:+UseCompressedOops -Djdk.tls.ephemeralDHKeySize=2048 -Dfile.encoding=UTF-8 -XX:+UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB=50 -Dsun.io.useCanonCaches=false -Djava.net.preferIPv4Stack=true -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Xverify:none -XX:ErrorFile=/var/vcap/sys/log/java_error_in_idea_%p.log -XX:HeapDumpPath=/var/vcap/sys/log/java_error_in_idea.hprof"
106
infra:
107
admin:
108
enable: "((infra_admin))"
109
server:
110
port: 2221
111
112
- name: paas-ta-portal-api
113
azs:
114
- z6
115
instances: 1
116
vm_type: "((vm_type_medium))"
117
stemcell: "((stemcell_alias))"
118
networks:
119
- name: ((internal_networks_name))
120
jobs:
121
- name: paas-ta-portal-api
122
release: "((releases_name))"
123
syslog_aggregator: null
124
properties:
125
java_opts: "-Xmx900m -Xss1M -XX:MaxMetaspaceSize=93382K -XX:ReservedCodeCacheSize=240m -XX:+UseCompressedOops -Djdk.tls.ephemeralDHKeySize=2048 -Dfile.encoding=UTF-8 -XX:+UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB=50 -Dsun.io.useCanonCaches=false -Djava.net.preferIPv4Stack=true -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Xverify:none -XX:ErrorFile=/var/vcap/sys/log/java_error_in_idea_%p.log -XX:HeapDumpPath=/var/vcap/sys/log/java_error_in_idea.hprof"
126
cloudfoundry:
127
cc:
128
api:
129
url: ((cf_api_url))
130
uaaUrl: ((cf_uaa_url))
131
sslSkipValidation: true
132
user: # CloudFoundry Login information
133
admin:
134
username: admin
135
password: "((cf_admin_password))"
136
uaaClient:
137
clientId: admin
138
clientSecret: ((cf_uaa_admin_client_secret))
139
adminClientId: admin
140
adminClientSecret: ((cf_uaa_admin_client_secret))
141
loginClientId: admin
142
loginClientSecret: ((cf_uaa_admin_client_secret))
143
skipSSLValidation: true
144
authorization: cf-Authorization
145
abacus:
146
url: ((abacus_url))
147
monitoring:
148
api:
149
url: ((monitoring_api_url))
150
infra:
151
admin:
152
enable: "((infra_admin))"
153
154
- name: paas-ta-portal-common-api
155
azs:
156
- z6
157
instances: 1
158
vm_type: "((vm_type_small))"
159
stemcell: "((stemcell_alias))"
160
networks:
161
- name: ((internal_networks_name))
162
jobs:
163
- name: paas-ta-portal-common-api
164
release: "((releases_name))"
165
syslog_aggregator: null
166
properties:
167
java_opts: "-Xmx450m -Xss1M -XX:MaxMetaspaceSize=93382K -XX:ReservedCodeCacheSize=240m -XX:+UseCompressedOops -Djdk.tls.ephemeralDHKeySize=2048 -Dfile.encoding=UTF-8 -XX:+UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB=50 -Dsun.io.useCanonCaches=false -Djava.net.preferIPv4Stack=true -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Xverify:none -XX:ErrorFile=/var/vcap/sys/log/java_error_in_idea_%p.log -XX:HeapDumpPath=/var/vcap/sys/log/java_error_in_idea.hprof"
168
datasource:
169
cc:
170
driver-class-name: org.postgresql.Driver
171
url: jdbc:postgresql://((cf_db_ips)):((cf_db_port))/cloud_controller
172
username: "((cc_db_id))"
173
password: "((cc_db_password))"
174
portal:
175
driver-class-name: com.mysql.jdbc.Driver
176
username: root
177
password: "((mariadb_user_password))"
178
uaa:
179
driver-class-name: org.postgresql.Driver
180
url: jdbc:postgresql://((cf_db_ips)):((cf_db_port))/uaa
181
username: "((uaa_db_id))"
182
password: "((uaa_db_password))"
183
mail:
184
smtp:
185
host: ((mail_smtp_host))
186
port: ((mail_smtp_port))
187
username: ((mail_smtp_username))
188
password: "((mail_smtp_password))"
189
useremail: ((mail_smtp_useremail))
190
properties:
191
auth: ((mail_smtp_properties_auth))
192
starttls:
193
enable: ((mail_smtp_properties_starttls_enable))
194
required: ((mail_smtp_properties_starttls_required))
195
maximumTotalQps: 90
196
authUrl: ((paas_ta_web_user_url))
197
charset: UTF-8
198
subject: "((mail_smtp_properties_subject))"
199
createUrl: authcreate
200
expiredUrl: authreset
201
inviteUrl: inviteorg
202
infra:
203
admin:
204
enable: "((infra_admin))"
205
206
- name: paas-ta-portal-storage-api
207
azs:
208
- z6
209
instances: 1
210
vm_type: "((vm_type_small))"
211
stemcell: "((stemcell_alias))"
212
networks:
213
- name: ((internal_networks_name))
214
jobs:
215
- name: paas-ta-portal-storage-api
216
release: "((releases_name))"
217
syslog_aggregator: null
218
properties:
219
java_opts: "-Xmx450m -Xss1M -XX:MaxMetaspaceSize=93382K -XX:ReservedCodeCacheSize=240m -XX:+UseCompressedOops -Djdk.tls.ephemeralDHKeySize=2048 -Dfile.encoding=UTF-8 -XX:+UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB=50 -Dsun.io.useCanonCaches=false -Djava.net.preferIPv4Stack=true -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Xverify:none -XX:ErrorFile=/var/vcap/sys/log/java_error_in_idea_%p.log -XX:HeapDumpPath=/var/vcap/sys/log/java_error_in_idea.hprof"
220
objectStorage:
221
swift:
222
tenantName: ((binary_storage_tenantname))
223
username: ((binary_storage_username))
224
password: ((binary_storage_password))
225
authUrl: http://((binary_storage_ips)):5000/v2.0/tokens
226
authMethod: keystone
227
preferredRegion: Public
228
container: portal-container
229
infra:
230
admin:
231
enable: "((infra_admin))"
232
233
- name : paas-ta-portal-log-api
234
azs:
235
- z6
236
instances: 1
237
vm_type: "((vm_type_small))"
238
stemcell: "((stemcell_alias))"
239
networks:
240
- name: ((internal_networks_name))
241
jobs:
242
- name: paas-ta-portal-log-api
243
release: "((releases_name))"
244
syslog_aggregator: null
245
properties:
246
java_opts: "-Xmx450m -Xss1M -XX:MaxMetaspaceSize=93382K -XX:ReservedCodeCacheSize=240m -XX:+UseCompressedOops -Djdk.tls.ephemeralDHKeySize=2048 -Dfile.encoding=UTF-8 -XX:+UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB=50 -Dsun.io.useCanonCaches=false -Djava.net.preferIPv4Stack=true -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Xverify:none -XX:ErrorFile=/var/vcap/sys/log/java_error_in_idea_%p.log -XX:HeapDumpPath=/var/vcap/sys/log/java_error_in_idea.hprof"
247
cloudfoundry:
248
cc:
249
api:
250
url: ((cf_api_url))
251
uaaUrl: ((cf_uaa_url))
252
sslSkipValidation: true
253
user: # CloudFoundry Login information
254
admin:
255
username: admin
256
password: "((cf_admin_password))"
257
uaaClient:
258
clientId: login
259
clientSecret: login-secret
260
adminClientId: admin
261
adminClientSecret: "((cf_uaa_admin_client_secret))"
262
loginClientId: login
263
loginClientSecret: login-secret
264
skipSSLValidation: true
265
authorization: cf-Authorization
266
infra:
267
admin:
268
enable: "((infra_admin))"
269
270
properties:
271
mariadb: # MARIA DB SERVER 설정 정보
272
port: ((mariadb_port)) # MARIA DB PORT 번호
273
admin_user:
274
password: '((mariadb_user_password))' # MARIA DB ROOT 계정 비밀번호
275
host_names:
276
- mariadb0
277
binary_storage: # BINARY STORAGE SERVER 설정 정보
278
proxy_port: 10008 # 프록시 서버 Port(Object Storage >접속 Port)
279
auth_port: 5000
280
username: # 최초 생성되는 유저이름(Object Storage 접속 유저이름)
281
- ((binary_storage_username))
282
password: # 최초 생성되는 유저 비밀번호(Object Storage 접속 유저 비밀번호)
283
- ((binary_storage_password))
284
tenantname: # 최초 생성되는 테넌트 이름(Object Storage 접속 테넌트 이름)
285
- ((binary_storage_tenantname))
286
email: # 최소 생성되는 유저의 이메일
287
- ((binary_storage_email))
288
container: # 최초 생성되는 컨테이너 이름
289
- portal-container
290
binary_desc: # 최초 생성되는 컨테이너에 대한 설>명
291
- "portal binary_storage"
Copied!
  • vsphere : deploy-portal-bosh2.0-vsphere.sh
  • openstack : deploy-portal-bosh2.0-openstack.sh
  • aws : deploy-portal-bosh2.0-aws.sh
  • gcp :
Deploy 스크립트 파일을 각 IaaS 환경에 맞게 수정한다.
1
### IaaS별 network 설정 파일
2
- vsphere : use-public-network-vsphere.yml
3
- openstack : use-public-network-openstack.yml
4
- aws : use-public-network-aws.yml
5
- gcp : use-public-network-gcp.yml
6
- azure : use-public-network-azure.yml
Copied!
bosh 명령문 후에 주석(#)을 사용할경우 오류가 발생한다. 밑의 예시는 vsphere의 환경에서 테스트한 환경이다.
```sh

!/bin/bash

bosh -d paasta-portal-api deploy paasta-portal-bosh2.0.yml -o use-public-network-vsphere.yml -v releases_name="paasta-portal-api-release" -v stemcell_os="ubuntu-xenial" -v stemcell_version="315.36" -v stemcell_alias="default" -v vm_type_tiny="portal_tiny" -v vm_type_small="portal_small" -v vm_type_medium="portal_medium" -v internal_networks_name=service_private -v external_networks_name=service_public -v mariadb_disk_type="10GB" -v mariadb_port="3306" -v mariadb_user_password="c1oudc0w" -v binary_storage_disk_type="10GB" -v binary_storage_username="paasta-portal" -v binary_storage_password="password" -v binary_storage_tenantname="paasta-portal" -v binary_storage_email="[email protected]" -v haproxy_public_ip="115.68.46.179" -v cf_db_ips="10.30.50.4" -v cf_db_port="5524" -v cc_db_id="cloud_controller" -v cc_db_password="cc_admin" -v uaa_db_id="uaa" -v uaa_db_password="uaa_admin" -v cf_uaa_url="https://uaa.115.68.46.178.xip.io"\ -v cf_uaa_logouturl="logout.do" -v cf_api_url="https://api.115.68.46.178.xip.io"\ -v cf_admin_password="admin" -v cf_uaa_admin_client_secret="password" -v paas_ta_web_user_url="http://portal-web-user.115.68.46.180.xip.io"\ -v abacus_url="http://abacus.255.255.255.255"\ -v monitoring_api_url="http://monitoring.255.255.255.255"\ -v mail_smtp_host="smtp.gmail.com" -v mail_smtp_port="465" -v mail_smtp_username="PaaS-TA" -v mail_smtp_password="password" -v mail_smtp_useremail="[email protected]" -v mail_smtp_properties_auth="true" -v mail_smtp_properties_starttls_enable="true" -v mail_smtp_properties_starttls_required="true" -v mail_smtp_properties_subject="PaaS-TA User Potal" -v infra_admin=false
1
> release_version : 릴리즈 버전을 입력한다. $bosh releases 명령문으로 확인가능
2
3
- $ bosh releases
4
Using environment '10.30.40.111' as user 'admin' (openid, bosh.admin)
5
Name Version Commit Hash
6
paasta-portal-api-release 2.0* 00000000
7
8
> stemcell_os : 스템셀 OS를 입력한다. $bosh stemcells 명령문으로 확인가능\
9
> stemcell_version : 스템셀 버전을 입력한다. $bosh stemcells 명령문으로 확인가능\
10
> stemcell_alias : bosh deploy시 사용할 스템셀 명칭을 정한다.
11
12
- $ bosh stemcells
13
Using environment '10.30.40.111' as user 'admin' (openid, bosh.admin)
14
Name Version OS CPI CID
15
bosh-openstack-kvm-ubuntu-xenial-go_agent 315.64* ubuntu-xenial - 240752b1-b1f9-43ed-8e96-7f3e4f269d71
16
17
(*) Currently deployed
18
19
1 stemcells
20
21
> internal_networks_name : 내부 ip 할당할 network name $ bosh -e micro-bosh cloud-config로 확인가능\
22
> external_networks_name : 외부 ip 할당할 network name $ bosh -e micro-bosh cloud-config로 확인가능
23
24
$ bosh -e micro-bosh cloud-config
25
- name: service_private
26
subnets:
27
- azs:
28
- z1
29
- z2
30
- z3
31
- z4
32
- z5
33
- z6
34
cloud_properties:
35
name: Internal
36
dns:
37
- 8.8.8.8
38
gateway: 10.30.20.23
39
range: 10.30.0.0/16
40
reserved:
41
- 10.30.0.0 - 10.30.106.255
42
static:
43
- 10.30.107.1 - 10.30.107.255
44
- name: service_public
45
subnets:
46
- azs:
47
- z1
48
- z2
49
- z3
50
- z4
51
- z5
52
- z6
53
cloud_properties:
54
name: External
55
dns:
56
- 8.8.8.8
57
gateway: 115.68.47.161
58
range: 115.68.47.160/24
59
reserved:
60
- 115.68.47.161 - 115.68.47.174
61
static:
62
- 115.68.47.175 - 115.68.47.185
63
type: manual
64
65
> mariadb_ips: Mariadb의 ip 할당, internal_networks_name에 할당된 ip를 사용해야한다.\
66
mariadb_disk_type: Mariadb의 persistent_disk용량을 정한다.\
67
mariadb_port: Mariadb의 port를 정한다.\
68
mariadb_user_password: Mariadb의 비밀번호를 설정한다.(임의값 가능)\
69
binary_storage_ips: Binary Storage의 ip 할당, internal_networks_name에 할당된 ip를 사용해야한다.\
70
binary_storage_disk_type: Binary Storage의 persistent_disk용량을 정한다.\
71
binary_storage_username: Binary Storage의 접속 유저 계정을 정한다.\
72
binary_storage_password: Binary Storage의 접속 유저의 비밀번호를 정한다.\
73
binary_storage_tenantname: Binary Storage의 접속 테넌트 계정을 정한다.\
74
binary_storage_email: Binary Storage 생성되는 유저의 이메일을 정한다.\
75
haproxy_ips: Haproxy의 ip 할당, internal_networks_name에 할당된 ip를 사용해야한다.
76
77
>cf_db_ips: CF Database의 ip를 입력한다.\
78
cf_db_port: CF Database의 port를 입력한다.\
79
cc_db_id: CF Database의 계정을 입력한다.\
80
cc_db_password: CF Database의 비밀번호를 입력한다.
81
82
>cc_driver_name: CF Database의 종류를 입력한다. (postgresql, mysql 둘중 하나를 지정해야한다.)\
83
uaa_driver_name: UAA Database의 종류를 입력한다. (postgresql, mysql 둘중 하나를 지정해야한다.)
84
85
86
>uaa_db_id: UAA Database의 계정을 입력한다.\
87
uaa_db_password: UAA Database의 비밀번호를 입력한다.
88
![paas-ta-portal-09]
89
>>cf_db_ips: api, uaa가 포함된 deployment내의 database ip주소
90
91
> cf_uaa_url: "https://uaa.[uaa가 포함된 public ip].xip.io"\
92
cf_api_url: "https://api.[api가 포함된 public ip].xip.io"
93
![paas-ta-portal-07]
94
>>예) cf_uaa_url="https://uaa.115.68.46.189.xip.io"
95
96
> cf_admin_password: CF 관리자 계정 비밀번호를 입력한다.
97
98
>cf_uaa_admin_client_secret: uaac admin client의 secret를 입력한다.\
99
portal_client_secret: uaac portalclient의 secret를 입력한다.
100
101
>paas_ta_web_user_url: Portal Webuser의 Url을 입력한다.\
102
abacus_url: Abacus Url을 입력한다.\
103
portal_webuser_monitoring : 미터링 페이지 사용 여부를 설정한다.\
104
monitoring_api_url: Monitoring Api의 Url을 입력한다.\
105
portal_webuser_monitoring: Monitoring 화면 표기 유무를 설정한다.
106
107
>mail_smtp_host: smtp의 host를 설정한다.\
108
mail_smtp_port: smtp의 port를 설정한다.\
109
mail_smtp_username: smtp의 계정을 설정한다.\
110
mail_smtp_password: smtp의 비밀번호을 설정한다.\
111
mail_smtp_useremail: smtp의 email을 설정한다.\
112
mail_smtp_properties_auth=: smtp의 auth값을 설정한다.\
113
mail_smtp_properties_starttls_enable: smtp의 starttls_enable값을 설정한다.\
114
mail_smtp_properties_starttls_required: smtp의 starttls_required값을 설정한다.\
115
mail_smtp_properties_subject: 메일제목을 설정한다.
116
117
>portal_webuser_automaticapproval: 회원가입시 cf에 접속가능 여부 true일경우 관리자포탈에서 승인을 해주어야 접근 가능하다.
118
portal_webuser_monitoring : 모니터링 사용 여부 true일경우 앱 상세정보에서 모니터링창이 활성화가 된다.
119
portal_webuser_quantity : 사용량 조회 창 활성화 여부
120
121
- PaaS-TA Portal을 배포한다.
122
123
- **사용 예시**
124
125
$ ./deploy-vsphere.sh
126
Using environment '10.30.40.111' as user 'admin' (openid, bosh.admin)
127
128
Using deployment 'paas-ta-portal-v2'
129
130
+ azs:
131
+ - cloud_properties:
132
+ datacenters:
133
+ - clusters:
134
+ - BD-HA:
135
+ resource_pool: CF_BOSH2_Pool
136
+ name: BD-HA
137
+ name: z1
138
+ - cloud_properties:
139
+ datacenters:
140
+ - clusters:
141
+ - BD-HA:
142
+ resource_pool: CF_BOSH2_Pool
143
+ name: BD-HA
144
+ name: z2
145
+ - cloud_properties:
146
+ datacenters:
147
+ - clusters:
148
+ - BD-HA:
149
+ resource_pool: CF_BOSH2_Pool
150
+ name: BD-HA
151
+ name: z3
152
+ - cloud_properties:
153
+ datacenters:
154
+ - clusters:
155
+ - BD-HA:
156
+ resource_pool: CF_BOSH2_Pool
157
+ name: BD-HA
158
+ name: z4
159
+ - cloud_properties:
160
+ datacenters:
161
+ - clusters:
162
+ - BD-HA:
163
+ resource_pool: CF_BOSH2_Pool
164
+ name: BD-HA
165
+ name: z5
166
+ - cloud_properties:
167
+ datacenters:
168
+ - clusters:
169
+ - BD-HA:
170
+ resource_pool: CF_BOSH2_Pool
171
+ name: BD-HA
172
+ name: z6
173
174
+ vm_types:
175
+ - cloud_properties:
176
+ cpu: 1
177
+ disk: 8192
178
+ ram: 1024
179
+ name: minimal
180
+ - cloud_properties:
181
+ cpu: 1
182
+ disk: 10240
183
+ ram: 2048
184
+ name: default
185
+ - cloud_properties:
186
+ cpu: 1
187
+ disk: 30720
188
+ ram: 4096
189
+ name: small
190
+ - cloud_properties:
191
+ cpu: 2
192
+ disk: 20480
193
+ ram: 4096
194
+ name: medium
195
+ - cloud_properties:
196
+ cpu: 2
197
+ disk: 20480
198
+ ram: 8192
199
+ name: medium-memory-8GB
200
+ - cloud_properties:
201
+ cpu: 4
202
+ disk: 20480
203
+ ram: 8192
204
+ name: large
205
+ - cloud_properties:
206
+ cpu: 8
207
+ disk: 20480
208
+ ram: 16384
209
+ name: xlarge
210
+ - cloud_properties:
211
+ cpu: 2
212
+ disk: 51200
213
+ ram: 4096
214
+ name: small-50GB
215
+ - cloud_properties:
216
+ cpu: 2
217
+ disk: 51200
218
+ ram: 4096
219
+ name: small-50GB-ephemeral-disk
220
+ - cloud_properties:
221
+ cpu: 4
222
+ disk: 102400
223
+ ram: 8192
224
+ name: small-100GB-ephemeral-disk
225
+ - cloud_properties:
226
+ cpu: 4
227
+ disk: 102400
228
+ ram: 8192
229
+ name: small-highmem-100GB-ephemeral-disk
230
+ - cloud_properties:
231
+ cpu: 8
232
+ disk: 20480
233
+ ram: 16384
234
+ name: small-highmem-16GB
235
+ - cloud_properties:
236
+ cpu: 1
237
+ disk: 4096
238
+ ram: 2048
239
+ name: caas_small
240
+ - cloud_properties:
241
+ cpu: 1
242
+ disk: 4096
243
+ ram: 1024
244
+ name: caas_small_api
245
+ - cloud_properties:
246
+ cpu: 1
247
+ disk: 4096
248
+ ram: 4096
249
+ name: caas_medium
250
+ - cloud_properties:
251
+ cpu: 2
252
+ disk: 8192
253
+ ram: 4096
254
+ name: service_medium
255
+ - cloud_properties:
256
+ cpu: 2
257
+ disk: 10240
258
+ ram: 2048
259
+ name: service_medium_2G
260
261
+ vm_extensions:
262
+ - cloud_properties:
263
+ ports:
264
+ - host: 3306
265
+ name: mysql-proxy-lb
266
+ - name: cf-router-network-properties
267
+ - name: cf-tcp-router-network-properties
268
+ - name: diego-ssh-proxy-network-properties
269
+ - name: cf-haproxy-network-properties
270
+ - cloud_properties:
271
+ disk: 51200
272
+ name: small-50GB
273
+ - cloud_properties:
274
+ disk: 102400
275
+ name: small-highmem-100GB
276
277
+ compilation:
278
+ az: z1
279
+ network: default
280
+ reuse_compilation_vms: true
281
+ vm_type: large
282
+ workers: 5
283
284
+ networks:
285
+ - name: default
286
+ subnets:
287
+ - azs:
288
+ - z1
289
+ - z2
290
+ - z3
291
+ - z4
292
+ - z5
293
+ - z6
294
+ cloud_properties:
295
+ name: Internal
296
+ dns:
297
+ - 8.8.8.8
298
+ gateway: 10.30.20.23
299
+ range: 10.30.0.0/16
300
+ reserved:
301
+ - 10.30.0.0 - 10.30.111.40
302
+ - name: public
303
+ subnets:
304
+ - azs:
305
+ - z1
306
+ - z2
307
+ - z3
308
+ - z4
309
+ - z5
310
+ - z6
311
+ cloud_properties:
312
+ name: External
313
+ dns:
314
+ - 8.8.8.8
315
+ gateway: 115.68.46.177
316
+ range: 115.68.46.176/28
317
+ reserved:
318
+ - 115.68.46.176 - 115.68.46.188
319
+ static:
320
+ - 115.68.46.189 - 115.68.46.190
321
+ type: manual
322
+ - name: service_private
323
+ subnets:
324
+ - azs:
325
+ - z1
326
+ - z2