WEB-IDE 설치 가이드

1. 문서 개요

1.1. 목적

본 문서(WEB-IDE 설치 가이드)는 PaaS-TA에서 사용할 수 있는 WEB-IDE의 설치를 Bosh를 이용하여 설치 하는 방법과 PaaS-TA 포털에서 WEB-IDE 서비스를 사용하는 방법을 기술하였다. PaaS-TA 3.5 버전부터는 Bosh2.0 기반으로 deploy를 진행하며 기존 Bosh1.0 기반으로 설치를 원할경우에는 PaaS-TA 3.1 이하 버전의 문서를 참고한다.

1.2. 범위

설치 범위는 WEB-IDE 사용을 검증하기 위한 기본 설치를 기준으로 작성하였다.

1.3. 시스템 구성도

본 문서의 설치된 시스템 구성도입니다. Browser(paasta Portal), WEB IDE Server, Workspace, Desktop IDE로 최소사항을 구성하였다.
구분
Resource Pool
스펙
paasta-web-ide1
resource_pools
1vCPU / 2GB RAM / 10GB Disk
paasta-web-ide1
resource_pools
1vCPU / 2GB RAM / 10GB Disk

1.4. 참고자료

2.WEB IDE 설치

2.1. 설치전 준비사항

본 설치 가이드는 Linux 환경에서 설치하는 것을 기준으로 하였다. 서비스팩 설치를 위해서는 먼저 BOSH CLI v2 가 설치 되어 있어야 하고 BOSH 에 로그인이 되어 있어야 한다. BOSH CLI v2 가 설치 되어 있지 않을 경우 먼저 BOSH2.0 설치 가이드 문서를 참고 하여 BOSH CLI v2를 설치를 하고 사용법을 숙지 해야 한다.
  • PaaS-TA에서 제공하는 압축된 릴리즈 파일들을 다운받는다. (PaaSTA-Deployment.zip, PaaSTA-Sample-Apps.zip, PaaSTA-Services.zip)
  • 다운로드 위치

2.2. WEB-IDE 릴리즈 업로드

  • 업로드 되어 있는 릴리즈 목록을 확인한다.
  • 사용 예시
    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
    paas-ta-portal-release 2.0* non-git
    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!
  • WEB-IDE 서비스 릴리즈가 업로드 되어 있지 않은 것을 확인
  • WEB-IDE 서비스 릴리즈 파일을 업로드한다.
  • 사용 예시
    1
    $ bosh -e micro-bosh upload-release paasta-web-ide-2.0.tgz
    2
    Using environment '10.30.40.111' as user 'admin' (openid, bosh.admin)
    3
    4
    ######################################################## 100.00% 160.45 MiB/s 1s
    5
    Task 7866
    6
    7
    Task 7866 | 02:21:08 | Extracting release: Extracting release (00:00:03)
    8
    Task 7866 | 02:21:11 | Verifying manifest: Verifying manifest (00:00:00)
    9
    Task 7866 | 02:21:11 | Resolving package dependencies: Resolving package dependencies (00:00:00)
    10
    Task 7866 | 02:21:11 | Creating new packages: eclipse-che/eff6040fd5ed2a30190955140bb58f892ff830ec (00:00:03)
    11
    Task 7866 | 02:21:14 | Creating new packages: bosh-helpers/2b45cec940a80e582427f61c460269c6ccb031c8 (00:00:01)
    12
    Task 7866 | 02:21:15 | Creating new packages: docker/8da016ec9d1b172b779d5ff0a9fbbfc4973ea734 (00:00:00)
    13
    Task 7866 | 02:21:15 | Creating new packages: java/b74e140053eddb6a3a958568d66f801686d09e04 (00:00:02)
    14
    Task 7866 | 02:21:17 | Creating new jobs: eclipse-che/2f368c268ee821488f04f4b05a25eba963cda484 (00:00:00)
    15
    Task 7866 | 02:21:17 | Release has been created: paasta-web-ide/2.0 (00:00:00)
    16
    17
    Task 7866 Started Thu Sep 13 02:21:08 UTC 2018
    18
    Task 7866 Finished Thu Sep 13 02:21:17 UTC 2018
    19
    Task 7866 Duration 00:00:09
    20
    Task 7866 done
    21
    22
    Succeeded
    Copied!
  • 업로드 된 WEB-IDE 릴리즈를 확인한다.
  • 사용 예시
    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
    paas-ta-portal-release 2.0* non-git
    25
    paasta-delivery-pipeline-release 1.0* b3ee8f48+
    26
    paasta-web-ide 2.0 00000000
    27
    paasta-pinpoint 2.0* 2dbb8bf3+
    28
    php-buildpack 4.3.57* efc48f3
    29
    postgres 29* 5de4d63d+
    30
    python-buildpack 1.6.18* bcc4f26
    31
    routing 0.179.0* 18155a5
    32
    ruby-buildpack 1.7.21* 9d69600
    33
    silk 2.9.0* eebed55
    34
    staticfile-buildpack 1.4.29* 8a82e63
    35
    statsd-injector 1.3.0* 39e5179
    36
    uaa 60.2* ebb5895
    37
    38
    (*) Currently deployed
    39
    (+) Uncommitted changes
    40
    41
    32 releases
    42
    43
    Succeeded
    Copied!
  • WEB-IDE 서비스 릴리즈가 업로드 되어 있는 것을 확인
  • Deploy시 사용할 Stemcell을 확인한다.
  • 사용 예시
    1
    $ bosh -e micro-bosh stemcells
    2
    Name Version OS CPI CID
    3
    bosh-vsphere-esxi-ubuntu-trusty-go_agent 3586.26* ubuntu-trusty - sc-109fbdb0-f663-49e8-9c30-8dbdd2e5b9b9
    4
    ~ 3445.2* ubuntu-trusty - sc-025c70b5-7d6e-4ba3-a12b-7e71c33dad24
    5
    ~ 3309* ubuntu-trusty - sc-22429dba-e5cc-4469-ab3a-882091573277
    6
    7
    (*) Currently deployed
    8
    9
    3 stemcells
    10
    11
    Succeeded
    Copied!
Stemcell 목록이 존재 하지 않을 경우 BOSH 설치 가이드 문서를 참고 하여 Stemcell을 업로드를 해야 한다. (WEB-IDE 은 stemcell 3309 버전을 사용)

2.3.WEB-IDE 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 내용 조회
  • 사용 예시
    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
    277
    Succeeded
    Copied!
  • Deployment 파일을 서버 환경에 맞게 수정한다.
1
# paasta-web-ide-service 설정 파일 내용
2
---
3
name: paasta-web-ide-service # 서비스 배포이름(필수)
4
5
release:
6
name: paasta-web-ide #서비스 릴리즈 이름(필수)
7
version: "2.0" #서비스 릴리즈 버전(필수):latest 시 업로드된 서비스 릴리즈 최신버전
8
9
stemcells:
10
- alias: default
11
os: ((stemcell_os))
12
version: "((stemcell_version))"
13
14
update:
15
canaries: 1 # canary 인스턴스 수(필수)
16
canary_watch_time: 30000-180000 # canary 인스턴스가 수행하기 위한 대기 시간(필수)
17
max_in_flight: 1 # non-canary 인스턴스가 병렬로 update 하는 최대 개수(필수)
18
update_watch_time: 30000-180000 # non-canary 인스턴스가 수행하기 위한 대기 시간(필수)
19
20
instance_groups:
21
- name: paasta-web-ide1 #작업 이름(필수)
22
azs:
23
- z5
24
instances: 1 # job 인스턴스 수(필수)
25
vm_type: ((vm_type_medium)) # cloud config 에 정의한 vm_type
26
stemcell: default
27
networks:
28
- name: ((default_network_name)) # cloud config 에 정의한 network 이름
29
- name: ((public_network_name))
30
static_ips: 115.68.47.181
31
properties:
32
che:
33
ip: 115.68.47.181
34
port: 8080
35
templates:
36
- name: eclipse-che # job template 이름(필수)
37
release: paasta-web-ide
38
39
- name: paasta-web-ide2 #작업 이름(필수)
40
azs:
41
- z5
42
instances: 1 # job 인스턴스 수(필수)
43
vm_type: ((vm_type_medium)) # cloud config 에 정의한 vm_type
44
stemcell: default
45
networks:
46
- name: ((default_network_name)) # cloud config 에 정의한 network 이름
47
- name: ((public_network_name))
48
static_ips: 115.68.47.182
49
properties:
50
che:
51
ip: 115.68.47.182
52
port: 8080
53
templates:
54
- name: eclipse-che # job template 이름(필수)
55
release: paasta-web-ide
Copied!
  • deploy-web-ide-bosh2.0.sh 파일을 서버 환경에 맞게 수정한다.
1
#!/bin/bash
2
# stemcell 버전은 3309 버전으로 사용하시고 https://github.com/PaaS-TA/Guide-2.0-Linguine-/blob/master/Download_Page.md 에서 다운받아 쓰십시요.
3
# vsphere 이이외 iaas 사용시 use-public-network-vsphere.yml 대신 use-public-network.yml 을 사용
4
5
bosh -e micro-bosh -d paasta-web-ide-service deploy paasta_web_ide_bosh2.0.yml \
6
-o use-public-network-vsphere.yml \
7
-v default_network_name=service_private \
8
-v public_network_name=service_public \
9
-v stemcell_os=ubuntu-trusty \
10
-v stemcell_version=3309 \
11
-v vm_type_medium=service_medium_2G
Copied!
  • WEB-IDE 서비스팩을 배포한다.
  • 사용 예시
    1
    $ ./deploy-web-ide-bosh2.0.sh
    2
    # paasta-web-ide-service 설정 파일 내용
    3
    ---
    4
    name: paasta-web-ide-service # 서비스 배포이름(필수)
    5
    6
    release:
    7
    name: paasta-web-ide #서비스 릴리즈 이름(필수)
    8
    version: "2.0" #서비스 릴리즈 버전(필수):latest 시 업로드된 서비스 릴리즈 최신버전
    9
    10
    stemcells:
    11
    - alias: default
    12
    os: ((stemcell_os))
    13
    version: "((stemcell_version))"
    14
    15
    update:
    16
    canaries: 1 # canary 인스턴스 수(필수)
    17
    canary_watch_time: 30000-180000 # canary 인스턴스가 수행하기 위한 대기 시간(필수)
    18
    max_in_flight: 1 # non-canary 인스턴스가 병렬로 update 하는 최대 개수(필수)
    19
    update_watch_time: 30000-180000 # non-canary 인스턴스가 수행하기 위한 대기 시간(필수)
    20
    21
    instance_groups:
    22
    - name: paasta-web-ide1 #작업 이름(필수)
    23
    azs:
    24
    - z5
    25
    instances: 1 # job 인스턴스 수(필수)
    26
    vm_type: ((vm_type_medium)) # cloud config 에 정의한 vm_type
    27
    stemcell: default
    28
    networks:
    29
    - name: ((default_network_name)) # cloud config 에 정의한 network 이름
    30
    - name: ((public_network_name))
    31
    static_ips: 115.68.47.181
    32
    properties:
    33
    che:
    34
    ip: 115.68.47.181
    35
    port: 8080
    36
    templates:
    37
    - name: eclipse-che # job template 이름(필수)
    38
    release: paasta-web-ide
    39
    40
    - name: paasta-web-ide2 #작업 이름(필수)
    41
    azs:
    42
    - z5
    43
    instances: 1 # job 인스턴스 수(필수)
    44
    vm_type: ((vm_type_medium)) # cloud config 에 정의한 vm_type
    45
    stemcell: default
    46
    networks:
    47
    - name: ((default_network_name)) # cloud config 에 정의한 network 이름
    48
    - name: ((public_network_name))
    49
    static_ips: 115.68.47.182
    50
    properties:
    51
    che:
    52
    ip: 115.68.47.182
    53
    port: 8080
    54
    templates:
    55
    - name: eclipse-che # job template 이름(필수)
    56
    release: paasta-web-ide
    57
    [email protected]:~/workspace/servicepacks/paasta-web-ide-2.0$
    58
    [email protected]:~/workspace/servicepacks/paasta-web-ide-2.0$
    59
    [email protected]:~/workspace/servicepacks/paasta-web-ide-2.0$ ./deploy-web-ide-bosh2.0.sh
    60
    Using environment '10.30.40.111' as user 'admin' (openid, bosh.admin)
    61
    62
    Using deployment 'paasta-web-ide-service'
    63
    64
    + azs:
    65
    + - cloud_properties:
    66
    + datacenters:
    67
    + - clusters:
    68
    + - BD-HA:
    69
    + resource_pool: CF_BOSH2_Pool
    70
    + name: BD-HA
    71
    + name: z1
    72
    + - cloud_properties:
    73
    + datacenters:
    74
    + - clusters:
    75
    + - BD-HA:
    76
    + resource_pool: CF_BOSH2_Pool
    77
    + name: BD-HA
    78
    + name: z2
    79
    + - cloud_properties:
    80
    + datacenters:
    81
    + - clusters:
    82
    + - BD-HA:
    83
    + resource_pool: CF_BOSH2_Pool
    84
    + name: BD-HA
    85
    + name: z3
    86
    + - cloud_properties:
    87
    + datacenters:
    88
    + - clusters:
    89
    + - BD-HA:
    90
    + resource_pool: CF_BOSH2_Pool
    91
    + name: BD-HA
    92
    + name: z4
    93
    + - cloud_properties:
    94
    + datacenters:
    95
    + - clusters:
    96
    + - BD-HA:
    97
    + resource_pool: CF_BOSH2_Pool
    98
    + name: BD-HA
    99
    + name: z5
    100
    + - cloud_properties:
    101
    + datacenters:
    102
    + - clusters:
    103
    + - BD-HA:
    104
    + resource_pool: CF_BOSH2_Pool
    105
    + name: BD-HA
    106
    + name: z6
    107
    108
    + vm_types:
    109
    + - cloud_properties:
    110
    + cpu: 1
    111
    + disk: 8192
    112
    + ram: 1024
    113
    + name: minimal
    114
    + - cloud_properties:
    115
    + cpu: 1
    116
    + disk: 10240
    117
    + ram: 2048
    118
    + name: default
    119
    + - cloud_properties:
    120
    + cpu: 1
    121
    + disk: 30720
    122
    + ram: 4096
    123
    + name: small
    124
    + - cloud_properties:
    125
    + cpu: 2
    126
    + disk: 20480
    127
    + ram: 4096
    128
    + name: medium
    129
    + - cloud_properties:
    130
    + cpu: 2
    131
    + disk: 20480
    132
    + ram: 8192
    133
    + name: medium-memory-8GB
    134
    + - cloud_properties:
    135
    + cpu: 4
    136
    + disk: 20480
    137
    + ram: 8192
    138
    + name: large
    139
    + - cloud_properties:
    140
    + cpu: 8
    141
    + disk: 20480
    142
    + ram: 16384
    143
    + name: xlarge
    144
    + - cloud_properties:
    145
    + cpu: 2
    146
    + disk: 51200
    147
    + ram: 4096
    148
    + name: small-50GB
    149
    + - cloud_properties:
    150
    + cpu: 2
    151
    + disk: 51200
    152
    + ram: 4096
    153
    + name: small-50GB-ephemeral-disk
    154
    + - cloud_properties:
    155
    + cpu: 4
    156
    + disk: 102400
    157
    + ram: 8192
    158
    + name: small-100GB-ephemeral-disk
    159
    + - cloud_properties:
    160
    + cpu: 4
    161
    + disk: 102400
    162
    + ram: 8192
    163
    + name: small-highmem-100GB-ephemeral-disk
    164
    + - cloud_properties:
    165
    + cpu: 8
    166
    + disk: 20480
    167
    + ram: 16384
    168
    + name: small-highmem-16GB
    169
    + - cloud_properties:
    170
    + cpu: 1
    171
    + disk: 4096
    172
    + ram: 2048
    173
    + name: caas_small
    174
    + - cloud_properties:
    175
    + cpu: 1
    176
    + disk: 4096
    177
    + ram: 1024
    178
    + name: caas_small_api
    179
    + - cloud_properties:
    180
    + cpu: 1
    181
    + disk: 4096
    182
    + ram: 4096
    183
    + name: caas_medium
    184
    + - cloud_properties:
    185
    + cpu: 2
    186
    + disk: 8192
    187
    + ram: 4096
    188
    + name: service_medium
    189
    + - cloud_properties:
    190
    + cpu: 2
    191
    + disk: 10240
    192
    + ram: 2048
    193
    + name: service_medium_2G
    194
    + - cloud_properties:
    195
    + cpu: 1
    196
    + disk: 4096
    197
    + ram: 512
    198
    + name: portal_small
    199
    + - cloud_properties:
    200
    + cpu: 1
    201
    + disk: 4096
    202
    + ram: 1024
    203
    + name: portal_medium
    204
    + - cloud_properties:
    205
    + cpu: 1
    206
    + disk: 4096
    207
    + ram: 2048
    208
    + name: portal_large
    209
    210
    + vm_extensions:
    211
    + - cloud_properties:
    212
    + ports:
    213
    + - host: 3306
    214
    + name: mysql-proxy-lb
    215
    + - name: cf-router-network-properties
    216
    + - name: cf-tcp-router-network-properties
    217
    + - name: diego-ssh-proxy-network-properties
    218
    + - name: cf-haproxy-network-properties
    219
    + - cloud_properties:
    220
    + disk: 51200
    221
    + name: small-50GB
    222
    + - cloud_properties:
    223
    + disk: 102400
    224
    + name: small-highmem-100GB
    225
    226
    + compilation:
    227
    + az: z1
    228
    + network: default
    229
    + reuse_compilation_vms: true
    230
    + vm_type: large
    231
    + workers: 5
    232
    233
    + networks:
    234
    + - name: default
    235
    + subnets:
    236
    + - azs:
    237
    + - z1
    238
    + - z2
    239
    + - z3
    240
    + - z4
    241
    + - z5
    242
    + - z6
    243
    + cloud_properties:
    244
    + name: Internal
    245
    + dns:
    246
    + - 8.8.8.8
    247
    + gateway: 10.30.20.23
    248
    + range: 10.30.0.0/16
    249
    + reserved:
    250
    + - 10.30.0.0 - 10.30.111.40
    251
    + - name: public
    252
    + subnets:
    253
    + - azs:
    254
    + - z1
    255
    + - z2
    256
    + - z3
    257
    + - z4
    258
    + - z5
    259
    + - z6
    260
    + cloud_properties:
    261
    + name: External
    262
    + dns:
    263
    + - 8.8.8.8
    264
    + gateway: 115.68.46.177
    265
    + range: 115.68.46.176/28
    266
    + reserved:
    267
    + - 115.68.46.176 - 115.68.46.188
    268
    + static:
    269
    + - 115.68.46.189 - 115.68.46.190
    270
    + type: manual
    271
    + - name: service_private
    272
    + subnets:
    273
    + - azs:
    274
    + - z1
    275
    + - z2
    276
    + - z3
    277
    + - z4
    278
    + - z5
    279
    + - z6
    280
    + cloud_properties:
    281
    + name: Internal
    282
    + dns:
    283
    + - 8.8.8.8
    284
    + gateway: 10.30.20.23
    285
    + range: 10.30.0.0/16
    286
    + reserved:
    287
    + - 10.30.0.0 - 10.30.106.255
    288
    + static:
    289
    + - 10.30.107.1 - 10.30.107.255
    290
    + - name: service_public
    291
    + subnets:
    292
    + - azs:
    293
    + - z1
    294
    + - z2
    295
    + - z3
    296
    + - z4
    297
    + - z5
    298
    + - z6
    299
    + cloud_properties:
    300
    + name: External
    301
    + dns:
    302
    + - 8.8.8.8
    303
    + gateway: 115.68.47.161
    304
    + range: 115.68.47.160/24
    305
    + reserved:
    306
    + - 115.68.47.161 - 115.68.47.174
    307
    + static:
    308
    + - 115.68.47.175 - 115.68.47.185
    309
    + type: manual
    310
    + - name: portal_service_public
    311
    + subnets:
    312
    + - azs:
    313
    + - z1
    314
    + - z2
    315
    + - z3
    316
    + - z4
    317
    + - z5
    318
    + - z6
    319
    + cloud_properties:
    320
    + name: External
    321
    + dns:
    322
    + - 8.8.8.8
    323
    + gateway: 115.68.46.209
    324
    + range: 115.68.46.208/28
    325
    + reserved:
    326
    + - 115.68.46.216 - 115.68.46.222
    327
    + static:
    328
    + - 115.68.46.214
    329
    + type: manual
    330
    331
    + disk_types:
    332
    + - disk_size: 1024
    333
    + name: default
    334
    + - disk_size: 1024
    335
    + name: 1GB
    336
    + - disk_size: 2048
    337
    + name: 2GB
    338
    + - disk_size: 4096
    339
    + name: 4GB
    340
    + - disk_size: 5120
    341
    + name: 5GB
    342
    + - disk_size: 8192
    343
    + name: 8GB
    344
    + - disk_size: 10240
    345
    + name: 10GB
    346
    + - disk_size: 20480
    347
    + name: 20GB
    348
    + - disk_size: 30720
    349
    + name: 30GB
    350
    + - disk_size: 51200
    351
    + name: 50GB
    352
    + - disk_size: 102400
    353
    + name: 100GB
    354
    + - disk_size: 1048576
    355
    + name: 1TB
    356
    357
    + stemcells:
    358
    + - alias: default
    359
    + os: ubuntu-trusty
    360
    + version: '3309'
    361
    362
    + update:
    363
    + canaries: 1
    364
    + canary_watch_time: 30000-180000
    365
    + max_in_flight: 1
    366
    + update_watch_time: 30000-180000
    367
    368
    + release:
    369
    + name: paasta-web-ide
    370
    + version: '2.0'
    371
    372
    + instance_groups:
    373
    + - azs:
    374
    + - z5
    375
    + instances: 1
    376
    + name: paasta-web-ide1
    377
    + networks:
    378
    + - name: service_private
    379
    + - default:
    380
    + - dns
    381
    + - gateway
    382
    + name: service_public
    383
    + static_ips: 115.68.47.181
    384
    + properties:
    385
    + che:
    386
    + ip: "<redacted>"
    387
    + port: "<redacted>"
    388
    + stemcell: default
    389
    + templates:
    390
    + - name: eclipse-che
    391
    + release: paasta-web-ide
    392
    + vm_type: service_medium_2G
    393
    + - azs:
    394
    + - z5
    395
    + instances: 1
    396
    + name: paasta-web-ide2
    397
    + networks:
    398
    + - name: service_private
    399
    + - default:
    400
    + - dns
    401
    + - gateway
    402
    + name: service_public
    403
    + static_ips: 115.68.47.182
    404
    + properties:
    405
    + che:
    406
    + ip: "<redacted>"
    407
    + port: "<redacted>"
    408
    + stemcell: default
    409
    + templates:
    410
    + - name: eclipse-che
    411
    + release: paasta-web-ide
    412
    + vm_type: service_medium_2G
    413
    414
    + name: paasta-web-ide-service
    415
    416
    Continue? [yN]: y
    417
    418
    Task 7867
    419
    420
    Task 7867 | 02:29:25 | Preparing deployment: Preparing deployment (00:00:02)
    421
    Task 7867 | 02:29:27 | Preparing package compilation: Finding packages to compile (00:00:00)
    422
    Task 7867 | 02:29:27 | Compiling packages: bosh-helpers/2b45cec940a80e582427f61c460269c6ccb031c8
    423
    Task 7867 | 02:29:27 | Compiling packages: docker/8da016ec9d1b172b779d5ff0a9fbbfc4973ea734
    424
    Task 7867 | 02:29:27 | Compiling packages: java/b74e140053eddb6a3a958568d66f801686d09e04
    425
    Task 7867 | 02:31:36 | Compiling packages: bosh-helpers/2b45cec940a80e582427f61c460269c6ccb031c8 (00:02:09)
    426
    Task 7867 | 02:31:38 | Compiling packages: docker/8da016ec9d1b172b779d5ff0a9fbbfc4973ea734 (00:02:11)
    427
    Task 7867 | 02:31:59 | Compiling packages: java/b74e140053eddb6a3a958568d66f801686d09e04 (00:02:32)
    428
    Task 7867 | 02:31:59 | Compiling packages: eclipse-che/eff6040fd5ed2a30190955140bb58f892ff830ec (00:00:55)
    429
    Task 7867 | 02:33:27 | Creating missing vms: paasta-web-ide1/dfa63633-f846-48a4-9ea8-c23291fe0ea0 (0)
    430
    Task 7867 | 02:33:27 | Creating missing vms: paasta-web-ide2/9a1e6f85-a8d5-41c0-96f7-56ddb8bce657 (0) (00:01:18)
    431
    Task 7867 | 02:34:46 | Creating missing vms: paasta-web-ide1/dfa63633-f846-48a4-9ea8-c23291fe0ea0 (0) (00:01:19)
    432
    Task 7867 | 02:34:47 | Updating instance paasta-web-ide1: paasta-web-ide1/dfa63633-f846-48a4-9ea8-c23291fe0ea0 (0) (canary) (00:01:29)
    433
    Task 7867 | 02:36:16 | Updating instance paasta-web-ide2: paasta-web-ide2/9a1e6f85-a8d5-41c0-96f7-56ddb8bce657 (0) (canary) (00:01:30)
    434
    435
    Task 7867 Started Thu Sep 13 02:29:25 UTC 2018
    436
    Task 7867 Finished Thu Sep 13 02:37:46 UTC 2018
    437
    Task 7867 Duration 00:08:21
    438
    Task 7867 done
    439
    440
    Succeeded
    Copied!
  • 배포된 WEB-IDE 서비스팩을 확인한다.
  • 사용 예시
    1
    $bosh -e micro-bosh -d paasta-web-ide-service vms
    2
    Using environment '10.30.40.111' as user 'admin' (openid, bosh.admin)
    3
    4
    Task 7872. Done
    5
    6
    Deployment 'paasta-web-ide-service'
    7
    8
    Instance Process State AZ IPs VM CID VM Type Active
    9
    paasta-web-ide1/dfa63633-f846-48a4-9ea8-c23291fe0ea0 running z5 10.30.107.0 vm-4811a409-e48b-44c1-976c-268fe0af0697 service_medium_2G true
    10
    115.68.47.181
    11
    paasta-web-ide2/9a1e6f85-a8d5-41c0-96f7-56ddb8bce657 running z5 10.30.108.0 vm-ba125e95-804a-4272-8cda-e3bfa38be98f service_medium_2G true
    12
    115.68.47.182
    13
    14
    2 vms
    15
    16
    Succeeded
    Copied!

3. WEB-IDE의 PaaS-TA 포털사이트 연동

3.1. WEB-IDE 대시보드 화면

  • WEB IDE 아이콘을 클릭하면 관리자에 의해 할당된 WEB IDE 대시보드 화면이 새탭으로 열리게 된다.

4. WEB-IDE 에서 CF CLI 사용법

4.1. WEB-IDE New Project 화면

  • 사용할 언어를 선택하고 Create workspace and project 로 새로운 프로젝트를 시작한다.
  • Workspace를 구성하기 위해 Docker 관련 자료를 다운로드한다.

4.2. WEB-IDE Workspace 화면

  • Open Project를 누르면 Workspace 화면이 열린다.
  • 실제로 소스를 개발해서 빌드하거나 GIT이나 SVN에서 IMPORT 한다.

4.3. WEB-IDE Teminal에서의 CF CLI 실행

-cf api 명령을 이용해 endpoint를 지정한다.

cf login 명령어로 로그인하고 조직과 공간을 선택한다.

cf push 를 이용해 cf에 앱을 업로드한다.

Last modified 2yr ago