CS 내용 요약, 지식/Google Cloud Associate

Google Cloud Associate 강의 요약: Section 5

걍판자 2024. 11. 19. 12:03
반응형

서문

GCA 자격증 취득을 위해 들은 강의 내용 요약이다. 섹션 5의 내용을 담고 있다.

 

 


Gcloud

 -  Gcloud는 구글 클라우드 리소스의 CLI이다.
 - 대부분의 GCP 서비스는 이를 통해 해결할 수 있다.

       Compute Engine Virtual Machines, Managed Instance Groups, Databases, 리소스 CRUD, 배포 등
 - GCP와 다른 서비스로 처리하는 CLI 툴들
     - Cloud storage: gstuil
     - Cloud Bigquery: bq
     - Cloud Bigtable: cbt
     - kubernetes - kubectl

- 이런 Gcloud를 쓰기 위해서 SDK를 사이트에서 별도로 설치할 수도 있으나(파이썬 필요!) 그냥 GCloud의 Cloud Shell을 이용해도 된다.
- Cloud shell에 Gcloud를 비롯한 다른 툴들이 이미 설치 되어 있다.


Gcloud config

- `gcloud init`을 입력하면 기본 Configuration 설정을 볼 수 있고, 이를 재설정 할수도 있다. 
    - Configuration name
    - Account
    - Project
    - Region, Zone
-  `gcloud config list` 명령어를 통해  Configuration 목록을 볼 수 있다.
- 가령 계정만 나열하고 싶다면 `gcloud config list account` 라 하면된다.
     - 그런데 `gcloud config list region` 이라고 쳐도 안나온다. 그 이유는 뭘까?


- 아래 분류체계에 맞게 상위 경로를 입력해주어야한다. `gcloud config list account` 는 경로를 입력하지 않아도 바로 계정들을 보여주었는데 그건 default가 core로 되어있어서 생략이 가능한 것이다.

- component_manager
    - disable_unable_check
- compute
    - gce_metaadata_read_timeout_sec
    - region
    - zone

- core
    - account
    - disable_usage_reporting
    - project
    - verbosity
- metrics
    - environment


- 따라서 region에 따른 분류를 원한다면 `gcloud config list compute/region` 이라고 입력해야 한다.
- `gcloud config set  {SECTION}/{PROPERTY} VALUE`  명령어로 configuration을 지정해줄 수 있다.
- 위에 있었던 대항목들 component_manager,compute,core,metrics 가 SECTION이고 PROPERTY는 그 아래 작은 항목들이다. 
- 여기서도 core의 하위 항목에서는 core을 생략하고 바로 property만 써줄 수 있다.
- 일반적으로 core 항목의 값들은 시작할때 default로 정해져 있어 지정하는 것은 optional 하다.
- `gcloud config unset` 은 그 반대의 명령어다. 기본값으로 초기화 한다.
- `gcloud config set --help` 로 상세 항목들을 알 수 있다.
- 동일한 machine에서 여러개의 project를 구성할 때 너는 다른 구성들을 원할 것이다. 이는 `gcloud config configurations create/delete/describe/activate/list` 명령어를 통해 볼 수 있다.
-  `gcloud config configurations list` 로 목록들 출력(name, is_active, account, project, compute_default_zone, compute_default_region)
- `gcloud config list {PROPERTY}`  현재 설정된 구성 확인
- `gcloud config configurations create {NAME}` 특정 구성 활성화
- `gcloud config configurations create {newName}` 으로 새로운 구성 생성
- `gcloud config set project {projectID}` 기본 프로젝트로 설정

 

- `gcloud {GROUP} {SUBGROUP} {ACTION}` 으로 가지고 놀 수 있다. 
    - GROUP: config, compute, container, dataflow, functions, iam ...
    - SUBGROUP: instances, images, instance-templates, machine-types, regions, zones ...
    - ACTION: create, list, start, stop, describe...
    - ex) `gcloud compute machine-types list` 
   `gcloud compute machine-types list --filiter=" zone:(asai-southeast2-b asia-southeast2-c)"`

- gcloud compute insances create {NAME} 뒤에 하이픈 2개로 다양한 option을 넣어 인스턴스를 만들 수 있다.


region

Default region과 zone을 정하는데는 3가지 방법이 있다.
    - 1. Centralized Configuration: 조직정책으로 프로젝트나 조직 전체의 지역을 기본값으로 설정. metadata로 구성된다.
    - 2. Local gcloud Configuration: gcloud config set compute/region REGION, 명령어를 통해 기본값으로 적용함.
    - 3. Command Specific: 개별 명령어 --zone 이나 --region으로 정한 장소
- 우선순위는 3,2,1 순이다. 서로 말이 다르면 숫자 큰 옵션으로 처리된다. 


describe, instance-templates

리스트와 describe 명령어들
    - `gcloud compute {RESOURCES} list` 여기서 RESOURCES 자리에 images, regions, zones, disk-types, instances,             disks, snapshots 들어갈 수 있음
    - 이후 --fliter로 특정 이름만 뽑아내거나 --sort-by로 정렬하기, --uri로 uri 뽑아내기 등을 할 수 있다.
   - `gcloud compute regions describe us-west4` 으로 us-west4의 id, kind, quotas 등 상세한 정보 뽑아내는 것 가능 
- `gcloud compute instances start/stop/delete {INSTANCE_NAME}` 
    - stop으로 인자들 여러개 입력해서 여러개 동시에 정지 가능
    - delete는 뒤에 옵션으로 특정 디스크를 삭제하거나 keep 할 수 있음 (`--delete-disks=VALUE, --keep-disks=VALUE`)
- 인스턴스 탬플릿도 인스턴스처럼 명령어로 `gcloud compute instance-templates create/list/delete/describe` 할 수 있다. 
- 원한다면 create 할때 --source-instance와 --source-instance-zone을 따로 default가 아닌 다른 값으로 지정해줄 수 있다.
- 그리고 여기서 만든 탬플릿은 `gcloud compute instances create my-app --source-instance-template="my-instance-template` 식으로 인스턴스 생성에 활용할 수 있다.

반응형