Mengonfigurasi domain kustom yang akan digunakan untuk mengakses penayangan Knative Anda
layanan IT perusahaan mereka. Anda dapat memetakan satu atau beberapa domain kustom ke layanan individual, atau Anda
dapat memetakan satu domain ke cluster Anda yang digunakan oleh semua layanan. Kustom Anda
pemetaan domain dapat berupa domain dasar
seperti your-domain.com
, atau subdomain,
seperti your-subdomain.your-domain.com
.
Secara default, layanan yang Anda deploy ke cluster inferensi Knative
disetel ke domain dasar nip.io
. Hal ini memungkinkan Anda untuk segera menguji
layanan di URL seperti:
http://{SERVICE_NAME}.{NAMESPACE}.kuberun.{EXTERNAL_IP}.nip.io
Pelajari lebih lanjut domain uji coba.
Sebelum memulai
Anda harus memiliki atau membeli domain yang ingin dipetakan ke layanan Anda. Anda dapat menggunakan {i>registrar<i} nama domain apa pun, tetapi jika Anda menggunakan Cloud Domains, domain akan otomatis untuk penyaluran Knative, Anda tidak perlu melalui proses verifikasi domain.
Jika ingin mendaftarkan domain dengan Cloud Domains, lihat Mendaftarkan domain ke Cloud Domains dalam Konsol penayangan Knative.
Anda harus memiliki setidaknya Developer Kubernetes Engine Peran Identity and Access Management atau izin yang setara.
Untuk mengaktifkan HTTPS dengan pemetaan domain kustom, Anda harus menyiapkan sertifikat TLS terkelola atau mengonfigurasi sertifikat Anda sendiri.
Untuk memetakan domain kustom ke cluster atau layanan Anda di jaringan internal pribadi, Anda harus nonaktifkan sertifikat TLS terkelola.
Memetakan domain kustom
Anda dapat menggunakan konsol Google Cloud atau alat command line untuk memetakan domain kustom.
Secara umum, untuk mengonfigurasi domain kustom:
- Opsional: Cadangkan alamat IP load balancer.
- Petakan layanan atau cluster Anda ke domain kustom di penayangan Knative.
- Perbarui data DNS di registrar domain Anda.
Mencadangkan alamat IP load balancer
Saat penayangan Knative diinstal, pengontrol masuk Istio membuat load balancer dengan alamat IP yang tersedia.
Bergantung pada cluster GKE, Anda mungkin perlu mencadangkan IP alamat load balancer untuk pengontrol masuk Istio:
- Di luar Google Cloud
- Lihat dokumentasi untuk lingkungan tempat Anda menjalankan GKE untuk menentukan cara alamat IP dikelola dan apakah beban Anda alamat IP load balancer adalah statis. Lihat juga halaman konfigurasi untuk Cluster GKE. Misalnya, tergantung pada bagaimana Anda mengonfigurasi load balancing untuk Google Distributed Cloud, atau Anda mungkin memiliki sudah mencadangkan alamat IP tersebut.
- Di Google Cloud
Anda harus mencadangkan alamat IP eksternal load balancer ke memastikannya tetap sama jika layanan masuk Anda dihapus. Bergantung pada konfigurasi cluster Anda, alamat IP bersifat eksternal atau khusus internal. Misalnya, cluster pribadi.
- Load balancer internal di Google Cloud
- Lihat halaman berikut untuk detail tentang cara mencadangkan alamat IP load balancer internal Anda: Mencadangkan alamat IP internal statis
- Load balancer eksternal di Google Cloud
- Untuk mencadangkan alamat IP load balancer eksternal:
Dapatkan alamat IP load balancer:
Konsol
Untuk mendapatkan alamat IP eksternal load balancer dari Konsol Google Cloud:- Buka halaman GKE di Konsol Google Cloud:
Buka GKE - Klik Layanan dan traffic masuk.
- Mengidentifikasi layanan yang merupakan Istio cluster Anda
traffic masuk. Jenis layanan akan menjadi Pemuatan eksternal
load balancer, dan Name akan menjadi
istio-ingressgateway
. - Setelah menemukan layanan masuk Istio cluster Anda, salin
Endpoint. Ini akan menjadi alamat IP tanpa porta
angka Misalnya, Anda mungkin melihat
00.000.000.000:11
tercantum sebagai endpoint, tetapi Anda hanya perlu menyalin00.000.000.000
.
kubectl
Untuk mendapatkan IP eksternal untuk Load Balancer, jalankan perintah berikut:
kubectl get svc istio-ingressgateway -n ASM-INGRESS-NAMESPACE
Ganti ASM-INGRESS-NAMESPACE dengan namespace tempat Ingress Cloud Service Mesh ditemukan. Tentukan
istio-system
jika Anda menginstal Cloud Service Mesh menggunakan konfigurasi defaultnya.Output yang dihasilkan terlihat mirip dengan berikut ini:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) istio-ingressgateway LoadBalancer XX.XX.XXX.XX pending 80:32380/TCP,443:32390/TCP,32400:32400/TCP
dengan nilai EXTERNAL-IP adalah alamat IP eksternal Anda Penyeimbang.
- Buka halaman GKE di Konsol Google Cloud:
Cadangkan alamat IP sebagai IP statis:
gcloud compute addresses create ADDRESS-NAME --addresses EXTERNAL-IP --region REGION
Ganti:
- ADDRESS-NAME dengan nama yang ingin Anda berikan KI.
- EXTERNAL-IP dengan alamat IP eksternal load balancer yang Anda peroleh di langkah sebelumnya.
- REGION dengan wilayah lokasi cluster Anda.
Setelah mendapatkan alamat IP load balancer, Anda dapat menggunakannya untuk memetakan domain kustom Anda:
Layanan pemetaan
Pilih salah satu metode berikut untuk memetakan domain kustom Anda ke Layanan penyaluran Knative. Setiap layanan dapat dipetakan ke beberapa domain.
Konsol
Buka halaman pemetaan domain di Konsol Google Cloud:
Perlu diperhatikan bahwa tampilan jendela Anda terlalu kecil, Tombol Pemetaan Domain Kustom tidak ditampilkan dan Anda harus mengklik ikon elips vertikal 3 titik di sebelah pojok kanan halaman.
Klik Tambahkan Pemetaan, lalu pilih Tambahkan pemetaan domain layanan untuk memetakan domain ke layanan individual. Anda dapat memetakan beberapa domain ke layanan.
Dari daftar dropdown di formulir Add Mapping, pilih layanan untuk yang diinginkan untuk memetakan domain kustom Anda:
Masukkan nama domain. Misalnya,
your-domain.com
atausubdomain.your-domain.com
. Persyaratan domain:- Pemetaan jalur dasar tidak didukung. Istilah jalur dasar
mengacu pada nama jalur URL
yang setelah nama domain. Misalnya,
users
adalah jalur dasaryour-domain.com/users
. Penyajian Knative hanya memungkinkan Anda dapat memetakan domain ke/
, bukan ke jalur dasar tertentu. Jadi setiap jalur {i>routing<i} memiliki ditangani dengan menggunakan {i>router<i} di dalam kontainer layanan atau dengan menggunakan Firebase Hosting. -
Anda tidak dapat memetakan domain ke subdomain yang sama dengan URL
layanan Anda. URL ke layanan didefinisikan sebagai
http://{service}.{namespace}.{your-domain.com}
. Oleh karena itu, jika Anda memiliki ditest.default.your-domain.com
, Anda tidak boleh membuat pemetaan domain ke subdomain yang samatest.default.
your-domain.com
.
- Pemetaan jalur dasar tidak didukung. Istilah jalur dasar
mengacu pada nama jalur URL
yang setelah nama domain. Misalnya,
Klik Lanjutkan.
Memperbarui data DNS di registrar domain menggunakan data DNS yang ditampilkan di langkah terakhir. Anda dapat menampilkan data kapan saja dengan mengklik Data DNS pada "..." menu tindakan untuk pemetaan domain.
Klik Done.
gcloud
Lakukan pemetaan layanan Anda ke domain kustom:
gcloud run domain-mappings create --service SERVICE --domain DOMAIN
Ganti:
- SERVICE dengan nama layanan Anda.
- DOMAIN dengan domain kustom Anda. Misalnya,
your-domain.com
atausubdomain.your-domain.com
. Persyaratan domain:- Pemetaan jalur dasar tidak didukung. Istilah jalur dasar
mengacu pada nama jalur URL
yang setelah nama domain. Misalnya,
users
adalah jalur dasaryour-domain.com/users
. Penyajian Knative hanya memungkinkan Anda dapat memetakan domain ke/
, bukan ke jalur dasar tertentu. Jadi setiap jalur {i>routing<i} memiliki ditangani dengan menggunakan {i>router<i} di dalam kontainer layanan atau dengan menggunakan Firebase Hosting. -
Anda tidak dapat memetakan domain ke subdomain yang sama dengan URL
layanan Anda. URL ke layanan didefinisikan sebagai
http://{service}.{namespace}.{your-domain.com}
. Oleh karena itu, jika Anda memiliki ditest.default.your-domain.com
, Anda tidak boleh membuat pemetaan domain ke subdomain yang samatest.default.
your-domain.com
.
- Pemetaan jalur dasar tidak didukung. Istilah jalur dasar
mengacu pada nama jalur URL
yang setelah nama domain. Misalnya,
Sekarang setelah domain kustom dipetakan ke penayangan Knative, Anda harus menambahkan data DNS di registrar domain.
Memetakan cluster
Pilih salah satu metode berikut untuk memetakan domain kustom ke cluster Anda:
Konsol
Buka halaman pemetaan domain di Konsol Google Cloud:
Perlu diperhatikan bahwa tampilan jendela Anda terlalu kecil, Tombol Pemetaan Domain Kustom tidak ditampilkan dan Anda harus mengklik ikon elips vertikal 3 titik di sebelah pojok kanan halaman.
Klik Tambahkan Pemetaan, lalu pilih Tambahkan domain default untuk memetakan domain semua layanan di cluster Anda. Secara default, layanan baru yang Anda deploy menggunakan domain yang dipetakan.
Klik kotak centang untuk menerapkan pemetaan domain baru ke semua layanan IT di cluster Anda.
Dari daftar dropdown di formulir Add Mapping, pilih cluster yang akan disertakan yang diinginkan untuk memetakan domain kustom Anda:
Masukkan nama domain. Misalnya,
your-domain.com
atausubdomain.your-domain.com
. Persyaratan domain:- Pemetaan jalur dasar tidak didukung. Istilah jalur dasar
mengacu pada nama jalur URL
yang setelah nama domain. Misalnya,
users
adalah jalur dasaryour-domain.com/users
. Penyajian Knative hanya memungkinkan Anda dapat memetakan domain ke/
, bukan ke jalur dasar tertentu. Jadi setiap jalur {i>routing<i} memiliki ditangani dengan menggunakan {i>router<i} di dalam kontainer layanan atau dengan menggunakan Firebase Hosting. -
Anda tidak dapat memetakan domain ke subdomain yang sama dengan URL
layanan Anda. URL ke layanan didefinisikan sebagai
http://{service}.{namespace}.{your-domain.com}
. Oleh karena itu, jika Anda memiliki ditest.default.your-domain.com
, Anda tidak boleh membuat pemetaan domain ke subdomain yang samatest.default.
your-domain.com
.
- Pemetaan jalur dasar tidak didukung. Istilah jalur dasar
mengacu pada nama jalur URL
yang setelah nama domain. Misalnya,
Klik Lanjutkan.
Memperbarui data DNS di registrar domain menggunakan data DNS yang ditampilkan di langkah terakhir. Anda dapat menampilkan data kapan saja dengan mengklik Data DNS pada "..." menu tindakan untuk pemetaan domain.
Klik Done.
kubectl
Jalankan perintah berikut untuk menghapus domain dasar yang ada dari ConfigMap
config-domain
dan ganti dengan domain kustom Anda:kubectl patch configmap config-domain --namespace knative-serving --patch \ '{"data": {"nip.io": null, "DOMAIN": ""}}'
Ganti DOMAIN dengan domain kustom Anda. Misalnya,
your-domain.com
atausubdomain.your-domain.com
. Persyaratan domain:- Pemetaan jalur dasar tidak didukung. Istilah jalur dasar
mengacu pada nama jalur URL
yang setelah nama domain. Misalnya,
users
adalah jalur dasaryour-domain.com/users
. Penyajian Knative hanya memungkinkan Anda dapat memetakan domain ke/
, bukan ke jalur dasar tertentu. Jadi setiap jalur {i>routing<i} memiliki ditangani dengan menggunakan {i>router<i} di dalam kontainer layanan atau dengan menggunakan Firebase Hosting. -
Anda tidak dapat memetakan domain ke subdomain yang sama dengan URL
layanan Anda. URL ke layanan didefinisikan sebagai
http://{service}.{namespace}.{your-domain.com}
. Oleh karena itu, jika Anda memiliki ditest.default.your-domain.com
, Anda tidak boleh membuat pemetaan domain ke subdomain yang samatest.default.
your-domain.com
.
- Pemetaan jalur dasar tidak didukung. Istilah jalur dasar
mengacu pada nama jalur URL
yang setelah nama domain. Misalnya,
Sekarang setelah domain kustom dipetakan ke penayangan Knative, Anda harus menambahkan data DNS di registrar domain.
Tambahkan data DNS di registrar domain
Setelah Anda memetakan layanan Anda ke domain khusus dalam penayangan Knative, Anda perlu memperbarui data DNS di {i>registrar<i} domain. Untuk memudahkan, Penyajian Knative membuat dan menampilkan data DNS yang perlu Anda masukkan. Anda harus menambahkan data yang mengarah ke layanan penayangan Knative di {i>registrar<i} domain Anda agar pemetaan diberlakukan.
Jika Anda menggunakan Cloud DNS sebagai penyedia DNS, lihat Penambahan data.
Ambil informasi data DNS untuk pemetaan domain menggunakan:
Konsol
Buka halaman pemetaan domain penayangan Knative:
Klik ikon elips vertikal titik 3 di sebelah kanan layanan Anda, lalu klik DATA DNS untuk menampilkan semua data DNS:
gcloud
gcloud run domain-mappings describe --domain DOMAIN
Ganti DOMAIN dengan domain kustom Anda. Misalnya,
your-domain.com
atausubdomain.your-domain.com
.Anda memerlukan semua data yang ditampilkan di bawah judul
resourceRecords
.Login ke akun Anda di registrar domain, dan kemudian buka halaman konfigurasi DNS.
Temukan bagian {i>host records<i} di laman konfigurasi domain, lalu kemudian tambahkan setiap catatan sumber daya yang Anda terima saat Anda memetakan domain Anda ke layanan penayangan Knative Anda.
Saat Anda menambahkan setiap data DNS diatas ke akun di penyedia DNS:
- Pilih jenis yang ditampilkan dalam data DNS di langkah sebelumnya:
A
, atauAAAA
, atauCNAME
. - Gunakan nama
www
untuk pemetaan kewww.your-domain.com
. - Gunakan nama
@
untuk memetakanyour-domain.com
. - Gunakan
karakter pengganti
*
untuk dipetakan ke*.your-domain.com
.
- Pilih jenis yang ditampilkan dalam data DNS di langkah sebelumnya:
Simpan perubahan di halaman konfigurasi DNS untuk akun domain Anda. Umumnya, diperlukan waktu beberapa menit agar perubahan ini diterapkan, tetapi dalam beberapa kasus, diperlukan waktu hingga beberapa jam, bergantung pada registrar dan Time-To-Live (TTL) dari data DNS sebelumnya untuk domain Anda. Anda dapat menggunakan alat
dig
, seperti versidig
online ini, untuk mengonfirmasi bahwa data DNS telah berhasil diupdate.Uji kesuksesan dengan menjelajahi layanan Anda di URL barunya, misalnya
https://www.your-domain.com
. Perlu diperhatikan bahwa diperlukan waktu beberapa menit agar sertifikat SSL/TLS terkelola dapat diterbitkan.
Menambahkan pemilik domain terverifikasi ke pengguna atau akun layanan lain
Saat pengguna memverifikasi domain, domain tersebut hanya diverifikasi ke akun pengguna tersebut. Hal ini berarti bahwa hanya pengguna tersebut yang dapat menambahkan lebih banyak pemetaan domain yang menggunakan domain tersebut. Jadi, untuk memungkinkan pengguna lain untuk menambahkan pemetaan yang menggunakan domain tersebut, Anda harus menambahkan mereka sebagai pemilik verifikasi.
Jika Anda perlu untuk menambahkan pemilik verifikasi domain Anda ke pengguna, atau akun layanan lain, Anda dapat menambahkan perizinan melalui halaman Search Console :
Buka alamat ini di browser web Anda:
Di bagian Properties, klik domain yang ingin ditambahkan pengguna atau akun layanan.
Scroll ke bawah ke daftar Pemilik terverifikasi, klik Tambahkan pemilik, dan lalu masukkan alamat email atau ID akun layanan Akun Google.
Untuk melihat daftar akun layanan Anda, buka Akun Layanan di Konsol Google Cloud:
Mendaftarkan domain dengan Cloud Domains dalam konsol penayangan Knative
Untuk mendaftarkan domain ke Cloud Domains dari dalam Konsol penayangan Knative:
Buka halaman pemetaan domain penayangan Knative:
Klik Register domain.
Selesaikan proses pendaftaran dengan mengikuti petunjuk untuk Mendaftarkan domain.
Selesaikan langkah-langkah sebelumnya di halaman ini untuk Petakan domain Anda ke penayangan Knative, lalu menambahkan data DNS di registrar domain.
Pemecahan masalah
Lihat masalah umum di Memecahkan masalah domain kustom dan TLS terkelola.