Source Control Service 설치 가이드

Table of Contents

1. 문서 개요

1.1. 목적

본 문서는 개방형 PaaS 플랫폼 고도화 및 개발자 지원 환경 기반의 Open PaaS에서 제공되는 서비스인 형상관리 서비스를 Bosh를 이용하여 설치하는 방법을 기술하였다. PaaS-TA 3.5 버전부터는 Bosh2.0 기반으로 deploy를 진행하며 기존 Bosh1.0 기반으로 설치를 원할경우에는 PaaS-TA 3.1 이하 버전의 문서를 참고한다.

1.2. 범위

설치 범위는 형상관리 서비스 Release를 검증하기 위한 기본 설치를 기준으로 작성하였다.

1.3. 시스템 구성도

본 장에서는 형상관리 서비스의 시스템 구성에 대해 기술하였다. 형상관리 서비스의 시스템은 service-broker, mariadb, 형상관리 Server의 최소 사항을 구성하였다.

시스템 구성도

1.4. 참고 자료

http://bosh.io/docsarrow-up-right http://docs.cloudfoundry.org/arrow-up-right

2. 형상관리 서비스 설치

2.1. Prerequisite

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

2.2. Stemcell 확인

Stemcell 목록을 확인하여 서비스 설치에 필요한 Stemcell이 업로드 되어 있는 것을 확인한다. (PaaS-TA 5.5.1 과 동일 stemcell 사용)

$ bosh -e micro-bosh stemcells

2.3. Deployment 다운로드

서비스 설치에 필요한 Deployment를 Git Repository에서 받아 서비스 설치 작업 경로로 위치시킨다.

2.4. Deployment 파일 수정

BOSH Deployment manifest는 Components 요소 및 배포의 속성을 정의한 YAML 파일이다. Deployment 파일에서 사용하는 network, vm_type, disk_type 등은 Cloud config를 활용하고, 활용 방법은 BOSH 2.0 가이드를 참고한다.

  • Cloud config 설정 내용을 확인한다.

$ bosh -e micro-bosh cloud-config

  • common_vars.yml을 서버 환경에 맞게 수정한다.

  • 형상관리 서비스에서 사용하는 변수는 system_domain이다.

$ vi ~/workspace/paasta-5.5.1/deployment/common/common_vars.yml

  • Deployment YAML에서 사용하는 변수 파일을 서버 환경에 맞게 수정한다.

$ vi ~/workspace/paasta-5.5.1/deployment/service-deployment/source-control-service/vars.yml

2.5. 서비스 설치

  • 서버 환경에 맞추어 Deploy 스크립트 파일의 VARIABLES 설정을 수정하고, Option file을 추가할지 선택한다.

    (선택) -o operations/use-compiled-releases.yml (ubuntu-xenial/621.94로 컴파일 된 릴리즈 사용)

$ vi ~/workspace/paasta-5.5.1/deployment/service-deployment/source-control-service/deploy.sh

  • 서비스를 설치한다.

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

  • 서버 환경에 맞추어 Deploy 스크립트 파일의 VARIABLES 설정을 수정하고 Option file 및 변수를 추가한다.

    (추가) -o operations/use-offline-releases.yml (미리 다운받은 offline 릴리즈 사용)

    (추가) -v releases_dir=""

$ vi ~/workspace/paasta-5.5.1/deployment/service-deployment/source-control-service/deploy.sh

  • 서비스를 설치한다.

2.7. 서비스 설치 확인

설치 완료된 서비스를 확인한다.

$ bosh -e micro-bosh -d source-control-service vms

3. 형상관리 서비스 관리 및 신청

3.1. 서비스 브로커 등록

서비스의 설치가 완료 되면, PaaS-TA 포탈에서 서비스를 사용하기 위해 형상관리 서비스 브로커를 등록해 주어야 한다. 서비스 브로커 등록 시에는 개방형 클라우드 플랫폼에서 서비스 브로커를 등록 할 수 있는 권한을 가진 사용자로 로그인 되어 있어야 한다.

  • 서비스 브로커 목록을 확인한다

    $ cf service-brokers

  • 형상관리 서비스 브로커를 등록한다.

    $ cf create-service-broker [SERVICE_BROKER] [USERNAME] [PASSWORD] [SERVICE_BROKER_URL]

    • [SERVICE_BROKER] : 서비스 브로커 명

    • [USERNAME] / [PASSWORD] : 서비스 브로커에 접근할 수 있는 사용자 ID / PASSWORD

    • [SERVICE_BROKER_URL] : 서비스 브로커 접근 URL

  • 등록된 형상관리 서비스 브로커를 확인한다.

    $ cf service-brokers

  • 형상관리 서비스의 서비스 접근 정보를 확인한다.

    $ cf service-access -b paasta-sourcecontrol-broker

  • 형상관리 서비스의 서비스 접근 허용을 설정(전체)하고 서비스 접근 정보를 재확인 한다.

    $ cf enable-service-access p-paasta-sourcecontrol $ cf service-access -b paasta-sourcecontrol-broker

3.2. UAA Client 등록

  • uaac server의 endpoint를 설정한다.

  • uaac 로그인을 한다.

  • 형상관리 서비스 계정을 생성 한다. $ uaac client add -s --redirect_uri <형상관리서비스 대시보드 URI> --scope <퍼미션 범위> --authorized_grant_types <권한 타입> --authorities=<권한 퍼미션> --autoapprove=<자동승인권한>

    • : uaac 클라이언트 id

    • : uaac 클라이언트 secret

    • <형상관리서비스 대시보드 URI> : 성공적으로 리다이렉션 할 형상관리서비스 대시보드 URI

      ("http://:8080, http://:8080/repositories, http://:8080/repositories/user")

    • <퍼미션 범위> : 클라이언트가 사용자를 대신하여 얻을 수있는 허용 범위 목록

    • <권한 타입> : 서비스가 제공하는 API를 사용할 수 있는 권한 목록

    • <권한 퍼미션> : 클라이언트에 부여 된 권한 목록

    • <자동승인권한> : 사용자 승인이 필요하지 않은 권한 목록

3.3. 서비스 신청

  • 형상관리 서비스 사용을 위해 서비스를 신청 한다.

$ cf create-service [SERVICE] [PLAN] [SERVICE_INSTANCE] [-c PARAMETERS_AS_JSON]

  • [SERVICE] / [PLAN] : 서비스 명과 서비스 플랜

  • [SERVICE_INSTANCE] : 서비스 인스턴스 명 (내 서비스 목록에서 보여지는 명칭)

  • [-c PARAMETERS_AS_JSON] : JSON 형식의 파라미터 (형상관리 서비스 신청 시, owner, org_name 파라미터는 필수)

  • 서비스 상세의 대시보드 URL 정보를 확인하여 서비스에 접근한다.

Last updated