서비스 계정은 사람의 개입 없이 가상 머신과 같은 애플리케이션이 다른 클라우드 서비스와 상호 작용할 수 있도록 특정 권한을 부여한다.
이를 통해 사람이 수동으로 접근 권한을 설정할 필요 없이 VM 자체가 필요한 작업을 수행할 수 있다.
예를 들어, 특정 VM에서 실행 중인 애플리케이션이 Cloud Storage에 데이터를 저장해야 할 때, 인터넷 상의 아무나 접근하지 못하도록 설정할 수 있다.
이 경우 서비스 계정을 만들어, 해당 VM이 Cloud Storage와 인증할 수 있도록 설정한다.
서비스 계정은 이메일 주소 형식으로 이름이 지정되며, 암호 대신 암호화 키를 사용해 리소스에 접근한다.
따라서 서비스 계정이 Compute Engine의 Instance Admin 역할을 가진 경우 해당 VM에서 실행되는 애플리케이션은 다른 VM 생성, 수정, 삭제 가능해진다.
이러한 동작을 위해서 서비스 계정 관리가 필요한데 A를 서비스 계정을 관리할 수 있도록 설정하고, B는 서비스 계정 목록만 조회할 수 있도록 설정하여 편집자 역할과 뷰어 역할을 부여할 수 있다.
이때 서비스 계정은 리소스로 간주되므로, 다른 Google Cloud 리소스와 마찬가지로 자체적으로 IAM 정책을 가질 수 있다.
즉, A와 B에게 각각 역할을 부여하는 방식은 다른 리소스에 역할을 부여하는 것과 동일하다.
Cloud Identity 도구
많은 신규 Google Cloud 고객은 Gmail 계정으로 Google Cloud Console에 로그인하고, Google Groups를 사용해 팀원들과 협업한다.
이러한 과정은 팀원들의 ID가 중앙 관리되지 않았고, 만약 팀원이 조직을 떠날 경우, 해당 사용자의 클라우드 리소스 접근 권한을 즉시 제거하는 방법이 복잡하다는 문제가 있었다.
Cloud Identity는 Google Admin Console을 통해 사용자와 그룹을 중앙에서 관리할 수 있도록 지원한다.
관리자는 기존 Active Directory 또는 LDAP 시스템에서 사용하던 사용자 이름과 비밀번호를 활용해 Google Cloud 리소스를 관리한다.
이를 통해 조직을 떠난 사용자의 계정을 Google Admin Console에서 비활성화하고 그룹에서 제거 가능하다.
Google Cloud 상호작용
Cloud Console
Google Cloud의 그래픽 사용자 인터페이스로 리소스 배포, 확장, 문제 진단 등 웹 기반 인터페이스에서 간편하게 수행 가능하다.
주요 특징으로는 리소스 상태 확인 및 관리, 예산 설정으로 비용 통제, 검색 기능으로 리소스 탐색, 브라우저에서 SSH를 통해 인스턴스 연결 등이 있다.
Cloud SDK와 Cloud Shell
Cloud SDK는 Google Cloud의 리소스와 애플리케이션을 관리하는 도구 모음으로 gcloud CLI, bq가 포함되어 있다.
gcloud CLI: Google Cloud 제품 및 서비스 관리용 명령줄 인터페이스.
bq: BigQuery를 위한 명령줄 도구.
Cloud Shell은 브라우저에서 명령줄로 Google Cloud 리소스에 접근 가능하다.
이는 Debian 기반 VM으로 5GB의 영구 홈 디렉터리를 포함하고, gcloud 명령어 및 기타 유틸리티가 사전 설치 및 인증되어 있다.
APIs
Google Cloud API를 통해 클라우드 서비스를 코드로 제어 가능하다.
Google API Explorer도구를 사용하면 사용 가능한 API와 버전을 탐색하고, 상호작용 방식으로 API 테스트 가능하다.
그리고 API를 탐색한 뒤 애플리케이션을 빌드할 준비가 되었다고 가정했을 때 코딩을 처음부터 하는 것이 아니라 인기 있는 언어(Java, Python, PHP, C#, Go, Node.js, Ruby, C++)로 클라우드 클라이언트 라이브러리와 Google API 클라이언트 라이브러리를 제공해주어 호출을 간소화할 수 있다.
Google Cloud App
모바일 앱을 통해 Google Cloud 리소스 관리를 할 수 있는데 Compute Engine 인스턴스 시작, 중지, SSH 연결, Cloud SQL 인스턴스 관리, 배포 롤백 트래픽 분배 변경과 같은 App Engine 애플리케이션 관리 등을 할 수 있다.
'컴퓨터 > 클라우드' 카테고리의 다른 글
[GCP Associate Cloud Engineer] VPC & Load Balancing & DNS (0) | 2024.12.31 |
---|---|
[GCP Associate Cloud Engineer] 가상 네트워킹(Virtual Networking) & Compute Engine (0) | 2024.12.24 |
[GCP Associate Cloud Engineer] IAM 및 역할 관리 (3) | 2024.12.21 |
[GCP Associate Cloud Engineer] Google Cloud의 리소스 계층 구조 (0) | 2024.12.21 |
[GCP Associate Cloud Engineer] 오픈소스 생태계와 가격 정책 (3) | 2024.12.19 |