AWSManagementService
Resource ini berisi informasi konfigurasi untuk layanan pengelolaan GKE di AWS Anda.
Anda mengonfigurasi file YAML bernama anthos-gke.yaml
sebelum membuat
layanan pengelolaan. Alat anthos-gke
menggunakan konfigurasi saat membuat layanan pengelolaan Anda.
Isi file anthos-gke.yaml
Anda bergantung pada apakah Anda menggunakan anthos-gke
untuk membuat
Virtual Private Cloud (VPC) AWS khusus untuk Anda,
atau apakah Anda menggunakan
VPC AWS yang ada.
VPC Khusus
apiVersion: multicloud.cluster.gke.io/v1
kind: AWSManagementService
metadata:
name: management
spec:
version: ANTHOS_CLI_VERSION
region: AWS_REGION
authentication:
awsIAM:
adminIdentityARNs:
- ADMIN_AWS_IAM_ARN
kmsKeyARN: KMS_KEY_ARN
databaseEncryption:
kmsKeyARN: KMS_KEY_ARN
googleCloud:
projectID: GCP_PROJECT_ID
serviceAccountKeys:
managementService: MANAGEMENT_KEY_PATH
connectAgent: CONNECT_KEY_PATH
node: NODE_KEY_PATH
iam:
permissionsBoundary: IAM_PERMISSIONS_BOUNDARY
path: IAM_PATH
dedicatedVPC:
vpcCIDRBlock: VPC_CIDR_BLOCK
availabilityZones:
- ZONE_1
- ZONE_2
- ZONE_3
privateSubnetCIDRBlocks:
- PRIVATE_CIDR_BLOCK_1
- PRIVATE_CIDR_BLOCK_2
- PRIVATE_CIDR_BLOCK_3
publicSubnetCIDRBlocks:
- PUBLIC_CIDR_BLOCK_1
- PUBLIC_CIDR_BLOCK_2
- PUBLIC_CIDR_BLOCK_3
# Optional section
rootVolume:
volumeType: ROOT_VOLUME_TYPE
iops: ROOT_VOLUME_IOPS
kmsKeyARN: ROOT_VOLUME_KEY
dataVolume:
volumeType: DATA_VOLUME_TYPE
iops: DATA_VOLUME_IOPS
kmsKeyARN: DATA_VOLUME_KEY
tags:
tag-name: tag-value
bastionHost:
allowedSSHCIDRBlocks:
- SSH_CIDR_BLOCK
rootVolume:
volumeType: ROOT_VOLUME_TYPE
iops: ROOT_VOLUME_IOPS
kmsKeyARN: ROOT_VOLUME_KEY
bootstrapS3Bucket: BOOTSTRAP_S3_BUCKET
proxy: PROXY_JSON_FILE
terraform:
invokeManually: No
stateGCSBucket: GCS_BUCKET_NAME
VPC yang ada
apiVersion: multicloud.cluster.gke.io/v1
kind: AWSManagementService
metadata:
name: management
spec:
version: ANTHOS_CLI_VERSION
region: AWS_REGION
authentication:
awsIAM:
adminIdentityARNs:
- ADMIN_AWS_IAM_ARN
kmsKeyARN: KMS_KEY_ARN
databaseEncryption:
kmsKeyARN: KMS_KEY_ARN
securityGroupIDs:
- SECURITY_GROUP_IDS
googleCloud:
projectID: GCP_PROJECT_ID
serviceAccountKeys:
managementService: MANAGEMENT_KEY_PATH
connectAgent: CONNECT_KEY_PATH
node: NODE_KEY_PATH
iam:
permissionsBoundary: IAM_PERMISSIONS_BOUNDARY
path: IAM_PATH
existingVPC:
subnetID: [MANAGEMENT_SUBNET_ID]
allowedSSHSecurityGroupIDs: [SSH_SECURITY_GROUPS]
# Optional fields
rootVolume:
volumeType: ROOT_VOLUME_TYPE
iops: ROOT_VOLUME_IOPS
kmsKeyARN: ROOT_VOLUME_KEY
dataVolume:
volumeType: DATA_VOLUME_TYPE
iops: DATA_VOLUME_IOPS
kmsKeyARN: DATA_VOLUME_KEY
ubuntuRepositoryMirror: 'packages.cloud.google.com'
bastionHost:
subnetID: [BASTION_HOST_SUBNET_ID]
allowedSSHCIDRBlocks:
- [SSH_CIDR_BLOCK]
rootVolume:
volumeType: ROOT_VOLUME_TYPE
iops: ROOT_VOLUME_IOPS
kmsKeyARN: ROOT_VOLUME_KEY
bootstrapS3Bucket: BOOTSTRAP_S3_BUCKET
tags:
tag-name: tag-value
proxy: PROXY_JSON_FILE
terraform:
invokeManually: No
stateGCSBucket: GCS_BUCKET_NAME
Bagian berikut menjelaskan kolom-kolom ini.
spec.version
Nilai spec.version
adalah versi layanan pengelolaan yang dibuat anthos-
gke
. Versi ini cocok dengan output anthos-gke version
. Misalnya, aws-1.14.1-gke.0
.
spec.region
Nilai spec.region
adalah
region AWS
tempat Anda ingin men-deploy layanan pengelolaan. Misalnya, us-east-1
.
spec.authentication.awsIAM
Nilai spec.authentication.awsIAM.adminIdentityARNs
adalah string dengan
nama resource Amazon (ARN) pengguna IAM AWS dengan
izin
untuk membuat layanan pengelolaan GKE di AWS. Contohnya,
arn:aws:iam::123456789:user/someuser
.
spec.kmsKeyARN
Nilai spec.kmsKeyARN
adalah string dengan nama resource Amazon (ARN) atau
alias kunci AWS KMS yang dibuat di
Prasyarat.
GKE di AWS menggunakan kunci untuk
enkripsi envelope.
Contoh,
arn:aws:kms:us-west-1:123456789:key/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
.
spec.databaseEncryption
Nilai spec.databaseEncryption.kmsKeyARN
adalah string dengan nama resource (ARN) Amazon atau alias kunci dari kunci AWS KMS yang digunakan GKE di AWS untuk mengenkripsi rahasia lapisan aplikasi dalam cluster. Contoh, arn:aws:kms:us-west-1:123456789:key/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
.
spec.securityGroupIDs
Nilai spec.securityGroupIDs
adalah daftar ID grup keamanan AWS tambahan yang ditetapkan ke VM layanan pengelolaan.
Misalnya [sg-00123456789abcd, sg-00123456789def1]`.
spec.dedicatedVPC
Kolom ini menunjukkan setelan VPC yang diinginkan.
Nama | Deskripsi | Jenis | Contoh |
---|---|---|---|
vpcCIDRBlock | Blok CIDR VPC AWS yang Anda inginkan. Harus antara 16 dan 28 bit. | string |
10.0.0.0/16 |
availabilityZones | Zona ketersediaan untuk men-deploy replika bidang kontrol. Setiap zona akan memiliki subnetnya sendiri dan memerlukan blok CIDR terpisah. | list(string) |
[us-east-1a, us-east-1b] |
privateSubnetCIDRBlocks | Blok CIDR untuk subnet pribadi dalam VPC di setiap zona ketersediaan. Harus berupa subset dari vpcCIDRBlock . Anda harus memiliki satu subnet per zona ketersediaan. |
list(string) |
[10.0.101.0/24, 10.0.102.0/24] |
publicSubnetCIDRBlocks | Blok CIDR untuk subnet publik dalam VPC di setiap zona ketersediaan. Harus berupa subset dari vpcCIDRBlock . Anda harus memiliki satu subnet per zona ketersediaan. |
list(string) |
[10.0.1.0/24, 10.0.2.0/24] |
bastionAllowedSSHCIDRBlocks | Blok CIDR untuk mengizinkan akses SSH masuk dari. Kolom ini tidak digunakan lagi di GKE di AWS 1.5. Gunakan spec.bastionHost di versi 1.5 atau yang lebih tinggi. |
string |
[104.132.0.0/14] |
spec.existingVPC
Kolom di bagian spec.existingVPC
mengonfigurasi GKE di AWS untuk menggunakan
VPC AWS yang ada.
Nama | Deskripsi | Jenis | Contoh |
---|---|---|---|
subnetID | ID subnet tempat layanan pengelolaan berjalan. | string |
subnet-00123456789ab |
allowedSSHSecurityGroupIDs | Daftar ID grup keamanan yang diizinkan untuk mengakses SSH dalam VPC. | list(string) | [sg-00123456789abcd, sg-00123456789def1] |
spec.googleCloud
Kolom di bagian spec.googleCloud
mengonfigurasi project Google Cloud dan kunci akun layanan IAM Anda.
Nama | Deskripsi | Jenis | Contoh |
---|---|---|---|
projectID | Google Cloud Google Cloud project. | string |
my-gcp-project-id |
serviceAccountKeys | Jalur file ke kunci akun layanan. | serviceAccountKeys |
spec.googleCloud.serviceAccountKeys
Kolom di bagian spec.googleCloud.serviceAccountKeys
mencakup jalur file lokal ke
kunci akun layanan GCP. Lihat
Prasyarat
untuk mengetahui deskripsi mendetail setiap kunci.
Nama | Deskripsi | Jenis | Contoh |
---|---|---|---|
managementService
|
Kunci akun layanan yang digunakan oleh cluster pengelolaan | string | path/to/key/management-sa-key.json
|
connectAgent
|
Kunci akun layanan yang digunakan oleh GKE Hub Connect Agent | string | path/to/key/hub-sa-key.json
|
node
|
Kunci akun layanan yang digunakan oleh node | string | path/to/key/node-sa-key.json
|
spec.iam
Kolom di bagian spec.iam
mengonfigurasi parameter IAM AWS opsional untuk
lingkungan GKE di AWS Anda.
Nama | Deskripsi | Jenis | Contoh |
---|---|---|---|
permissionsBoundary | ARN Batas izin untuk peran IAM | string |
arn:aws:iam::126285863215:policy/testPolicyBoundary |
jalur | Jalur ke peran IAM | string |
/org_abc/team_abc/member_abc/ |
spec.bastionHost
Bagian spec.bastionHost
bersifat opsional dan menjelaskan host bastion.
Bastion host adalah instance EC2 yang ditempatkan di subnet publik. Hal ini memungkinkan akses SSH inbound dari blok CIDR tertentu dan memiliki akses SSH outbound ke cluster pengguna dan layanan pengelolaan GKE di AWS.
Anda dapat membuat host bastion untuk penginstalan dedicatedVPC
atau existingVPC
. Kolom allowedSSHCIDRBlocks
menentukan rentang alamat masuk yang diizinkan, dan tidak boleh kosong.
Jika host bastion tidak ada, GKE di AWS akan membuat host bastion baru.
- Untuk penginstalan
dedicatedVPC
, GKE di AWS akan membuat subnet. - Untuk penginstalan
existingVPC
, Anda harus menyediakan subnet untuk host bastion dan memastikan bahwa subnet ini memiliki konektivitas ke VPC Anda.
Anda dapat mengubah host bastion dengan mengubah atau menghapus kolom spec.bastionHost
dan menjalankan anthos-gke aws management init
, diikuti dengan
anthos-gke aws management apply
.
Nama | Deskripsi | Jenis | Contoh |
---|---|---|---|
subnetID | ID subnet tempat host bastion berjalan. Untuk penginstalan existingVPC , subnet harus mengizinkan ingress dari tempat Anda akan mengaksesnya di port 22. Selain itu, pastikan VPC Anda mengizinkan akses masuk dari subnet ini. Untuk penginstalan dedicatedVPC , jangan tentukan kolom ini. GKE di AWS akan menyediakan subnet dengan akses yang diperlukan. |
string | subnet-003bdf7b0f5e21e45 |
allowedSSHCIDRBlocks | Blok CIDR untuk mengizinkan akses SSH masuk dari. | list(string) |
[104.132.0.0/14] |
rootVolume | Objek yang menjelaskan volume root host bastion. | object |
{volumeType: gp2} |
spec.rootVolume, spec.dataVolume, dan spec.bastionHost.rootVolume
Tabel berikut menjelaskan kolom umum untuk objek berikut:
spec.rootVolume
, untuk volume disk root bidang kontrolspec.dataVolume
, untuk volume disk data bidang kontrolspec.bastionHost.rootVolume
, untuk volume disk root bastion host
Nama | Deskripsi | Jenis | Contoh | Wajib |
---|---|---|---|---|
volumeType | Jenis volume EBS AWS node. Dapat berupa gp2 (default) atau gp3 . |
string |
gp2 |
tidak |
iops | Jumlah operasi input/output per detik (IOPS) yang disediakan untuk volume. Hanya valid jika volumeType adalah GP3 . Untuk mengetahui informasi selengkapnya, lihat Volume SSD Tujuan Umum (gp3). |
integer |
5000 |
tidak |
kmsKeyARN | ARN kunci AWS KMS yang digunakan untuk mengenkripsi volume EBS. Untuk mengetahui informasi selengkapnya, lihat Menggunakan CMK yang dikelola pelanggan untuk mengenkripsi volume. | string |
arn:aws:kms:us-west-1:123456789:key/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee |
tidak |
spec.tags
Nama | Deskripsi | Jenis | Contoh |
---|---|---|---|
tags | Metadata nilai/kunci opsional yang ditetapkan ke setiap resource AWS yang mendukung layanan pengelolaan. | map(string) |
{Environment: Production, Team: Analytics} |
spec.proxy
Kolom spec.proxy
mengonfigurasi proxy HTTP/HTTPS opsional.
Nama | Deskripsi | Jenis | Contoh |
---|---|---|---|
proxy | Jalur ke file konfigurasi proxy. | Jalur relatif dari anthos-gke.yaml |
proxy.json |
spec.bootstrapS3Bucket
Kolom spec.bootstrapS3Bucket
mengonfigurasi nama bucket S3 untuk
GKE di AWS .
Nama | Deskripsi | Jenis | Contoh |
---|---|---|---|
bootstrapS3Bucket | Kolom opsional untuk nama bucket AWS S3 tempat GKE di AWS menyimpan informasi konfigurasi. Jika Anda ingin membuat beberapa layanan pengelolaan GKE di AWS dalam region AWS yang sama, tetapkan nilai ini ke nama bucket yang unik. | string |
example-s3-bucket |
spec.terraform
Kolom spec.terraform.invokeManually
mengonfigurasi perintah anthos-gke
agar tidak membuat layanan pengelolaan.
Nama | Deskripsi | Jenis | Contoh |
---|---|---|---|
invokeManually | Kolom opsional yang mengonfigurasi alat command line anthos-gke agar tidak membuat layanan pengelolaan setelah membangun dan memvalidasi konfigurasi Anda. Jika Anda menyetel invokeManually ke Yes , Anda dapat mengedit dan menerapkan file konfigurasi Terraform secara manual. |
Yes , No |
Yes |
stateGCSBucket | Kolom opsional yang menentukan bucket Google Cloud Storage yang sudah ada agar Terraform dapat menyimpan data konfigurasinya. | string |
example-GCS-bucket |