펌 - 출처 : GCP qwiklabs
Cloud Shell 시작
GCP Console의 오른쪽 상단에 있는 아이콘을 클릭하여 Cloud Shell 세션 오픈
Cloud Shell을 시작
- Cloud Shell이 활성화되면 명령줄을 사용하여 Cloud SDK gcloud 명령어나 가상 머신 인스턴스에서 사용할 수 있는 다른 도구 호출 가능
- $HOME 디렉터리는 본인에게만 공개되며 다른 사용자는 액세스할 수 없음
리전 및 영역의 이해
- 리전(resion): 리소스를 실행할 수 있는 특정 지리적 위치
- 각 리전에는 하나 이상의 영역(zone) 有
- 예: us-central1 리전은 us-central1-a, us-central1-b, us-central1-c 및 us-central1-f 영역이 있는 미국 중부의 리전
- 영역별 리소스 : 영역 내에 상주하는 리소스
- 영구 디스크를 가상 머신 인스턴스에 연결하려면 두 리소스가 모두 같은 영역에 있어야 하며, 인스턴스에 정적 IP 주소를 할당하려는 경우 인스턴스가 정적 IP와 같은 리전에 있어야 함
- 참고 : 리전 및 영역 문서
- 기본 리전 & 영역 설정
google-compute-default-zone google-compute-default-region
기본 리전 및 영역 설정을 확인하려면 gcloud 명령어 실행
※ <your_project_id>부분에 본인의 프로젝트 ID 입력
gcloud compute project-info describe --project <your_project_ID>
응답에서 google-compute-default-region 및 google-compute-default-zone 키와 값이 누락되면 기본 영역이나 리전이 설정되지 않은 것
Cloud SDK 초기화
- gcloud CLI는 Google Cloud SDK에 포함
-시스템에 SDK를 다운로드하고 설치한 후 gcloud init을 실행하여 SDK를 초기화하면 gcloud 명령줄 도구 사용 가능
- gcloud CLI는 Cloud Shell에서 자동 제공
환경 변수 설정
프로젝트 ID 환경 변수 설정
export PROJECT_ID=<your_project_ID>
ZONE 환경 변수 설정
export ZONE=<your_zone>
변수 설정 확인
echo $PROJECT_ID
echo $ZONE
gcloud를 사용하여 가상 머신 만들기
- gcloud를 사용하여 새로운 가상 머신 인스턴스 생성
- gcloud compute : Compute Engine API를 사용할 때보다 익숙한 형식으로 Google Compute Engine 리소스 관리 가능
- instances create : 새 인스턴스 생성
가상머신 생성
- 가상 머신의 이름 : 'gcelab2'
- 머신 유형 : 'n1-standard-2' / --machine-type 플래그 사용
- 영역 설정 : --zone 플래그 사용
gcloud compute instances create gcelab2 --machine-type n1-standard-2 --zone $ZONE
(결과)
※ --zone 플래그 생략시, gcloud가 기본 속성 기준으로 원하는 영역 설정. 머신 유형 및 이미지와 같은 기타 필수 인스턴스 설정은 create 명령어에 지정되지 않은 경우 기본값으로 설정됨.
create 명령어 : 도움말 표시
gcloud compute instances create --help
gcloud 명령어 사용
- gcloud 사용 시 gcloud 호출 명령어의 끝에 -h 플래그를 추가하면 사용 안내가 표기됨.
gcloud -h
더 상세한 도움말을 확인하려면 --help 플래그를 추가하거나 gcloud help 명령어를 실행
gcloud config --help
도움말 콘텐츠를 스크롤하려면 Enter 키나 스페이스바, 표시된 콘텐츠에서 나가려면 q 입력
gcloud help config
- 상세 도움말 표시 : gcloud config --help 또는 gcloud help config
- gcloud 전역 플래그는 호출 레벨에 따른 명령어 동작 제어. 플래그는 SDK 속성에서 설정된 모든 값을 재정의
환경에서 구성 목록 확인
gcloud config list
다른 설정 속성 확인
gcloud config list --all
컴포넌트 리스트 확인
gcloud components list
자동 완성
- gcloud interactive는 명령어 및 플래그를 자동으로 추천, 명령어 입력 시 하단에 인라인 도움말 스니펫을 표시
- 드롭다운 메뉴 : 명령어/하위 명령어 이름과 같은 정적 정보와 플래그 이름 및 열거형 플래그 값을 자동 완성 가능
베타 구성요소 설치
gcloud components install beta
gcloud interactive 모드로 전환
gcloud beta interactive
- 대화형 모드를 사용하는 경우 Tab 키를 클릭하여 파일 경로 및 리소스 인수 입력
- 드롭다운 메뉴가 나타나면 Tab 키를 사용하여 목록을 이동하고 스페이스바를 사용하여 원하는 항목을 선택
gcloud compute instances describe <your_vm>
- Cloud Shell 하단에 이 기능을 설정하는 단축키가 표시됨. 여기에서 F2 토글 가능.
- F2:help:STATE를 통해 활성 도움말 섹션(ON: 사용, OFF: 사용 중지)을 전환
VM 인스턴스에 SSH 사용
- gcloud compute : 인스턴스에 연결
- gcloud compute ssh : SSH에 래퍼 기능을 제공하여 인증 및 인스턴스 이름과 IP 주소의 매핑을 처리
gcloud compute ssh를 사용하여 가상 머신에 SSH를 사용
gcloud compute ssh gcelab2 --zone $ZONE
(결과)
WARNING: The public SSH key file for gcloud does not exist. WARNING: The private SSH key file for gcloud does not exist. WARNING: You do not have an SSH key for gcloud. WARNING: [/usr/bin/ssh-keygen] will be executed to generate a key. This tool needs to create the directory [/home/gcpstaging306_student/.ssh] before being able to generate SSH Keys.
'Y' 입력
Do you want to continue? (Y/n)
암호 섹션에서는 암호 입력 후 Enter 키를 눌러 암호 설정 (그냥 Enter를 누르면 암호가 공백으로 설정됨)
Generating public/private rsa key pair. Enter passphrase (empty for no passphrase)
'exit'를 입력하면 원격 셸이 종료되어 SSH 연결 종료
exit
홈 디렉터리 사용
- Cloud Shell 홈 디렉터리의 콘텐츠는 가상 머신을 종료했다가 다시 시작해도 모든 Cloud Shell 세션의 프로젝트에서 유지됨
현재 작업 디렉터리 변경
cd $HOME
vi 텍스트 편집기를 사용하여 .bashrc 구성 파일 오픈
vi ./.bashrc
편집기가 열리면서 파일 콘텐츠가 표시됨. ESC 키를 누른 후 :wq를 입력하여 편집기를 종료.
'Biusiness Insight > Computer Science' 카테고리의 다른 글
[구글 클라우드 플랫폼] 네트워크 및 HTTP 부하 분산 설정하기 (0) | 2020.03.29 |
---|---|
[구글 클라우드 플랫폼] Kubernetes Engine 클러스터 설정 (0) | 2020.03.28 |
[구글 클라우드 플랫폼] 가상 머신 만들기 (0) | 2020.03.09 |
How to write a great research paper : 7 simple suggestions (0) | 2017.05.19 |
Facebook F8 2017 - 페이스북 개발자 컨퍼런스 (2) | 2017.05.18 |