BOSH CLI 사용자 가이드

문서 개요

문서 목적

본 문서는 BOSH에 대한 설치 및 운영 관리를 위한 도구인 BOSH CLI v2에 대해 기본 사용법 및 사용 예시를 통해 BOSH를 이해하는데 목적이 있다.

문서 범위

본 문서에서는 BOSH CLI V2 사용법에 대해서 작성하였다.

참고 자료

본 문서는 Cloud Foundry의 BOSH Document(http://bosh.io)를 참고로 작성하였다.

BOSH CLI 기본 사용법

CLI는 BOSH 배포와 Release를 관리하기 위해 도움을 주는 커맨드 라인 명령어로 아래와 같이 구분된다.
  • bosh-cli: BOSH를 관리하기 위한 CLI
  • 기본 Syntax
    1
    $ bosh [<options>] <command> [<args>]
    Copied!
    bosh 명령어에 대괄호로 묶인 인자인 과 는 명령어에 따라 선택적으로 사용되고, 인자는 필수 인자이다.
  • Options
    번호
    옵션
    설명
    1
    -c, --config
    BOSH configuration file 지정
    2
    --ca-cert
    Director 및 UAA 연결에 사용 되는 CA 인증서 지정
    3
    --client
    사용자 이름 또는 UAA 클라이언트 재정의
    4
    -n
    입력 사용이 필요한 확인
    5
    --json
    출력 형식을 JSON으로 변경
    6
    --tty
    명령이 리디렉션되지 않을 때 일반적으로 표시되는 모든 텍스트를 출력에 포함
    7
    --no-color
    색상을 비활성화
    8
    --deployment, -d
    Deploy 명령을 위한 배치 지정
    9
    -h, --help
    Help 메시지 보기
    10
    --column=
    지정된 열만 표시하도록 필터링
    11
    -e, --enviroment
    SHA256 체크섬 사용
    12
    --sha2
    BOSH 배포파일 지정
    13
    --parallel=
    병렬 작업의 최대 수
    14
    --client-secret=
    암호 또는 UAA 클라이언트 암호 재정의

BOSH CLI - Environments

bosh environments

  • 기본 Syntax
    1
    $ bosh environments (Alias: envs)
    Copied!
  • 설명
    1
    BOSH CLI에 등록 한 디렉터의 별명이 지정된 환경을 나열
    Copied!
  • 파라미터
  • 사용 예시
    1
    $ bosh envs
    2
    URL Alias
    3
    104.154.171.255 gcp
    4
    192.168.56.6 vbox
    5
    2 environments
    6
    Succeeded
    Copied!

bosh create-env

  • 기본 Syntax
    1
    $ bosh create-env [deploymentFile] [--state path] [-v ...] [-o ...] [--vars-store path]
    Copied!
  • 설명
    BOSH CLI를 통해 Manifest File을 기반으로 단일 VM을 생성. 일반적으로 Director 환경을 만드는 데 사용
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    deploymentFile
    설치 Manfiest 파일
    O
    --state path
    Deployment state 파일 경로
    X
    -v
    Manifest Replace 변수 ex) internal_ip, deployment_name
    X
    -o
    option Manifest File ex) jumpbox-user.yml, uaa.yml...
    X
    --vars -store path
    creds.yml 파일, 인증 키 및 Job Password yml 파일 경로
    X
  • 사용 예시
    1
    $ bosh create-env ~/workspace/bosh-deployment/bosh.yml \
    2
    --state state.json \
    3
    --vars-store ./creds.yml \
    4
    -o ~/workspace/bosh-deployment/virtualbox/cpi.yml \
    5
    -o ~/workspace/bosh-deployment/virtualbox/outbound-network.yml \
    6
    -o ~/workspace/bosh-deployment/bosh-lite.yml \
    7
    -o ~/workspace/bosh-deployment/jumpbox-user.yml \
    8
    -v director_name=vbox \
    9
    -v internal_ip=192.168.56.6 \
    10
    -v internal_gw=192.168.56.1 \
    11
    -v internal_cidr=192.168.56.0/24 \
    12
    -v network_name=vboxnet0 \
    13
    -v outbound_network_name=NatNetwork
    Copied!

bosh alias-env

  • 기본 Syntax
    1
    $ bosh alias-env [name] -e [location] [--ca-cert=path]
    Copied!
  • 설명
    BOSH CLI를 통해 엑세스 할 디렉터의 별명이 지정
  • 파라미터
파라미터 명
설명
필수**(O/X)**
name
환경 이름 지정
O
location
디렉터 위치 지정
O
--ca-cert=path
CA 인증서를 지정
X

bosh environment

  • 기본 Syntax
    1
    $ bosh -e [my-env] environment (Alias: env)
    Copied!
  • 설명
    해당 Director 정보를 출력
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    my-env
    지정 한 Director 환경 이름 명칭
    O
  • 사용 예시
    1
    $ bosh -e vbox env
    2
    Using environment '192.168.56.6' as '?'
    3
    4
    Name vbox
    5
    UUID eeb27cc6-467e-4c1d-a8f9-f1a8de759f52
    6
    Version 260.5.0 (00000000)
    7
    CPI warden_cpi
    8
    Features compiled_package_cache: disabled
    9
    dns: disabled
    10
    snapshots: disabled
    11
    User admin
    12
    13
    Succeeded
    Copied!

bosh delete-env

  • 기본 Syntax
    1
    $ bosh delete-env [deploymentFile] [--state path] [-v ...] [-o ...] [--vars-store path]
    Copied!
  • 설명
    매니페스트를 기반으로 이전에 만든 VM을 삭제, create-env 명령에 제공된 것과 동일한 플래그를 delete-env 명령에 제공해야한다.
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    deploymentFile
    설치 한 Manfiest 파일
    O
    --state path
    Deployment state 파일 경로
    O
    -v
    Manifest Replace 변수 ex) internal_ip, deployment_name
    X
    -o
    option Manifest File ex) jumpbox-user.yml, uaa.yml…
    X
    --vars -store path
    creds.yml 파일, 인증 키 및 Job Password yml 파일 경로
    X
  • 사용 예시
    1
    $ bosh delete-env ~/workspace/bosh-deployment/bosh.yml \
    2
    --state state.json \
    3
    --vars-store ./creds.yml \
    4
    -o ~/workspace/bosh-deployment/virtualbox/cpi.yml \
    5
    -o ~/workspace/bosh-deployment/virtualbox/outbound-network.yml \
    6
    -o ~/workspace/bosh-deployment/bosh-lite.yml \
    7
    -o ~/workspace/bosh-deployment/jumpbox-user.yml \
    8
    -v director_name=vbox \
    9
    -v internal_ip=192.168.56.6 \
    10
    -v internal_gw=192.168.56.1 \
    11
    -v internal_cidr=192.168.56.0/24 \
    12
    -v network_name=vboxnet0 \
    13
    -v outbound_network_name=NatNetwork
    Copied!

BOSH CLI - Session

bosh log-in

  • 기본 Syntax
    1
    $ bosh -e [my-env] l
    Copied!
  • 설명
    주어진 사용자를 Director에 로그인합니다.
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    my-env
    BOSH 지정 한 Director 환경 이름 명칭
    O
  • 사용 예시
    1
    $ bosh -e my-env l
    2
    User (): admin
    3
    Password ():
    Copied!

bosh log-out

  • 기본 Syntax
    1
    $ bosh -e [my-env] log-out
    Copied!
  • 설명
    현재 접속 한 디렉터 로그아웃
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    my-env
    BOSH 지정 한 Director 환경 이름 명칭
    O
  • 사용 예시
    1
    $ bosh log-out
    2
    Logged out from '192.168.10.241'
    3
    4
    Succeeded
    Copied!

BOSH CLI - Stemcells

bosh Stemcells

  • 기본 Syntax
    1
    $ bosh -e [my-env] stemcells (Alias: ss)
    Copied!
  • 설명
    업로드 한 릴리즈 조회
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    my-env
    지정 한 Director 환경 이름 명칭
    O
  • 사용 예시
    1
    $ bosh -e my-env ss
    2
    Using environment '192.168.56.6' as '?'
    3
    4
    Name Version OS CPI CID
    5
    bosh-warden-boshlite-ubuntu-trusty-go_agent 3363* ubuntu-trusty - 6cbb176a-6a43-42...
    6
    ~ 3312 ubuntu-trusty - 43r3496a-4rt3-52...
    7
    bosh-warden-boshlite-centos-7-go_agent 3363* centos-7 - 38yr83gg-349r-94...
    8
    9
    (*) Currently deployed
    10
    11
    3 stemcells
    12
    13
    Succeeded
    Copied!

bosh upload-stemcell

  • 기본 Syntax
    1
    $ bosh -e [my-env] upload-stemcell [location] [--sha1=digest] [--fix]
    Copied!
  • 설명
    스템셀 업로드
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    my-env
    지정 한 Director 환경 이름 명칭
    O
    location
    스템셀 파일 위치 및 URL 지정
    X
    --sha1
    스템셀 파일 sha1um 값 확인
    X
    --fix
    이전에 업로드 한 스템 셀을 동일한 이름과 버전으로 교체
    X
  • 사용 예시
    1
    $ bosh -e my-env us ~/Downloads/bosh-stemcell-3468.17-warden-boshlite-ubuntu-trusty-go_agent.tgz
    2
    3
    $ bosh -e my-env us https://bosh.io/d/stemcells/bosh-stemcell-warden-boshlite-ubuntu-trusty-go_agent?v=3468.17
    Copied!

bosh delete-stemcell

  • 기본 Syntax
    1
    $ bosh -e [my-env] delete-stemcell [name]/[version]
    Copied!
  • 설명
    업로드 한 스템셀 삭제
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    my-env
    지정 한 Director 환경 이름 명칭
    O
    name
    삭제 할 스템셀 명
    O
    version
    삭제 할 스템셀 버전
    O
  • 사용 예시
    1
    $ bosh -e my-env delete-stemcell bosh-warden-boshlite-ubuntu-trusty-go_agent/3468.17
    Copied!

bosh repack-stemcell

  • 기본 Syntax
    1
    $ bosh repack-stemcell src.tgz dst.tgz [--name=name] [--version=ver] [--cloud-properties=json-string]
    Copied!
  • 설명
    기존 스템셀의 이름, 버전 및 클라우드 등록 정보와 같은 업데이트 된 등록 정보로 새로운 스템셀 타르볼을 생성 참조 URL: https://bosh.io/docs/repack-stemcell.html
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    name
    업데이트 등록 스템셀 명
    O
    version
    업데이트 등록 스템셀 버전
    X
    cloud-properties
    업데이트 등록 스템셀 cloud-properties, Json 형식
    X
  • 사용 예시
    1
    $ bosh repack-stemcell --name=acme-ubuntu-encrypted --cloud-properties='{"encrypted": true, "kms_key_arn": "arn:aws:kms:us-east-1:088444384256:key/4ffbe966-d138-4f4d-a077-4c234d05b3b1"}' bosh-stemcell-3363.9-aws-xen-hvm-ubuntu-trusty-go_agent.tgz acme-encrypted-stemcell.tgz
    Copied!

BOSH CLI - Release creation

bosh init-release

  • 기본 Syntax
    1
    $ bosh init-release [--git] [--dir=dir]
    Copied!
  • 설명
    dir에 릴리즈에 관련한 구성 파일을 생성 dir을 사용 않할 경우는 현재 디렉토리
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    --git
    BOSH 릴리즈 Git repository에 적절한 .gitignore 파일을 생성
    X
    --dir
    디렉토리에 대한 빈 릴리스 구성 파일 생성
    X
  • 파라미터
    1
    $ bosh init-release --git --dir release-dir
    2
    $ cd release-dir
    Copied!

bosh generate-job

  • 기본 Syntax
    1
    $ bosh generate-job [name] [--dir=dir]
    Copied!
  • 설명
    dir에 릴리즈에 대한 Job에 관련 한 빈 파일 생성
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    name
    릴리즈 Job 명칭
    O
    --dir
    디렉토리에 대한 Job 관련 빈 릴리스 구성 파일 생성
    X
  • 사용 예시
    1
    $ bosh generate-job jenkins
    Copied!

bosh generate-package

  • 기본 Syntax
    1
    $ bosh generate-pakage [name] [--dir=dir]
    Copied!
  • 설명
    dir에 릴리즈에 대한 pakage에 관련 한 빈 파일 생성
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    name
    릴리즈 pakage 명칭
    O
    --dir
    디렉토리에 pakage Job 관련 빈 릴리스 구성 파일 생성
    X
  • 사용 예시
    1
    $ bosh generate-package jenkins
    Copied!

bosh vendor-package

  • 기본 Syntax
    1
    $ bosh vendor-package [name] src-dir [--dir=dir]
    Copied!
  • 설명
    다른 릴리스의 패키지를 dir의 릴리스로 제공, 릴리즈를 만들 때 CLI가 특정 패키리를 참조 하도록 디렉토리에 spec.lock을 포함 설명 참조 https://bosh.io/docs/package-vendoring.html
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    name
    릴리즈 pakage명칭
    O
    --dir
    디렉토리에 대한 package 관련 빈 릴리스 구성 파일 생성
    X
  • 사용 예시
    1
    $ bosh vendor-package golang-1.8-linux ~/workspace/golang-release
    Copied!

bosh create-release

  • 기본 Syntax
    1
    $ bosh create-release [--force] [--version=ver] [--timestamp-version] [--final] [--tarball=path] [--dir=dir] (Alias: cr)
    Copied!
  • 설명
    dir에 저장된 릴리스의 새 버전을 생성
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    --force
    릴리스 디렉토리에서 커밋되지 않은 변경 사항을 무시하도록 지정
    X
    --version
    사용자 정의 릴리스 버전을 제공
    X
    --version
    사용자 정의 릴리스 버전을 제공
    X
    --timestamp-version
    타임 스탬프 기반의 dev 릴리즈 버전을 생성
    X
    --tarball
    릴리스 타르볼의 대상을 지정
    X
    --sha2
    SHA256 체크섬 사용 지정
    X
  • 사용 예시
    1
    $ bosh create-release --force
    Copied!

bosh finalize-release

  • 기본 Syntax
    1
    $ bosh finalize-release [path] [--force] [--version=ver] [--dir=dir]
    Copied!
  • 설명
    선택적으로 주어진 버전으로 최종 릴리스로 릴리스 타볼의 내용을 기록
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    path
    릴리즈 tarball 지정
    O
    --force
    릴리스 디렉토리에서 커밋되지 않은 변경 사항을 무시하도록 지정
    X
    --version
    사용자 정의 릴리스 버전을 제공
    X
    --dir
    디렉토리 위치 지정
    X
  • 사용 예시
    1
    $ cd release-dir
    2
    $ bosh finalize-release /tmp/my-release.tgz
    3
    $ bosh finalize-release /tmp/my-release.tgz --version 20
    4
    $ git commit -am 'Final release 20'
    5
    $ git push origin master
    Copied!

bosh reset-release

  • 기본 Syntax
    1
    $ bosh reset-release [--dir=dir]
    Copied!
  • 설명
    릴리스 디렉토리에 보관 된 dev 릴리스, blob 등의 임시 아티팩트를 제거
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    --dir
    디렉토리 위치 지정
    O
  • 사용 예시
    1
    $ bosh reset-release ~/Download/jenkins
    Copied!

BOSH CLI - Release blobs

bosh blob

  • 기본 Syntax
    1
    $ bosh blobs
    Copied!
  • 설명
    릴리즈 Blobstore에 등록 한 blob 출력
  • 사용 예시
    1
    $ cd release-dir
    2
    $ bosh blobs
    3
    Path Size Blobstore ID Digest
    4
    golang/go1.6.2.linux-amd64.tar.gz 81 MiB f1833f76-ad8b-4b... b8318b0...
    5
    stress/stress-1.0.4.tar.gz 187 KiB (local) e1533bc...
    6
    7
    2 blobs
    8
    9
    Succeeded
    Copied!

bosh add-blob

  • 기본 Syntax
    1
    $ bosh add-blob [src-path] [dst-path]
    Copied!
  • 설명
    릴리즈 Blobstore에 로컬 blob 추가
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    src-path
    로컬 Blob 디렉토리
    O
    dst-path
    릴리즈 내 blob 디렉토리
    X
  • 사용 예시
    1
    $ cd release-dir
    2
    $ bosh add-blob ~/Downloads/stress-1.0.4.tar.gz stress/stress-1.0.4.tar.gz
    Copied!

bosh reomove-blob

  • 기본 Syntax
    1
    $ bosh remove-blob [blob-path]
    Copied!
  • 설명
    릴리즈 Blobstore에 존재 하는 Blob 삭제
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    blob-path
    릴리즈 내 blob 디렉토리
    O
  • 사용 예시
    1
    $ cd release-dir
    2
    $ bosh remove-blob stress/stress-1.0.4.tar.gz
    Copied!

bosh sync-blob

  • 기본 Syntax
    1
    $ bosh sync-blobs
    Copied!
  • 설명
    릴리즈 내 blobstore의 blob 동기화
  • 사용 예시
    1
    $ cd release-dir
    2
    $ bosh sync-blobs
    Copied!

BOSH CLI - Releases

bosh releases

  • 기본 Syntax
    1
    $ bosh -e [my-env] releases (Alias: rs)
    Copied!
  • 설명
    업로드 한 릴리즈 조회
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    my-env
    지정 한 Director 환경 이름 명칭
    O
  • 사용 예시
    1
    $ bosh -e my-env rs
    2
    Using environment '192.168.56.6' as client 'admin'
    3
    4
    Name Version Commit Hash
    5
    capi 1.21.0* 716aa812
    6
    cf-mysql 34* e0508b5
    7
    cf-smoke-tests 11* a6dad6e
    8
    cflinuxfs2-rootfs 1.52.0* 4827ef51+
    9
    consul 155* 22515a98+
    10
    diego 1.8.1* 0cca668e
    11
    dns 3* 57e27da
    12
    etcd 94* 57c81e16
    13
    garden-runc 1.2.0* 2b3dedc5
    14
    loggregator 78* 773a3ba
    15
    nats 15* d4dfc4c1+
    16
    routing 0.145.0* dfb44c41+
    17
    statsd-injector 1.0.20* 552926d
    18
    syslog 9 ac2172f
    19
    uaa 25* 86ec7568
    20
    21
    (*) Currently deployed
    22
    (+) Uncommitted changes
    23
    24
    15 releases
    25
    26
    Succeeded
    Copied!

bosh upload-release

  • 기본 Syntax
    1
    $ bosh -e [my-env] upload-release [location] [--version=ver] [--sha1=digest] [--fix] (Alias: ur)
    Copied!
  • 설명
    릴리즈 업로드
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    my-env
    지정 한 Director 환경 이름 명칭
    O
    location
    릴리즈 파일 위치 및 URL 지정
    O
    --sha1
    릴리즈 파일 sha1um 값 확인
    X
    --fix
    이전에 업로드 한 릴리즈를 동일한 이름과 버전으로 교체
    X
  • 사용 예시
    1
    $ bosh -e my-env ur
    2
    $ bosh -e my-env ur https://bosh.io/d/github.com/concourse/concourse?v=2.7.3
    3
    $ bosh -e my-env ur git+https://github.com/concourse/concourse --version 2.7.3
    Copied!

bosh delete-release

  • 기본 Syntax
    1
    $ bosh -e [my-env] delete-release [name]/[version]
    Copied!
  • 설명
    업로드 한 릴리즈 삭제
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    my-env
    지정 한 Director 환경 이름 명칭
    O
    name
    삭제 할 릴리즈 명
    O
    version
    삭제 할 릴리즈 버전
    O
  • 사용 예시
    1
    $ bosh -e my-env delete-release cf-smoke-tests/94
    Copied!

bosh export-release

  • 기본 Syntax
    1
    $ bosh -e [my-env] -d my-dep export-release [name]/[version] [os]/[version] [--dir=dir]
    Copied!
  • 설명
    특정 스템셀에 대한 릴리즈를 컴파일 하고 내보낸다
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    my-env
    지정 한 Director 환경 이름 명칭
    O
    name
    릴리즈 명
    O
    version
    릴리즈 버전
    O
    os
    스템셀 os 명
    O
    version
    스템셀 os 버전
    O
    dir
    내보내기 디렉토리
    X
  • 사용 예시
    1
    $ bosh -e my-env -d my-dep export-release cf-smoke-tests/94 ubuntu-trusty/3369
    Copied!

bosh inspect-release

  • 기본 Syntax
    1
    $ bosh -e [my-env] inspect-release [name]/[version]
    Copied!
  • 설명
    모든 Job, Job의 메타데이터 패키지 및 릴리즈 버전과 관련 된 패키지를 출력
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    my-env
    지정 한 Director 환경 이름 명칭
    O
    name
    릴리즈 명
    O
    version
    릴리즈 버전
    O
  • 사용 예시
    1
    $ bosh -e gcp-test inspect-release consul/155
    2
    Using environment '192.168.56.6' as client 'admin'
    3
    4
    Job Blobstore ID Digest Links Consumed Links Provided
    5
    acceptance-tests/943c6083581e623dc66c7d9126d8e5989c4c2b31 0f3cd013-1d3d-... 17e5e4fc... - -
    6
    consul-test-consumer-windows/6748c0675da2292c680da03e89b738a9d5818370 7461c74c-745d-... 9809861c... - -
    7
    consul-test-consumer/7263db87ba85eaf0dd41bd198359c8597e961839 8bde4572-8e8b-... 7b08b059... - -
    8
    consul_agent/b4872109282347700eaa884dcfe93f3a03dc22dd e41f705e-2cb7-... a8db2c76... - name: consul - name: consul
    9
    type: consul type: consul
    10
    optional: true
    11
    consul_agent_windows/a0b91cb0aa1029734d77fcf064dafdb67f14ada6 3a8755d0-7a39-... 17f07ec0... - name: consul - name: consul
    12
    type: consul type: consul
    13
    optional: true
    14
    fake-dns-server/a1ea5f64de0860512470ace7ce2376aa9470f9b1 5bb53f17-eba9-... 0565f9af... - -
    15
    16
    6 jobs
    17
    18
    Package Compiled for Blobstore ID Digest
    19
    acceptance-tests-windows/e36cef763e5cfd4e28738ad314807e6d1e13b960 (source) 03589024-2596-49fc-... 96eaaf4ba...
    20
    acceptance-tests/9d56ac03d7410dcdfd96a8c96bbc79eb4b53c864 (source) 79fb9ba7-cd23-4b93-... e08ee88f5...
    21
    confab-windows/52b117effcd95138eca94c789530bcd6499cff9d (source) 53d4b206-b064-462d-... 43f92c8d0...
    22
    confab/b2ff0bbd68b7d600ecb1ffaf41f59af073e894fd (source) b93214eb-a816-4029-... 4b627d264...
    23
    ~ ubuntu- trusty/3363.9 f66fe541-8c21-4fe3-... 8e662c2e2...
    24
    consul-windows/2a8e0b7ce1424d1d5efe5c7184791481a0c26424 (source) 9516870b-801e-42ea-... 19db18127...
    25
    consul/6049d3016cd34ac64ccbf7837b06b6db81942102 (source) 04aa38af-e883-4842-... c42cacfc7...
    26
    ~ ubuntu-trusty/3363.9 ab4afda6-881e-46b1-... 27c1390fa...
    27
    golang1.7-windows/1a80382e081cd429cf518f0c783f4e4172cac79e (source) d7670210-7038-4749-... b91caa06a...
    28
    golang1.7/181f7537c2ec17ac2406d9f2eb3322fd80fa2a1c (source) ac8aa36a-8965-46e9-... ca440d716...
    29
    ~ ubuntu-trusty/3363.9 9d40794f-0c50-4d0c-... 9d6e29221...
    30
    31
    11 packages
    32
    33
    Succeeded
    Copied!

BOSH CLI - Configs

bosh configs

  • 기본 Syntax
    1
    $ bosh -e [my-env] configs [--type=my-type] [--name=my-name]
    Copied!
  • 설명
    Director의 모든 구성을 출력
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    my-env
    지정 한 Director 환경 이름 명칭
    O
    --name
    config 명 기본 Default
    X
    --type
    config type 명
    X
  • 사용 예시
    1
    $ bosh -e my-env configs
    2
    Using environment '192.168.50.6' as client 'admin'
    3
    4
    Type Name
    5
    cloud default
    6
    ~ custom-vm-types
    7
    cpi default
    8
    runtime default
    9
    10
    3 configs
    11
    12
    Succeeded
    Copied!

bosh update-config

  • 기본 Syntax
    1
    $ bosh -e [my-env] update-config [my-type] [config.yml] [--name=my-name]
    Copied!
  • 설명
    Director에서 구성을 추가하거나 업데이트
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    my-env
    지정 한 Director 환경 이름 명칭
    O
    my-typ
    config type 명
    O
    config.yml
    config type의 property Manifest 파일
    O
    --name
    config 명 기본 Default
    X
  • 사용 예시
    1
    $ bosh -e my-env config my-type config.yml
    Copied!

bosh delete-config

  • 기본 Syntax
    1
    $ bosh -e [my-env] delete-config [my-type] [--name=my-name]
    Copied!
  • 설명
    Director의 my-type 구성을 삭제
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    my-env
    지정 한 Director 환경 이름 명칭
    O
    my-type
    config type 명
    O
    --name
    config 명 기본 Default
    X
  • 사용 예시
    1
    $ bosh -e my-env config my-type config.yml
    Copied!

BOSH CLI - Cloud config

bosh cloud-configs

  • 기본 Syntax
    1
    $ bosh -e [my-env] cloud-config (Alias: cc)
    Copied!
  • 설명
    Deployment Property 설정
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    my-env
    지정 한 Director 환경 이름 명칭
    O
  • 사용 예시
    1
    $ bosh -e my-env cloud-config
    Copied!

bosh update-cloud-config

  • 기본 Syntax
    1
    $ bosh -e [my-env] update-cloud-config [config.yml] [-v ...] [-o ...] (Alias: ucc)
    Copied!
  • 설명
    Director의 cloud-conifg 구성 요소를 추가 하거나 수정
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    my-env
    지정 한 Director 환경 이름 명칭
    O
    config.yml
    property Manifest 파일
    O
    -v
    Manifest Replace 변수 ex) internal_ip, deployment_name
    X
    -o
    option Manifest File ex) jumpbox-user.yml, uaa.yml…
    X
  • 사용 예시
    1
    $ bosh -e my-env ucc cc.yml
    Copied!

BOSH CLI - Runtime config

bosh runtime-configs

  • 기본 Syntax
    1
    $ bosh -e my-env runtime-config (Alias: rc)
    Copied!
  • 설명
    Director의 runtime-conifg 구성 요소를 출력
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    my-env
    지정 한 Director 환경 이름 명칭
    O
  • 사용 예시
    1
    $ bosh -e my-env runtime-config
    Copied!

bosh update-runtime-config

  • 기본 Syntax
    1
    $ bosh -e my-env update-runtime-config [config.yml] [-v ...] [-o ...] (Alias: urc)
    Copied!
  • 설명
    Director의 cloud-conifg 구성 요소를 추가 하거나 수정
  • 파라미터
    파라미터 명
    설명
    필수**(O/X)**
    my-env
    지정 한 Director 환경 이름 명칭
    O
    config.yml
    property Manifest 파일
    O
    -v
    Manifest Replace 변수 ex) internal_ip, deployment_name
    X
    -o
    option Manifest File ex) jumpbox-user.yml, uaa.yml…
    X
  • 사용 예시