Tutorial ini menunjukkan cara memigrasikan sertifikat Cloud Load Balancing ke Certificate Manager. Untuk mengetahui informasi selengkapnya tentang sertifikat Cloud Load Balancing, lihat Ringkasan sertifikat SSL dalam dokumentasi Cloud Load Balancing.
Untuk memigrasikan sertifikat Cloud Load Balancing tanpa periode nonaktif, identifikasi terlebih dahulu sertifikat yang ingin Anda migrasikan. Kemudian, buat jumlah sertifikat yang dikelola Google yang sama dengan sertifikat Cloud Load Balancing Anda. Selanjutnya, gabungkan sertifikat ke dalam satu peta sertifikat, dan uji peta sertifikat di load balancer lain. Jika pengujian berhasil, lampirkan peta sertifikat ke load balancer target yang menghosting sertifikat Cloud Load Balancing Anda.
Untuk menemukan daftar load balancer yang didukung, lihat Ringkasan Pengelola Sertifikat.
Tujuan
Tutorial ini menunjukkan kepada Anda cara menyelesaikan tugas-tugas berikut:
- Identifikasi sertifikat dari load balancer target yang akan dimigrasikan.
- Membuat sertifikat yang dikelola Google.
- Buat peta sertifikat dan entri peta sertifikat.
- Uji peta sertifikat di load balancer lain.
- Lampirkan peta sertifikat ke load balancer target.
Sebelum memulai
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine, Certificate Manager APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine, Certificate Manager APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
Peran yang diperlukan
Pastikan Anda memiliki peran berikut untuk menyelesaikan tugas dalam tutorial ini:
- Pemilik Pengelola Sertifikat (
roles/certificatemanager.owner
): Wajib untuk membuat dan mengelola resource Pengelola Sertifikat. - Compute Load Balancer Admin (
roles/compute.loadBalancerAdmin
) atau Compute Network Admin (roles/compute.networkAdmin
): Diperlukan untuk membuat dan mengelola proxy target HTTPS.
- DNS Administrator (
roles/dns.admin
): Wajib jika Anda ingin menggunakan Cloud DNS sebagai solusi DNS Anda.
Untuk informasi selengkapnya, lihat referensi berikut:
- Peran dan izin untuk Pengelola Sertifikat.
- Peran dan izin IAM Compute Engine untuk Compute Engine.
- Peran dan izin untuk Cloud DNS.
Mengidentifikasi sertifikat yang akan dimigrasikan
Untuk mengidentifikasi sertifikat yang ingin dimigrasikan, ikuti langkah-langkah berikut:
Di load balancer, identifikasi nama proxy target.
Identifikasi sertifikat yang ingin Anda migrasikan.
Untuk menemukan sertifikat yang dilampirkan ke proxy target, jalankan perintah berikut:
gcloud compute target-https-proxies describe TARGET_PROXY_NAME
Ganti
TARGET_PROXY_NAME
dengan nama proxy target.Outputnya mirip dengan hal berikut ini:
creationTimestamp: '2021-10-06T04:05:07.520-07:00' fingerprint: c9Txdx6AfcM= id: '365692570234384780' kind: compute#targetHttpsProxy name: my-proxy selfLink: https://www.googleapis.com/compute/v1/projects/my-project/global/targetHttpsProxies/my-proxy sslCertificates: - https://www.googleapis.com/compute/v1/projects/my-project/global/sslCertificates/my-first-certificate - https://www.googleapis.com/compute/v1/projects/my-project/global/sslCertificates/my-second-certificate urlMap: https://www.googleapis.com/compute/v1/projects/my-project/global/urlMaps/my-map
Perhatikan nama sertifikat yang tercantum di kolom
sslCertificates
. Untuk informasi selengkapnya, lihat Ringkasan proxy target.Dapatkan detail setiap sertifikat:
gcloud compute ssl-certificates --project=PROJECT_ID describe LB_CERTIFICATE_NAME
Ganti kode berikut:
PROJECT_ID
: ID project Google Cloud.LB_CERTIFICATE_NAME
: nama sertifikat load balancer.
Outputnya mirip dengan hal berikut ini:
certificate: | -----BEGIN CERTIFICATE----- MIIFYjCCBEqgAwIBAgIQd70NbNs2+RrqIQ/E8FjTDTANBgkqhkiG9w0BAQsFADBX MQswCQYDVQQGEwJCRTEZMBcGA1UEChMQR2xvYmFsU2lnbiBudi1zYTEQMA4GA1UE CxMHUm9vdCBDQTEbMBkGA1UEAxMSR2xvYmFsU2lnbiBSb290IENBMB4XDTIwMDYx OTAwMDA0MloXDTI4MDEyODAwMDA0MlowRzELMAkGA1UEBhMCVVMxIjAgBgNVBAoT GUdvb2dsZSBUcnVzdCBTZXJ2aWNlcyBMTEMxFDASBgNVBAMTC0dUUyBSb290IFIx MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAthECix7joXebO9y/lD63 ladAPKH9gvl9MgaCcfb2jH/76Nu8ai6Xl6OMS/kr9rH5zoQdsfnFl97vufKj6bwS iV6nqlKr+CMny6SxnGPb15l+8Ape62im9MZaRw1NEDPjTrETo8gYbEvs/AmQ351k KSUjB6G00j0uYODP0gmHu81I8E3CwnqIiru6z1kZ1q+PsAewnjHxgsHA3y6mbWwZ DrXYfiYaRQM9sHmklCitD38m5agI/pboPGiUU+6DOogrFZYJsuB6jC511pzrp1Zk j5ZPaK49l8KEj8C8QMALXL32h7M1bKwYUH+E4EzNktMg6TO8UpmvMrUpsyUqtEj5 cuHKZPfmghCN6J3Cioj6OGaK/GP5Afl4/Xtcd/p2h/rs37EOeZVXtL0m79YB0esW CruOC7XFxYpVq9Os6pFLKcwZpDIlTirxZUTQAs6qzkm06p98g7BAe+dDq6dso499 iYH6TKX/1Y7DzkvgtdizjkXPdsDtQCv9Uw+wp9U7DbGKogPeMa3Md+pvez7W35Ei Eua++tgy/BBjFFFy3l3WFpO9KWgz7zpm7AeKJt8T11dleCfeXkkUAKIAf5qoIbap sZWwpbkNFhHax2xIPEDgfg1azVY80ZcFuctL7TlLnMQ/0lUTbiSw1nH69MG6zO0b 9f6BQdgAmD06yK56mDcYBZUCAwEAAaOCATgwggE0MA4GA1UdDwEB/wQEAwIBhjAP BgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTkrysmcRorSCeFL1JmLO/wiRNxPjAf BgNVHSMEGDAWgBRge2YaRQ2XyolQL30EzTSo//z9SzBgBggrBgEFBQcBAQRUMFIw JQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLnBraS5nb29nL2dzcjEwKQYIKwYBBQUH MAKGHWh0dHA6Ly9wa2kuZ29vZy9nc3IxL2dzcjEuY3J0MDIGA1UdHwQrMCkwJ6Al oCOGIWh0dHA6Ly9jcmwucGtpLmdvb2cvZ3NyMS9nc3IxLmNybDA7BgNVHSAENDAy MAgGBmeBDAECATAIBgZngQwBAgIwDQYLKwYBBAHWeQIFAwIwDQYLKwYBBAHWeQIF AwMwDQYJKoZIhvcNAQELBQADggEBADSkHrEoo9C0dhemMXoh6dFSPsjbdBZBiLg9 NR3t5P+T4Vxfq7vqfM/b5A3Ri1fyJm9bvhdGaJQ3b2t6yMAYN/olUazsaL+yyEn9 WprKASOshIArAoyZl+tJaox118fessmXn1hIVw41oeQa1v1vg4Fv74zPl6/AhSrw 9U5pCZEt4Wi4wStz6dTZ/CLANx8LZh1J7QJVj2fhMtfTJr9w4z30Z209fOU0iOMy +qduBmpvvYuR7hZL6Dupszfnw0Skfths18dG9ZKb59UhvmaSGZRVbNQpsg3BZlvi d0lIKO2d1xozclOzgjXPYovJJIultzkMu34qQb9Sz/yilrbCgj8= -----END CERTIFICATE----- creationTimestamp: '2021-05-06T04:39:21.736-07:00' expireTime: '2022-06-07T01:10:34.000-07:00' id: '6422259403966690822' kind: compute#sslCertificate managed: domainStatus: a.my-domain1.example.com: ACTIVE b.my-domain2.example.com: ACTIVE domains: - a.my-domain1.example.com - b.my-domain2.example.com status: ACTIVE name: my-certificate selfLink: https://www.googleapis.com/compute/v1/projects/my-project/global/sslCertificates/my-certificate subjectAlternativeNames: - a. my-domain1.example.com - b. my-domain2.example.com type: MANAGED
Membuat sertifikat yang dikelola Google
Buat sertifikat yang dikelola Google dalam jumlah yang sama dengan sertifikat load balancer Anda. Untuk load balancer global atau klasik, buat sertifikat global; untuk load balancer regional, buat sertifikat regional; dan untuk load balancer lintas region, buat sertifikat lintas region. Sebelum membuat sertifikat, buat otorisasi DNS dan tambahkan data CNAME ke zona DNS resmi untuk domain Anda.
Anda dapat memilih untuk membuat sertifikat yang dikelola Google dengan otorisasi DNS (direkomendasikan) atau sertifikat yang dikelola sendiri.
Bagian ini mencantumkan langkah-langkah dan perintah untuk membuat sertifikat global yang dikelola Google. Untuk membuat sertifikat yang dikelola Google secara regional atau lintas region, lihat Membuat sertifikat yang dikelola Google.
Membuat otorisasi DNS
Otorisasi DNS hanya mencakup satu nama domain. Anda harus membuat otorisasi DNS terpisah untuk setiap nama domain yang ingin digunakan dengan sertifikat target.
Jika Anda membuat
otorisasi DNS untuk sertifikat karakter pengganti, seperti *.myorg.example.com
,
konfigurasi otorisasi DNS untuk domain induk—misalnya,
myorg.example.com
.
Konsol
Anda dapat membuat otorisasi DNS atau melampirkan otorisasi DNS yang ada saat membuat sertifikat. Untuk mengetahui informasi selengkapnya, lihat Membuat sertifikat yang dikelola Google yang merujuk pada otorisasi DNS.
gcloud
Untuk membuat otorisasi DNS, gunakan perintah certificate-manager
dns-authorizations create
:
gcloud certificate-manager dns-authorizations create AUTHORIZATION_NAME \ --domain="DOMAIN_NAME"
Ganti kode berikut:
AUTHORIZATION_NAME
: nama otorisasi DNS.DOMAIN_NAME
: nama domain target tempat Anda membuat otorisasi DNS ini. Nama domain harus berupa nama domain yang sepenuhnya memenuhi syarat, sepertimyorg.example.com
.
Sertifikat global yang dikelola Google menggunakan FIXED_RECORD
sebagai jenis otorisasi DNS default. Untuk menggunakan otorisasi DNS PER_PROJECT_RECORD
, jalankan perintah berikut:
gcloud certificate-manager dns-authorizations create AUTHORIZATION_NAME \ --domain="DOMAIN_NAME" \ --type="PER_PROJECT_RECORD"
Setelah membuat otorisasi DNS, verifikasi dengan
perintah certificate-manager dns-authorizations describe
:
gcloud certificate-manager dns-authorizations describe AUTHORIZATION_NAME \
Outputnya mirip dengan yang berikut ini. Dalam output, temukan baris dnsResourceRecord
dan dapatkan data CNAME
(data
,
name
, dan type
) untuk
ditambahkan ke konfigurasi DNS Anda.
createTime: '2022-01-14T13:35:00.258409106Z' dnsResourceRecord: data: 0e40fc77-a37d-4eb8-8fe1-eea2e18d12d9.4.authorize.certificatemanager.goog. name: _acme-challenge.myorg.example.com. type: CNAME domain: myorg.example.com name: projects/myProject/locations/global/dnsAuthorizations/myAuthorization updateTime: '2022-01-14T13:35:01.571086137Z'
Terraform
Untuk membuat otorisasi DNS, Anda dapat menggunakan
resource google_certificate_manager_dns_authorization
.
Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.
API
Untuk membuat otorisasi DNS, buat permintaan POST
ke metode dnsAuthorizations.create
:
POST /v1/projects/PROJECT_ID/locations/global/dnsAuthorizations?dns_authorization_id=AUTHORIZATION_NAME" { "domain": "DOMAIN_NAME", "type": "PER_PROJECT_RECORD" //optional }
Ganti kode berikut:
PROJECT_ID
: ID project Google Cloud.AUTHORIZATION_NAME
: nama otorisasi DNS.DOMAIN_NAME
: nama domain target tempat Anda membuat otorisasi DNS ini. Nama domain harus berupa nama domain yang sepenuhnya memenuhi syarat, sepertimyorg.example.com
.
Buat sertifikat yang dikelola Google yang merujuk pada otorisasi DNS
Untuk membuat sertifikat global yang dikelola Google yang merujuk ke otorisasi DNS yang Anda buat pada langkah sebelumnya, lakukan hal berikut:
Konsol
Di konsol Google Cloud, buka halaman Certificate Manager.
Di tab Certificates, klik Add Certificate.
Di kolom Nama sertifikat, masukkan nama unik untuk sertifikat.
Opsional: Di kolom Deskripsi, masukkan deskripsi untuk sertifikat. Deskripsi memungkinkan Anda mengidentifikasi sertifikat.
Untuk Location, pilih Global.
Untuk Cakupan, pilih Default.
Untuk Certificate type, pilih Create Google-managed certificate.
Untuk Jenis Certificate Authority, pilih Publik.
Di kolom Domain Names, tentukan daftar nama domain sertifikat yang dipisahkan koma. Setiap nama domain harus berupa nama domain yang sepenuhnya memenuhi syarat, seperti
myorg.example.com
. Nama domain juga dapat berupa nama domain karakter pengganti, seperti*.example.com
.Untuk Jenis otorisasi, pilih Otorisasi DNS.
Halaman ini mencantumkan otorisasi DNS nama domain. Jika nama domain tidak memiliki otorisasi DNS terkait, ikuti langkah-langkah berikut untuk membuatnya:
- Klik Buat otorisasi DNS yang tidak ada.
- Di kolom DNS authorization name, tentukan nama
otorisasi DNS.
Jenis otorisasi DNS default adalah
FIXED_RECORD
. Untuk menggunakan otorisasi DNS per project, centang kotak Per project authorization. - Klik Create DNS authorization.
Di kolom Labels, tentukan label yang akan dikaitkan dengan sertifikat. Untuk menambahkan label, klik
Tambahkan label, lalu tentukan kunci dan nilai untuk label Anda.Klik Create.
Sertifikat baru akan muncul dalam daftar sertifikat.
gcloud
Untuk membuat sertifikat global yang dikelola Google dengan otorisasi DNS, jalankan
perintah certificate-manager certificates create
dengan
flag dns-authorizations
:
gcloud certificate-manager certificates create CERTIFICATE_NAME \ --domains="DOMAIN_NAME, *.DOMAIN_NAME" \ --dns-authorizations="AUTHORIZATION_NAMES"
Ganti kode berikut:
CERTIFICATE_NAME
: nama sertifikat.DOMAIN_NAME
: nama domain target. Nama domain harus berupa nama domain yang sepenuhnya memenuhi syarat, sepertimyorg.example.com
, atau domain karakter pengganti, seperti*.myorg.example.com
. Awalan titik tanda bintang(*.)
menandakan sertifikat karakter pengganti.AUTHORIZATION_NAMES
: daftar nama otorisasi DNS yang Anda buat untuk sertifikat, yang dipisahkan koma.
Terraform
API
Buat sertifikat dengan membuat permintaan POST
ke metode certificates.create
sebagai berikut:
POST /v1/projects/PROJECT_ID/locations/global/certificates?certificate_id=CERTIFICATE_NAME { "managed": { "domains": ["DOMAIN_NAME"], "dnsAuthorizations": [ "projects/PROJECT_ID/locations/global/dnsAuthorizations/AUTHORIZATION_NAME", ], } }
Ganti kode berikut:
PROJECT_ID
: ID project Google Cloud.CERTIFICATE_NAME
: nama sertifikat.DOMAIN_NAME
: nama domain target. Nama domain harus berupa nama domain yang sepenuhnya memenuhi syarat, sepertimyorg.example.com
, atau domain karakter pengganti, seperti*.myorg.example.com
. Awalan titik bintang (*.) menandakan sertifikat karakter pengganti.AUTHORIZATION_NAMES
: daftar nama otorisasi DNS yang dipisahkan koma.
Tambahkan data CNAME ke konfigurasi DNS Anda
Jika Anda menggunakan solusi DNS pihak ketiga untuk mengelola DNS, lihat dokumentasi untuk menambahkan data CNAME ke konfigurasi DNS. Jika Anda menggunakan Google Cloud untuk mengelola DNS, selesaikan langkah-langkah di bagian ini.
Konsol
Untuk membuat kumpulan data, ikuti langkah-langkah berikut:
Di konsol Google Cloud, buka halaman DNS zones.
Klik nama zona DNS tempat Anda ingin menambahkan data.
Di halaman Zone details, klik Add standard.
Di halaman Create record set, di kolom DNS name, masukkan subdomain zona DNS.
Saat memasukkan nama subdomain, pastikan nama subdomain, termasuk teks berwarna abu-abu yang ditampilkan di kolom DNS name, cocok dengan nilai lengkap kolom
dnsResourceRecord.name
seperti yang ditampilkan di output perintahgcloud certificate-manager dns-authorizations describe
.Lihat contoh berikut:
Jika nilai kolom
dnsResourceRecord.name
adalah_acme-challenge.myorg.example.com.
, dan teks berwarna abu-abu di kolom nama DNS adalah.example.com.
, masukkan_acme-challenge.myorg
.Jika nilai kolom
dnsResourceRecord.name
adalah_acme-challenge.myorg.example.com.
, dan teks berwarna abu-abu di kolom nama DNS adalah.myorg.example.com.
, masukkan_acme-challenge
.Jika nilai kolom
dnsResourceRecord.name
adalah_acme-challenge_ujmmovf2vn55tgye.myorg.example.com.
, dan teks berwarna abu-abu di kolom Nama DNS adalah.myorg.example.com.
, masukkan_acme-challenge_ujmmovf2vn55tgye
.
Di kolom Resource record type, pilih CNAME.
Di kolom TTL, masukkan nilai numerik positif untuk waktu data resource untuk aktif, yaitu jumlah waktu yang dapat disimpan dalam cache.
Dari daftar TTL unit, pilih satuan waktu—misalnya,
30 minutes
.Di kolom Canonical name, masukkan nilai lengkap kolom
dnsResourceRecord.data
seperti yang ditampilkan dalam output perintahgcloud certificate-manager dns-authorizations describe
.Untuk memasukkan informasi tambahan, klik Tambahkan item.
Klik Create.
gcloud
Saat Anda membuat otorisasi DNS, perintah gcloud CLI akan menampilkan data CNAME yang sesuai. Untuk menambahkan data CNAME ke konfigurasi DNS di zona DNS domain target, ikuti langkah-langkah berikut:
Mulai transaksi data DNS:
gcloud dns record-sets transaction start --zone="DNS_ZONE_NAME"
Ganti
DNS_ZONE_NAME
dengan nama zona DNS target.Tambahkan data CNAME ke zona DNS target:
gcloud dns record-sets transaction add CNAME_RECORD \ --name="VALIDATION_SUBDOMAIN_NAME.DOMAIN_NAME." \ --ttl="30" \ --type="CNAME" \ --zone="DNS_ZONE_NAME"
Ganti kode berikut:
CNAME_RECORD
: nilai data lengkap data CNAME yang ditampilkan oleh perintah Google Cloud CLI yang membuat otorisasi DNS yang sesuai.VALIDATION_SUBDOMAIN_NAME
: subdomain awalan zona DNS, seperti_acme-challenge
. Anda dapat menyalin nama dari log perintahgcloud certificate-manager dns-authorizations describe
, seperti yang dijelaskan dalam Membuat otorisasi DNS.DOMAIN_NAME
: nama domain target.Nama domain harus berupa nama domain yang sepenuhnya memenuhi syarat, sepertimyorg.example.com
. Anda juga harus menyertakan titik di akhir setelah nama domain target.DNS_ZONE_NAME
: nama zona DNS target.
Lihat contoh berikut:
gcloud dns record-sets transaction add 0e40fc77-a37d-4eb8-8fe1-eea2e18d12d9.4.authorize.certificatemanager.goog. \ --name="_acme-challenge.myorg.example.com." \ --ttl="30" \ --type="CNAME" \ --zone="myorg-example-com"
Jalankan transaksi data DNS untuk menyimpan perubahan:
gcloud dns record-sets transaction execute --zone="DNS_ZONE_NAME"
Ganti
DNS_ZONE_NAME
dengan nama zona DNS target.
Terraform
Untuk menambahkan data CNAME ke konfigurasi DNS, Anda dapat menggunakan
resource google_dns_record_set
.
Memverifikasi status sertifikat
Sebelum men-deploy sertifikat ke load balancer, pastikan sertifikat tersebut aktif. Diperlukan
waktu beberapa menit agar status sertifikat berubah menjadi ACTIVE
.
Konsol
Di konsol Google Cloud, buka halaman Certificate Manager.
Di tab Sertifikat, periksa kolom Status untuk sertifikat.
gcloud
Untuk memverifikasi status sertifikat, jalankan perintah berikut:
gcloud certificate-manager certificates describe CERTIFICATE_NAME
Ganti CERTIFICATE_NAME
dengan nama sertifikat yang dikelola Google
target.
Outputnya mirip dengan hal berikut ini:
createTime: '2021-10-20T12:19:53.370778666Z' expireTime: '2022-05-07T05:03:49Z' managed: authorizationAttemptInfo: - domain: myorg.example.com state: AUTHORIZED dnsAuthorizations: - projects/myProject/locations/global/dnsAuthorizations/myCert domains: - myorg.example.com state: ACTIVE name: projects/myProject/locations/global/certificates/myCert pemCertificate: | -----BEGIN CERTIFICATE----- [...] -----END CERTIFICATE----- sanDnsnames: - myorg.example.com updateTime: '2021-10-20T12:19:55.083385630Z'
Jika status sertifikat bukan ACTIVE
setelah beberapa jam, pastikan Anda telah menambahkan data CNAME
dengan benar ke konfigurasi DNS.
Untuk mengetahui langkah pemecahan masalah lainnya, lihat Memecahkan Masalah Pengelola Sertifikat.
Membuat peta sertifikat
Untuk men-deploy sertifikat ke Load Balancer Aplikasi eksternal global, buat peta sertifikat.
gcloud certificate-manager maps create CERTIFICATE_MAP_NAME
Ganti kode berikut:
CERTIFICATE_MAP_NAME
: nama peta sertifikat.
Membuat entri peta sertifikat
Untuk men-deploy sertifikat ke Load Balancer Aplikasi eksternal global, buat entri peta sertifikat.
Untuk setiap sertifikat yang ingin dimigrasikan, buat entri peta sertifikat yang mereferensikan sertifikat tersebut sebagai berikut:
Dapatkan detail sertifikat.
Dalam log, untuk setiap domain yang tercantum di kolom
subjectAlternativeNames
, buat entri peta sertifikat yang mencakup domain tersebut. Jika lebih dari satu sertifikat mencakup satu domain, Anda hanya perlu membuat satu entri peta sertifikat dan menggunakan sertifikat valid yang mencakup domain tersebut.gcloud certificate-manager maps entries create CERTIFICATE_MAP_ENTRY_NAME \ --map="CERTIFICATE_MAP_NAME" \ --certificates="CERTIFICATE_NAMES" \ --hostname="HOSTNAME"
Ganti kode berikut:
CERTIFICATE_MAP_ENTRY_NAME
: nama entri peta sertifikat.CERTIFICATE_MAP_NAME
: nama peta sertifikat tempat entri peta sertifikat dilampirkan.CERTIFICATE_NAMES
: daftar nama sertifikat yang dipisahkan koma yang ingin Anda kaitkan dengan entri peta sertifikat ini.HOSTNAME
: nama host yang ingin Anda kaitkan dengan entri peta sertifikat.
Opsional: Buat entri peta sertifikat utama yang mereferensikan sertifikat yang sesuai dengan sertifikat pertama dari daftar sertifikat yang awalnya dilampirkan ke proxy.
gcloud certificate-manager maps entries create CERTIFICATE_MAP_ENTRY_NAME \ --map="CERTIFICATE_MAP_NAME" \ --certificates="CERTIFICATE_NAMES" \ --set-primary
Ganti kode berikut:
CERTIFICATE_MAP_ENTRY_NAME
: nama entri peta sertifikat.CERTIFICATE_MAP_NAME
: nama peta sertifikat tempat entri peta sertifikat dilampirkan.CERTIFICATE_NAMES
: daftar nama sertifikat yang dipisahkan koma yang ingin Anda kaitkan dengan entri peta sertifikat ini.
Untuk memverifikasi status aktif setiap entri peta sertifikat yang telah Anda buat, jalankan perintah berikut:
gcloud certificate-manager maps entries describe CERTIFICATE_MAP_ENTRY_NAME \ --map="CERTIFICATE_MAP_NAME"
Ganti kode berikut:
CERTIFICATE_MAP_ENTRY_NAME
: nama entri peta sertifikat.CERTIFICATE_MAP_NAME
: nama peta sertifikat tempat entri peta sertifikat dilampirkan.
Outputnya mirip dengan hal berikut ini:
certificates: - projects/my-project/locations/global/certificates/my-certificate createTime: '2021-09-06T10:01:56.229472109Z' hostname: example.com name: projects/my-project/locations/global/certificateMaps/myCertMap/certificateMapEntries/my-map-entry state: ACTIVE updateTime: '2021-09-06T10:01:58.277031787Z'
Opsional: Menguji konfigurasi Anda di load balancer baru
Untuk meminimalkan periode nonaktif, sebaiknya uji peta sertifikat yang baru dikonfigurasi di load balancer baru yang tidak menayangkan traffic produksi. Dengan begitu, Anda dapat mendeteksi dan menyelesaikan error apa pun sebelum melanjutkan migrasi di lingkungan produksi.
Uji konfigurasi Anda sebagai berikut:
Buat load balancer global dengan proxy target baru. Untuk membuat load balancer, lihat halaman berikut:
Untuk membuat Load Balancer Aplikasi eksternal global, lihat Menyiapkan Load Balancer Aplikasi eksternal global dengan backend grup instance VM.
Untuk membuat Load Balancer Jaringan proxy eksternal Global (proxy SSL), lihat Menyiapkan Load Balancer Jaringan proxy eksternal global (proxy SSL) dengan backend grup instance VM.
Untuk membuat Load Balancer Jaringan proxy eksternal Global (proxy TCP), lihat Menyiapkan Load Balancer Jaringan proxy eksternal global (proxy TCP) dengan backend grup instance VM.
Lampirkan peta sertifikat ke proxy target load balancer baru.
gcloud compute target-https-proxies create TEST_PROXY_NAME \ --certificate-map="CERTIFICATE_MAP_NAME" \ --global
Ganti kode berikut:
TEST_PROXY_NAME
: nama proxy target pengujian.CERTIFICATE_MAP_NAME
: nama peta sertifikat yang mereferensikan entri peta sertifikat dan sertifikat terkait.
Untuk setiap domain target yang disertakan dalam migrasi, uji konektivitas ke domain di alamat IP load balancer baru:
openssl s_client -showcerts -servername DOMAIN_NAME -connect IP_ADDRESS:443
Ganti kode berikut:
DOMAIN_NAME
: nama domain target.IP_ADDRESS
: alamat IP load balancer baru Anda.
Untuk mengetahui informasi selengkapnya tentang pengujian konektivitas, lihat Menguji dengan OpenSSL
Membersihkan lingkungan pengujian
Bersihkan lingkungan pengujian yang Anda buat di langkah sebelumnya.
Hapus load balancer pengujian seperti yang dijelaskan dalam Menghapus load balancer.
Jangan hapus sertifikat, peta sertifikat, atau entri peta sertifikat yang Anda buat di langkah sebelumnya.
Menerapkan peta sertifikat baru ke load balancer target
Setelah menguji konfigurasi sertifikat baru dan mengonfirmasi bahwa konfigurasi tersebut valid, terapkan peta sertifikat baru ke load balancer target (load balancer yang menghosting sertifikat Anda) dengan mengikuti langkah-langkah berikut.
Jika Anda menggunakan load balancer global, lampirkan peta sertifikat ke proxy target load balancer baru:
gcloud compute target-https-proxies update TARGET_PROXY_NAME \ --certificate-map="CERTIFICATE_MAP_NAME" \ --global
Ganti kode berikut:
TARGET_PROXY_NAME
: nama proxy target.CERTIFICATE_MAP_NAME
: nama peta sertifikat yang mereferensikan entri peta sertifikat dan sertifikat terkait.
Tunggu hingga perubahan konfigurasi diterapkan dan load balancer mulai menayangkan sertifikat baru. Proses ini biasanya memerlukan waktu beberapa menit, tetapi dapat memerlukan waktu hingga 30 menit.
Sertifikat Anda dimigrasikan. Jika Anda melihat masalah pada traffic, lepaskan peta sertifikat baru dari proxy target. Tindakan ini akan mengembalikan load balancer ke konfigurasi aslinya.