멀티 클라우드 지속형 딜리버리 플랫폼 "Spinnaker 1.0"을 설치해 보았습니다.
■ 1. 소개
Spinnaker 1.0이 출시되었으므로, 만져 보려고 설치해 보았습니다.
이때 1.0에서 추가된 기능 「Halyard」를 사용했으므로, 순서를 기술합니다.
Spinnaker란?
・Spinnaker 홈페이지
htps //w w. s 핀아케 r. 이오/
・Spinnaker의 설명이 기재되어 있는 페이지
htps : // c ぉ dp t t rm jp. 오 g b b g. 이 m/2017/06/s 핀아케 r-10-안녕하세요 s-로 ゃゔぇry. HTML
■ 2. Halyard란?
간략하게 설명하면 Spinnaker 설치, 업데이트 및 구성 변경을 지원하는 CLI 도구입니다. 후술하지만, Halyard를 이용하여 Spinnaker를 쉽게 설치할 수 있습니다.
■ 3. Halyard에서 설치해보기
이번 설치는 GCP로 시작한 인스턴스에서 수행되었습니다.
이 절차는 Spinnaker가 게시한 문서대로 수행합니다.
· 인스턴스 만들기
영역: 모든 지역
OS: 우분투 14.04
머신 타입:vCPU×4(메모리 26GB, n1-highmem-4)
액세스 범위: 모든 Cloud API에 대한 전체 액세스 권한 허용
방화벽: HTTP 트래픽 허용/HTTPS 트래픽 허용
· Google SDK 인증
자세한 내용은 생략하지만 Spinnaker를 설치하는 인스턴스에서 다음 명령을 사용하여 인증합니다.
$ gcloud auth login
$ gcloud config set project "GCPのプロジェクト名"
· Halyard 설치
$ curl -O https://raw.githubusercontent.com/spinnaker/halyard/master/install/stable/InstallHalyard.sh
$ sudo bash InstallHalyard.sh
"Halyardのバージョンが最新であることを確認"
$ hal -v
$ . ~/.bashrc
$ sudo apt-get update
$ sudo apt-get upgrade spinnaker-halyard
· Halyard 설치 유형 선택
"HalyardをインストールしたサーバでSpinnakerをインストールすることを選択"
$ hal config deploy edit --type localdebian
· 스토리지 설정 (이번에는 Google Cloud Storage 선택)
$ SERVICE_ACCOUNT_NAME=spinnaker-gcs-account
$ SERVICE_ACCOUNT_DEST=~/.gcp/gcs-account.json
$ gcloud iam service-accounts create \
> $SERVICE_ACCOUNT_NAME \
> --display-name $SERVICE_ACCOUNT_NAME
$ SA_EMAIL=$(gcloud iam service-accounts list \
> --filter="displayName:$SERVICE_ACCOUNT_NAME" \
> --format='value(email)')
$ gcloud projects add-iam-policy-binding "自分のプロジェクト名" \
> --role roles/storage.admin --member serviceAccount:$SA_EMAIL
$ mkdir -p $(dirname $SERVICE_ACCOUNT_DEST)
$ gcloud iam service-accounts keys create $SERVICE_ACCOUNT_DEST \
> --iam-account $SA_EMAIL
$ hal config storage gcs edit --project "自分のプロジェクト名" \
> --bucket-location "バケットのロケーション" \
> --json-path $SERVICE_ACCOUNT_DEST
$ hal config storage edit --type gcs
:
+ Successfully edited persistent storage.
· Spinnaker에게 Google Compute Engine 운영 권한 부여
$ SERVICE_ACCOUNT_NAME=spinnaker-gce-account
$ SERVICE_ACCOUNT_DEST=~/.gcp/gce-account.json
$ gcloud iam service-accounts create \
> $SERVICE_ACCOUNT_NAME \
> --display-name $SERVICE_ACCOUNT_NAME
$ SA_EMAIL=$(gcloud iam service-accounts list \
> --filter="displayName:$SERVICE_ACCOUNT_NAME" \
> --format='value(email)')
$ gcloud projects add-iam-policy-binding "自分のプロジェクト名" \
> --member serviceAccount:$SA_EMAIL \
> --role roles/compute.instanceAdmin
$ gcloud projects add-iam-policy-binding "自分のプロジェクト名" \
> --member serviceAccount:$SA_EMAIL \
> --role roles/compute.networkAdmin
$ gcloud projects add-iam-policy-binding "自分のプロジェクト名" \
> --member serviceAccount:$SA_EMAIL \
> --role roles/compute.securityAdmin
$ gcloud projects add-iam-policy-binding "自分のプロジェクト名" \
> --member serviceAccount:$SA_EMAIL \
> --role roles/compute.storageAdmin
$ gcloud projects add-iam-policy-binding "自分のプロジェクト名" \
> --member serviceAccount:$SA_EMAIL \
> --role roles/iam.serviceAccountActor
$ mkdir -p $(dirname $SERVICE_ACCOUNT_DEST)
$ gcloud iam service-accounts keys create $SERVICE_ACCOUNT_DEST \
> --iam-account $SA_EMAIL
$ hal config provider google enable
$ hal config provider google account add my-gce-account --project "自分のプロジェクト名" \
> --json-path $SERVICE_ACCOUNT_DEST
:
+ Successfully added account my-gce-account for provider
google.
· 배포
$ hal version list
:
? Options include:
- X.X.X "Spinnakerのバージョンをメモする。"
$ hal config version edit --version "Spinnakerのバージョン"
$ sudo hal deploy apply
:
spinnaker start/running
"Spinnakerプロセスが起動していることを確認"
$ status spinnaker
spinnaker start/running
· 포트 포워드
Spinnaker GUI는 localhost의 9000번으로 시작합니다. 따라서 9000번 포트로 포트 포워드합니다.
(Spinnaker의 사양상, 8084번, 8087번도 아울러 포트 포워드할 필요가 있습니다.)
한 가지 예로 Google Cloud SDK를 사용하는 방법을 소개합니다.
먼저 로컬 컴퓨터(이번에는 Windows)에 Google Cloud SDK를 설치합니다.
htps : // c ぉ d. 오, ぇ. 이 m/sdk/? hl = 그럼
그런 다음 설치된 Google Cloud SDK Shell을 열고 다음 명령을 입력합니다.
> gcloud auth login
> gcloud config set project "GCPのプロジェクト名"
> gcloud compute ssh --ssh-flag="-L" --ssh-flag="9000:localhost:9000" --ssh-flag="-L" --ssh-flag="8084:localhost:8084" --ssh-flag="-L" --ssh-flag="8087:localhost:8087" --project="自分のプロジェクト名" --zone="インスタンスのリージョン" "インスタンス名"
■ 4. Spinnaker에 연결해 본다
브라우저에 http://localhost:9000을 입력하여 연결합니다.
GUI에 연결할 수 있으면 오른쪽 상단의 Actions 풀 탭에서 Application 등의 설정을 할 수 있습니다.
Bake와 Deploy도 실시할 수 있었습니다!
■ 5. 덤
Halyard를 사용하여 Spinnaker를 모니터링하는 도구 Prometheus를 쉽게
설치할 수도 있습니다. 흥미있는 분은, 꼭 시험해 보세요.
htps //w w. s 핀아케 r. 이오 / 세츠 p / 모토 린 g / p 어리석은 s /
Reference
이 문제에 관하여(멀티 클라우드 지속형 딜리버리 플랫폼 "Spinnaker 1.0"을 설치해 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/mztk/items/c45497ddc78be146dbb2
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
간략하게 설명하면 Spinnaker 설치, 업데이트 및 구성 변경을 지원하는 CLI 도구입니다. 후술하지만, Halyard를 이용하여 Spinnaker를 쉽게 설치할 수 있습니다.
■ 3. Halyard에서 설치해보기
이번 설치는 GCP로 시작한 인스턴스에서 수행되었습니다.
이 절차는 Spinnaker가 게시한 문서대로 수행합니다.
· 인스턴스 만들기
영역: 모든 지역
OS: 우분투 14.04
머신 타입:vCPU×4(메모리 26GB, n1-highmem-4)
액세스 범위: 모든 Cloud API에 대한 전체 액세스 권한 허용
방화벽: HTTP 트래픽 허용/HTTPS 트래픽 허용
· Google SDK 인증
자세한 내용은 생략하지만 Spinnaker를 설치하는 인스턴스에서 다음 명령을 사용하여 인증합니다.
$ gcloud auth login
$ gcloud config set project "GCPのプロジェクト名"
· Halyard 설치
$ curl -O https://raw.githubusercontent.com/spinnaker/halyard/master/install/stable/InstallHalyard.sh
$ sudo bash InstallHalyard.sh
"Halyardのバージョンが最新であることを確認"
$ hal -v
$ . ~/.bashrc
$ sudo apt-get update
$ sudo apt-get upgrade spinnaker-halyard
· Halyard 설치 유형 선택
"HalyardをインストールしたサーバでSpinnakerをインストールすることを選択"
$ hal config deploy edit --type localdebian
· 스토리지 설정 (이번에는 Google Cloud Storage 선택)
$ SERVICE_ACCOUNT_NAME=spinnaker-gcs-account
$ SERVICE_ACCOUNT_DEST=~/.gcp/gcs-account.json
$ gcloud iam service-accounts create \
> $SERVICE_ACCOUNT_NAME \
> --display-name $SERVICE_ACCOUNT_NAME
$ SA_EMAIL=$(gcloud iam service-accounts list \
> --filter="displayName:$SERVICE_ACCOUNT_NAME" \
> --format='value(email)')
$ gcloud projects add-iam-policy-binding "自分のプロジェクト名" \
> --role roles/storage.admin --member serviceAccount:$SA_EMAIL
$ mkdir -p $(dirname $SERVICE_ACCOUNT_DEST)
$ gcloud iam service-accounts keys create $SERVICE_ACCOUNT_DEST \
> --iam-account $SA_EMAIL
$ hal config storage gcs edit --project "自分のプロジェクト名" \
> --bucket-location "バケットのロケーション" \
> --json-path $SERVICE_ACCOUNT_DEST
$ hal config storage edit --type gcs
:
+ Successfully edited persistent storage.
· Spinnaker에게 Google Compute Engine 운영 권한 부여
$ SERVICE_ACCOUNT_NAME=spinnaker-gce-account
$ SERVICE_ACCOUNT_DEST=~/.gcp/gce-account.json
$ gcloud iam service-accounts create \
> $SERVICE_ACCOUNT_NAME \
> --display-name $SERVICE_ACCOUNT_NAME
$ SA_EMAIL=$(gcloud iam service-accounts list \
> --filter="displayName:$SERVICE_ACCOUNT_NAME" \
> --format='value(email)')
$ gcloud projects add-iam-policy-binding "自分のプロジェクト名" \
> --member serviceAccount:$SA_EMAIL \
> --role roles/compute.instanceAdmin
$ gcloud projects add-iam-policy-binding "自分のプロジェクト名" \
> --member serviceAccount:$SA_EMAIL \
> --role roles/compute.networkAdmin
$ gcloud projects add-iam-policy-binding "自分のプロジェクト名" \
> --member serviceAccount:$SA_EMAIL \
> --role roles/compute.securityAdmin
$ gcloud projects add-iam-policy-binding "自分のプロジェクト名" \
> --member serviceAccount:$SA_EMAIL \
> --role roles/compute.storageAdmin
$ gcloud projects add-iam-policy-binding "自分のプロジェクト名" \
> --member serviceAccount:$SA_EMAIL \
> --role roles/iam.serviceAccountActor
$ mkdir -p $(dirname $SERVICE_ACCOUNT_DEST)
$ gcloud iam service-accounts keys create $SERVICE_ACCOUNT_DEST \
> --iam-account $SA_EMAIL
$ hal config provider google enable
$ hal config provider google account add my-gce-account --project "自分のプロジェクト名" \
> --json-path $SERVICE_ACCOUNT_DEST
:
+ Successfully added account my-gce-account for provider
google.
· 배포
$ hal version list
:
? Options include:
- X.X.X "Spinnakerのバージョンをメモする。"
$ hal config version edit --version "Spinnakerのバージョン"
$ sudo hal deploy apply
:
spinnaker start/running
"Spinnakerプロセスが起動していることを確認"
$ status spinnaker
spinnaker start/running
· 포트 포워드
Spinnaker GUI는 localhost의 9000번으로 시작합니다. 따라서 9000번 포트로 포트 포워드합니다.
(Spinnaker의 사양상, 8084번, 8087번도 아울러 포트 포워드할 필요가 있습니다.)
한 가지 예로 Google Cloud SDK를 사용하는 방법을 소개합니다.
먼저 로컬 컴퓨터(이번에는 Windows)에 Google Cloud SDK를 설치합니다.
htps : // c ぉ d. 오, ぇ. 이 m/sdk/? hl = 그럼
그런 다음 설치된 Google Cloud SDK Shell을 열고 다음 명령을 입력합니다.
> gcloud auth login
> gcloud config set project "GCPのプロジェクト名"
> gcloud compute ssh --ssh-flag="-L" --ssh-flag="9000:localhost:9000" --ssh-flag="-L" --ssh-flag="8084:localhost:8084" --ssh-flag="-L" --ssh-flag="8087:localhost:8087" --project="自分のプロジェクト名" --zone="インスタンスのリージョン" "インスタンス名"
■ 4. Spinnaker에 연결해 본다
브라우저에 http://localhost:9000을 입력하여 연결합니다.
GUI에 연결할 수 있으면 오른쪽 상단의 Actions 풀 탭에서 Application 등의 설정을 할 수 있습니다.
Bake와 Deploy도 실시할 수 있었습니다!
■ 5. 덤
Halyard를 사용하여 Spinnaker를 모니터링하는 도구 Prometheus를 쉽게
설치할 수도 있습니다. 흥미있는 분은, 꼭 시험해 보세요.
htps //w w. s 핀아케 r. 이오 / 세츠 p / 모토 린 g / p 어리석은 s /
Reference
이 문제에 관하여(멀티 클라우드 지속형 딜리버리 플랫폼 "Spinnaker 1.0"을 설치해 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/mztk/items/c45497ddc78be146dbb2
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ gcloud auth login
$ gcloud config set project "GCPのプロジェクト名"
$ curl -O https://raw.githubusercontent.com/spinnaker/halyard/master/install/stable/InstallHalyard.sh
$ sudo bash InstallHalyard.sh
"Halyardのバージョンが最新であることを確認"
$ hal -v
$ . ~/.bashrc
$ sudo apt-get update
$ sudo apt-get upgrade spinnaker-halyard
"HalyardをインストールしたサーバでSpinnakerをインストールすることを選択"
$ hal config deploy edit --type localdebian
$ SERVICE_ACCOUNT_NAME=spinnaker-gcs-account
$ SERVICE_ACCOUNT_DEST=~/.gcp/gcs-account.json
$ gcloud iam service-accounts create \
> $SERVICE_ACCOUNT_NAME \
> --display-name $SERVICE_ACCOUNT_NAME
$ SA_EMAIL=$(gcloud iam service-accounts list \
> --filter="displayName:$SERVICE_ACCOUNT_NAME" \
> --format='value(email)')
$ gcloud projects add-iam-policy-binding "自分のプロジェクト名" \
> --role roles/storage.admin --member serviceAccount:$SA_EMAIL
$ mkdir -p $(dirname $SERVICE_ACCOUNT_DEST)
$ gcloud iam service-accounts keys create $SERVICE_ACCOUNT_DEST \
> --iam-account $SA_EMAIL
$ hal config storage gcs edit --project "自分のプロジェクト名" \
> --bucket-location "バケットのロケーション" \
> --json-path $SERVICE_ACCOUNT_DEST
$ hal config storage edit --type gcs
:
+ Successfully edited persistent storage.
$ SERVICE_ACCOUNT_NAME=spinnaker-gce-account
$ SERVICE_ACCOUNT_DEST=~/.gcp/gce-account.json
$ gcloud iam service-accounts create \
> $SERVICE_ACCOUNT_NAME \
> --display-name $SERVICE_ACCOUNT_NAME
$ SA_EMAIL=$(gcloud iam service-accounts list \
> --filter="displayName:$SERVICE_ACCOUNT_NAME" \
> --format='value(email)')
$ gcloud projects add-iam-policy-binding "自分のプロジェクト名" \
> --member serviceAccount:$SA_EMAIL \
> --role roles/compute.instanceAdmin
$ gcloud projects add-iam-policy-binding "自分のプロジェクト名" \
> --member serviceAccount:$SA_EMAIL \
> --role roles/compute.networkAdmin
$ gcloud projects add-iam-policy-binding "自分のプロジェクト名" \
> --member serviceAccount:$SA_EMAIL \
> --role roles/compute.securityAdmin
$ gcloud projects add-iam-policy-binding "自分のプロジェクト名" \
> --member serviceAccount:$SA_EMAIL \
> --role roles/compute.storageAdmin
$ gcloud projects add-iam-policy-binding "自分のプロジェクト名" \
> --member serviceAccount:$SA_EMAIL \
> --role roles/iam.serviceAccountActor
$ mkdir -p $(dirname $SERVICE_ACCOUNT_DEST)
$ gcloud iam service-accounts keys create $SERVICE_ACCOUNT_DEST \
> --iam-account $SA_EMAIL
$ hal config provider google enable
$ hal config provider google account add my-gce-account --project "自分のプロジェクト名" \
> --json-path $SERVICE_ACCOUNT_DEST
:
+ Successfully added account my-gce-account for provider
google.
$ hal version list
:
? Options include:
- X.X.X "Spinnakerのバージョンをメモする。"
$ hal config version edit --version "Spinnakerのバージョン"
$ sudo hal deploy apply
:
spinnaker start/running
"Spinnakerプロセスが起動していることを確認"
$ status spinnaker
spinnaker start/running
> gcloud auth login
> gcloud config set project "GCPのプロジェクト名"
> gcloud compute ssh --ssh-flag="-L" --ssh-flag="9000:localhost:9000" --ssh-flag="-L" --ssh-flag="8084:localhost:8084" --ssh-flag="-L" --ssh-flag="8087:localhost:8087" --project="自分のプロジェクト名" --zone="インスタンスのリージョン" "インスタンス名"
브라우저에 http://localhost:9000을 입력하여 연결합니다.
GUI에 연결할 수 있으면 오른쪽 상단의 Actions 풀 탭에서 Application 등의 설정을 할 수 있습니다.
Bake와 Deploy도 실시할 수 있었습니다!
■ 5. 덤
Halyard를 사용하여 Spinnaker를 모니터링하는 도구 Prometheus를 쉽게
설치할 수도 있습니다. 흥미있는 분은, 꼭 시험해 보세요.
htps //w w. s 핀아케 r. 이오 / 세츠 p / 모토 린 g / p 어리석은 s /
Reference
이 문제에 관하여(멀티 클라우드 지속형 딜리버리 플랫폼 "Spinnaker 1.0"을 설치해 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/mztk/items/c45497ddc78be146dbb2
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(멀티 클라우드 지속형 딜리버리 플랫폼 "Spinnaker 1.0"을 설치해 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/mztk/items/c45497ddc78be146dbb2텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)