목차

시작하기 전에

SourceDeploy가 지원하는 배포환경

SourceDeploy는 네이버 클라우드 플랫폼에서 생성한 서버 혹은 Auto Scaling을 대상으로 배포를 지원합니다. 따라서 SourceDeploy를 사용하기 위해서는 사전에 서버 혹은 Auto Scaling Group이 생성되어 있어야 합니다.

좀 더 자세한 사항은 부가 기능에서 확인해 주세요.

생성한 배포 프로젝트 확인하기

SourceDeploy에서 생성한 배포 프로젝트는 네이버 클라우드 플랫폼 콘솔에서 확인할 수 있습니다.

  • 배포 프로젝트 및 배포 스테이지, 배포 시나리오를 생성하고 변경 및 삭제할 수 있습니다.
  • 배포 프로젝트를 사용할 서브 계정을 추가하고 권한을 변경할 수 있니다.
  • 배포를 실행할 수 있습니다.
  • 배포 히스토리와 배포 로그를 확인할 수 있습니다.

배포 프로젝트 생성 권한

해당 권한은 고객 계정이 Management > Sub Account 메뉴에서 서브 계정에 부여할 수 있습니다.(Sub Account 이용 안내 바로 가기)

1. NCP_SOURCE_DEPLOY_MANAGER

  • 콘솔에서 '배포 프로젝트 생성'을 통해 배포 프로젝트를 생성할 수 있고, 자신이 생성한 배포 프로젝트를 관리 및 다른 서브 계정에 공유할 수 있습니다.

  • 고객 계정은 해당 권한이 기본으로 부여되어 있으며, 서브 계정은 고객 계정 사용자로부터 Management > Sub Account 메뉴에서 해당 권한을 할당받을 수 있습니다.

    참고: NCP_SOURCE_DEPLOY_MANGER 권한 부여하기
    deploy_console_27

    ① 서브 계정에 SourceDeploy 관리자 권한을 부여하기 위해서는 Sub Account 메뉴의 Sub Accounts를 선택합니다.

    ② 부여할 서브 계정을 선택합니다.

    deploy_console_28

    ① 선택한 서브 계정의 정책에 NCP_SOURCE_DEPLOY_MANAGER 정책을 선택합니다.

    ② 해당 정책을 추가합니다.

배포 프로젝트 사용 권한

해당 권한은 고객 계정이나 SourceDeploy 관리자(서브 계정)가 SourceDeploy에서 배포 프로젝트를 공유할 서브 계정에 부여하는 권한입니다.

1. ADMIN

  • 배포 프로젝트 조회, 설정 변경, 삭제 권한을 포함하고 있습니다.
  • 배포 프로젝트 내의 배포 스테이지 생성, 설정 변경, 삭제 권한을 포함하고 있습니다.
  • 배포 스테이지 내의 배포 시나리오 생성, 설정 변경, 삭제 권한을 포함하고 있습니다.
  • 배포 프로젝트를 생성한 계정은 자동으로 ADMIN 권한이 부여됩니다.
  • 배포 프로젝트 사용자 계정(서브 계정)을 할당하고 권한을 부여할 수 있습니다.
  • 배포를 실행할 수 있습니다.

2. USER

  • 배포 프로젝트, 배포 스테이지, 배포 시나리오 조회 권한을 포함하고 있습니다.
  • 배포를 실행할 수 있습니다.

배포 프로젝트 생성하기

콘솔 접속

콘솔에서 Dev Tools > SourceDeploy 메뉴로 접속합니다.

deploy_console_1

deploy_console_1

① 콘솔 화면 좌측 메뉴바의 All Products를 클릭합니다.

② 화면 중앙에 나타나는 상품들 중 Dev Tools > SourceDeploy를 클릭합니다.

배포 프로젝트 생성 버튼을 클릭하여 새로운 배포 프로젝트를 생성합니다.

  • 배포 프로젝트를 생성하기 위해서는 로그인한 계정이 고객 계정이거나, NCP_SOURCE_DEPLOY_MANAGER 권한 혹은 NCP_INFRA_MANAGER 권한을 가지고 있는 서브 계정이어야 합니다.
  • NCP_SOURCE_DEPLOY_MANAGER 권한 혹은 NCP_INFRA_MANAGER 권한은 콘솔의 Management > Sub Account 메뉴에서 할당할 수 있습니다.

④ SourceDeploy에 처음 접속하면 다음과 같은 문구가 표시됩니다.

  • 현재 생성된 배포 프로젝트가 없습니다. 배포 프로젝트 생성 버튼을 클릭하여 배포 프로젝트를 생성하세요.

배포 프로젝트 기본 설정

배포 프로젝트 생성에 필요한 정보를 입력합니다.

deploy_console_2

① 생성할 배포 프로젝트의 이름을 입력합니다.

배포 환경 설정

배포 환경을 설정합니다.

deploy_console_3

① 배포 Stage는 기본적으로 dev, test, real이 노출됩니다. 필요한 Stage를 설정하여 환경을 구성할 수 있습니다.

② 새로운 이름의 Stage를 생성할 수 있습니다.

③ 설정된 서버에는 SourceDeploy용 에이전트가 설치되어 있어야 합니다.(에이전트 설치 가이드 바로 가기)

④ Stage를 설정으로 변경하면 상세 정보를 설정할 수 있습니다.

  • 배포 타겟은 네이버 클라우드 플랫폼에서 생성한 서버 혹은 Auto Scaling 중 선택할 수 있습니다.
  • 현재 보유한 서버 혹은 Auto Scaling 리스트가 노출됩니다. 배포할 타겟을 선택합니다.
  • 서버 혹은 Auto Scaling은 네이버 클라우드 플랫폼의 각 상품에서 생성할 수 있습니다.
  • 배포 타겟이 Auto Scaling Group일 경우 해당 그룹에서 스케일 아웃 된 서버에 대해 자동 배포가 실행됩니다. (이전에 해당 Auto Scaling Group에 배포한 적이 있을 경우에만 실행됩니다.)

사용자 공유

배포 프로젝트를 공유할 사용자 및 배포 실행 관리자를 설정합니다.

deploy_console_4

① 선택한 빌드 프로젝트에 설정되어있는 서브 계정들이 테이블에 자동으로 추가됩니다.

② 배포 프로젝트를 공유할 사용자를 리스트에서 선택합니다.

  • 배포 프로젝트를 공유할 사용자는 서브 계정 중에서 선택할 수 있습니다. 서브 계정 사용자를 추가하기 위해서는 우선 Sub Account 메뉴에서 계정을 추가 등록하기 바랍니다.(Sub Account 이용 안내 바로 가기)

③ 공유할 사용자에게 할당할 접근 권한을 선택합니다. 접근 권한은 2가지입니다.

  • ADMIN: 배포 프로젝트 설정 변경/삭제, Stage, 시나리오 생성/설정 변경/삭제 및 배포 실행권한을 포함합니다.
  • USER: 배포 프로젝트, Stage, 시나리오 조회 및 배포 실행권한을 포함합니다.

④ 배포 실행에 대한 승인 절차가 필요하다면 배포 실행 관리자를 설정합니다.

  • 배포 실행 관리자를 설정하면 해당 Stage에서 발생하는 배포는 배포 실행 관리자로부터 승인을 받아야 실행됩니다.
  • 배포 실행 관리자는 사용자 공유에 추가된 서브 계정 및 고객 계정 중에서 선택할 수 있습니다.

⑤ 배포 승인 프로세스를 적용할 Stage를 선택합니다.

  • Stage는 step 2.배포 환경 설정 단계에서 설정한 Stage 중에서 선택할 수 있습니다.

⑥ 배포를 실행시킬 배포 승인에 필요한 최소 인원을 선택합니다.

  • 1명: 최소 한 명의 배포 실행 관리자로부터 승인을 받으면 배포가 실행됩니다.
  • 모두: 설정된 모든 배포 실행 관리자로부터 승인을 받으면 배포가 실행됩니다.

배포 프로젝트 최종 확인

배포 프로젝트 생성을 완료합니다.

deploy_console_5

① 이전 단계에서 설정한 배포 프로젝트 정보를 확인합니다.

배포 프로젝트 생성 버튼을 클릭하여 생성을 완료합니다.

배포 시나리오 생성하기

배포 시나리오 생성

deploy_console_6

① 생성된 배포 프로젝트를 선택합니다.

배포 시나리오 생성 버튼을 클릭합니다.

  • 배포 시나리오를 생성하기 위해서는 로그인한 계정이 고객 계정이거나, NCP_INFRA_MANAGER 권한 혹은 선택한 배포 프로젝트에 대해 ADMIN 권한을 가지고 있는 서브계정이어야 합니다.
  • NCP_INFRA_MANAGER 권한은 콘솔의 Management > Sub Account 메뉴에서 할당할 수 있습니다.

배포 시나리오 기본 설정

deploy_console_7

① 선택한 배포 프로젝트입니다.

② 선택한 배포 stage입니다.

③ 생성할 배포 시나리오의 이름을 입력합니다.

④ 생성할 배포 시나리오의 설명을 입력합니다.

배포 파일 설정

deploy_console_8

① 배포할 파일을 선택합니다.

  • SourceBuild: 선택된 빌드 프로젝트의 가장 마지막 빌드 결과를 조회하여 해당 빌드 결과물을 자동으로 배포합니다. 만약 가장 마지막 빌드 결과가 실패이거나 빌드 결과물을 업로드하지 않았을 경우에는 배포가 실행되지 않습니다.
  • Object Storage: 보유한 Object Storage 내의 버킷 중에서 배포 파일을 선택합니다. 배포 파일은 zip 포맷으로 압축된 파일만 배포할 수 있습니다.
  • 나중에 설정: 배포 파일을 나중에 설정할 수 있습니다.

배포 명령어 설정

deploy_console_9

① 배포 전에 서버에서 실행할 명령어를 설정합니다. 여러 개를 입력할 수 있으며, 순차적으로 실행됩니다.

  • 실행 계정: 명령어를 수행할 서버 계정을 입력합니다.
  • 실행 명령: 서버에서 실행할 명령어를 입력합니다.

② 파일의 배포할 경로를 설정합니다. 여러 개를 입력할 수 있으며, 순차적으로 배포됩니다.

  • 소스 파일 경로: 배포할 파일 경로를 입력합니다. 경로는 배포 파일을 기준으로 작성합니다.
  • 배포 파일 경로: 배포할 서버 경로를 입력합니다. 서버의 전체 경로를 작성합니다.
  • 배포 파일을 '나중에 설정'하거나 SourceBuild 마지막 빌드 결과물이 없을 경우에는 메시지가 노출됩니다.

③ 배포 후 서버에서 실행할 명령어를 설정합니다. 여러 개를 입력할 수 있으며, 순차적으로 실행됩니다.

  • 실행 계정: 명령어를 수행할 서버 계정을 입력합니다.
  • 실행 명령: 서버에서 실행할 명령어를 입력합니다.

④ 롤백을 사용하면 배포가 실패했을 경우 자동으로 이전 버전으로 롤백합니다.

  • 롤백은 해당 Stage를 기준으로 마지막으로 성공한 배포를 재실행시킴으로써 롤백이 진행됩니다.
  • 이전에 배포했던 파일이 Object Storage에 존재하지 않거나, 마지막 성공 배포가 없을 경우에는 롤백이 실패됩니다.

배포 시나리오 최종 확인

배포 시나리오 생성을 완료합니다.

deploy_console_10

① 이전 단계에서 설정한 배포 시나리오 정보를 확인합니다.

배포 시나리오 생성 버튼을 클릭하여 생성을 완료합니다.

배포 실행하기 (배포 실행 관리자가 설정되어있지 않은 경우)

배포 프로젝트 선택

deploy_console_11

① 배포 프로젝트 이름을 선택하여 배포 실행 페이지로 이동합니다.

배포로 이동 버튼을 클릭하여 배포 실행 페이지로 이동합니다.

배포 시나리오 선택 및 배포 실행

deploy_console_12

① 배포를 실행할 배포 시나리오를 선택합니다.

② 배포 시나리오의 기본 정보 및 배포 환경을 확인할 수 있습니다.

③ 배포 시나리오에 설정된 배포 설정(배포 파일, 배포 명령어, 롤백 여부)을 확인하고 변경할 수 있습니다.

  • 해당 페이지에서 변경된 배포 설정은 저장되지 않으며, 해당 배포에서 한 번만 적용됩니다.

배포 시작하기 버튼을 클릭하여 배포를 실행합니다.

배포 로그 확인

deploy_console_13

① 배포를 실행하면 작업 결과 페이지로 이동합니다.

② 실행한 배포의 상태를 확인할 수 있습니다.

③ 설정한 명령어가 서버에서 수행되면서 발생하는 로그를 확인할 수 있습니다.

  • 배포 로그는 배포 서버의 아래 경로에 저장됩니다. 아래 경로를 삭제하면 배포 로그를 확인할 수 없습니다.
/var/sourcedeploy/log
  • 배포 로그는 최대 30일까지 저장합니다.

④ 배포를 중간에 취소할 수 있습니다.

  • 배포를 취소하면 현재 실행 중인 단계까지 진행되고 이후 단계는 진행되지 않습니다.

배포 실행하기 (배포 실행 관리자가 설정된 경우)

배포 프로젝트 선택

deploy_console_14

① 배포 프로젝트 이름을 선택하여 배포 실행 페이지로 이동합니다..

배포로 이동 버튼을 클릭하여 배포 실행 페이지로 이동합니다.

배포 시나리오 선택 및 배포 승인 요청

deploy_console_15

① 배포를 실행할 배포 시나리오를 선택합니다.

② 배포 시나리오의 기본 정보 및 배포 환경을 확인할 수 있습니다.

③ 배포 시나리오에 설정된 배포 설정(배포 파일, 배포 명령어, 롤백 여부)을 확인하고 변경할 수 있습니다.

  • 해당 페이지에서 변경된 배포 설정은 저장되지 않으며, 해당 배포에서 한 번만 적용됩니다.

배포 승인 요청 버튼을 클릭하여 배포 실행을 배포 실행 관리자에게 요청합니다.

  • 해당 배포는 설정된 배포 승인 최소 인원이 만족되면 자동으로 배포가 실행됩니다.

배포 승인 상태 확인 (배포 실행 관리자가 아닌 계정)

deploy_console_16

작업 결과 페이지로 이동합니다.

② 승인 요청한 배포의 확인 버튼을 클릭합니다.

③ 승인 요청한 배포의 승인 상태를 확인할 수 있습니다.

배포 승인 혹은 거절하기 (배포 실행 관리자 계정)

deploy_console_17

작업 결과 페이지로 이동합니다.

② 승인이 필요한 배포의 승인 버튼을 클릭합니다.

③ 승인이 필요한 배포의 정보 확인 및 해당 배포의 승인 혹은 거절을 선택할 수 있습니다.

  • 해당 배포는 설정된 배포 승인 최소 인원이 만족되면 자동으로 배포가 실행됩니다.

설정 변경하기

배포 프로젝트 설정 변경

deploy_console_18

① 설정을 변경할 배포 프로젝트를 선택합니다.

설정 변경 버튼을 클릭합니다.

  • 배포 프로젝트 설정을 변경하기 위해서는 로그인한 계정이 고객 계정이거나, NCP_INFRA_MANAGER 권한 혹은 선택한 배포 프로젝트에 대해 ADMIN 권한을 가지고 있는 서브계정이어야 합니다.
  • NCP_INFRA_MANAGER 권한은 콘솔의 Management > Sub Account 메뉴에서 할당할 수 있습니다.

deploy_console_19

③ 선택한 빌드 프로젝트에 설정되어있는 서브 계정들이 자동으로 추가됩니다.

④ 배포 프로젝트를 사용할 사용자를 변경할 수 있습니다.

⑤ 배포 실행 관리자와 관련된 사용자를 변경할 수 있습니다.

⑥ 변경 사항을 적용합니다.

배포 Stage 설정 변경

deploy_console_20

① 설정을 변경할 배포 Stage를 선택합니다.

설정 변경 버튼을 클릭합니다.

  • 배포 Stage 설정을 변경하기 위해서는 로그인한 계정이 고객 계정이거나, NCP_INFRA_MANAGER 권한 혹은 선택한 배포 프로젝트에 대해 ADMIN 권한을 가지고 있는 서브계정이어야 합니다.
  • NCP_INFRA_MANAGER 권한은 콘솔의 Management > Sub Account 메뉴에서 할당할 수 있습니다.

deploy_console_21

③ 배포 Stage에 설정된 배포 환경을 변경할 수 있습니다.

④ 변경 사항을 적용합니다.

배포 시나리오 설정 변경

deploy_console_22

① 설정을 변경할 배포 시나리오를 선택합니다.

설정 변경 버튼을 클릭합니다.

  • 배포 시나리오 설정은 변경하기 위해서는 로그인한 계정이 고객 계정이거나, NCP_INFRA_MANAGER 권한 혹은 선택한 배포 프로젝트에 대해 ADMIN 권한을 가지고 있는 서브계정이어야 합니다.
  • NCP_INFRA_MANAGER 권한은 콘솔의 Management > Sub Account 메뉴에서 할당할 수 있습니다.

deploy_console_23

③ 배포 시나리오 설명을 변경할 수 있습니다.

④ 배포 파일을 변경할 수 있습니다.

⑤ 배포 명령어를 변경할 수 있습니다.

⑥ 배포 실패 시 롤백 진행 여부를 변경할 수 있습니다.

⑦ 변경 사항을 적용합니다.

삭제하기

배포 프로젝트 삭제

deploy_console_24

① 삭제할 배포 프로젝트를 선택합니다.

[삭제] 버튼을 클릭합니다.

  • 배포 프로젝트를 삭제하기 위해서는 로그인한 계정이 고객 계정이거나, NCP_INFRA_MANAGER 권한 혹은 선택한 배포 프로젝트에 대해 ADMIN 권한을 가지고 있는 서브계정이어야 합니다.
  • NCP_INFRA_MANAGER 권한은 콘솔의 Management > Sub Account 메뉴에서 할당할 수 있습니다.
  • 선택한 배포 프로젝트 내에서 배포가 진행되고 있는 경우에는 삭제가 되지 않습니다. 진행되고 있는 배포가 없는 경우에만 배포 프로젝트를 삭제할 수 있습니다.

배포 Stage 삭제

deploy_console_25

① 삭제할 배포 Stage를 선택합니다.

[삭제] 버튼을 클릭합니다.

  • 배포 Stage를 삭제하기 위해서는 로그인한 계정이 고객 계정이거나, NCP_INFRA_MANAGER 권한 혹은 선택한 배포 프로젝트에 대해 ADMIN 권한을 가지고 있는 서브계정이어야 합니다.
  • NCP_INFRA_MANAGER 권한은 콘솔의 Management > Sub Account 메뉴에서 할당할 수 있습니다.
  • 선택한 배포 프로젝트 내에서 배포가 진행되고 있는 경우에는 삭제가 되지 않습니다. 진행되고 있는 배포가 없는 경우에만 배포 프로젝트를 삭제할 수 있습니다.

배포 시나리오 삭제

deploy_console_26

① 삭제할 배포 시나리오를 선택합니다.

[삭제] 버튼을 클릭합니다.

  • 배포 시나리오를 삭제하기 위해서는 로그인한 계정이 고객 계정이거나, NCP_INFRA_MANAGER 권한 혹은 선택한 배포 프로젝트에 대해 ADMIN 권한을 가지고 있는 서브계정이어야 합니다.
  • NCP_INFRA_MANAGER 권한은 콘솔의 Management > Sub Account 메뉴에서 할당할 수 있습니다.
  • 선택한 배포 프로젝트 내에서 배포가 진행되고 있는 경우에는 삭제가 되지 않습니다. 진행되고 있는 배포가 없는 경우에만 배포 프로젝트를 삭제할 수 있습니다.

연관 정보 바로 가기

아래 가이드에서 연관 정보를 확인할 수 있습니다.

""에 대한 건이 검색되었습니다.

    ""에 대한 검색 결과가 없습니다.

    처리중...