Menggunakan domain uji coba

Pelajari cara mengakses layanan penayangan Knative di cluster Anda untuk pengujian tujuan sebelum memilih untuk memetakan domain kustom.

Secara default, layanan yang Anda deploy ke cluster penyaluran Knative Anda disetel ke domain dasar nip.io. Oleh karena itu, jika Anda menggunakan nama yang disarankan untuk {i>ingress gateway <i}Anda dapat segera menguji layanan dan mengirimkan permintaan tanpa konfigurasi tambahan. Contoh: http://{SERVICE_NAME}.{NAMESPACE}.kuberun.{EXTERNAL_IP}.nip.io.

Perhatikan bahwa mungkin ada masalah seputar keandalan permintaan saat menggunakan karakter pengganti DNS, termasuk domain nip.io, adalah layanan {i>wildcard <i}DNS gratis. Sebaliknya, menyiapkan dan menggunakan domain kustom untuk pengujian dapat menawarkan keandalan yang lebih tinggi.

Secara opsional, Anda juga dapat mengakses layanan melalui alamat IP eksternal organisasi.

Menggunakan domain uji coba nip.io

Untuk mengakses layanan menggunakan domain dasar nip.io default, Anda dapat menemukan URL dari dalam Konsol Google Cloud atau Anda dapat membuat URL secara manual.

Konsol

  1. Di konsol Google Cloud, buka halaman Penayangan Knative.

    Buka penayangan Knative

  2. Dalam daftar, klik layanan yang URL-nya ingin Anda dapatkan.

  3. Di dekat bagian atas halaman, URL ditampilkan.

    Contoh: http://my-service.default.kuberun.11.111.11.111.nip.io

    Dengan my-service adalah nama layanan penayangan Knative, default adalah namespace, dan 11.111.11.111 adalah alamat IP eksternal dengan load balancer Jaringan Passthrough Eksternal Regional.

Secara manual

Untuk membuat URL ke layanan secara manual, Anda menggunakan nama layanan, namespace tempat layanan tersebut berjalan, dan alamat IP load balancer Anda:

http://SERVICE.NAMESPACE.kuberun.EXTERNAL_IP.nip.io

Ganti:

  • SERVICE_NAME dengan nama layanan Anda.
  • NAMESPACE dengan namespace tempat Anda men-deploy layanan. Menurut secara default, layanan di-deploy ke namespace default.
  • EXTERNAL_IP dengan alamat IP eksternal load balancer Anda.

Misalnya, jika Anda memiliki layanan bernama hello di namespace default dan alamat IP eksternal Anda adalah 12.345.67.890, URL-nya mungkin akan terlihat seperti ini:

http://hello.default.kuberun.12.345.67.890.nip.io

Menggunakan alamat IP eksternal

Anda juga dapat menggunakan alamat IP eksternal load balancer untuk mengakses layanan Anda melalui perintah cURL atau dengan secara manual mengkonfigurasi layanan {i>wildcard <i}DNS alternatif.

Sebelum memulai

Mendapatkan alamat IP eksternal

Saat cluster GKE Enterprise Anda dibuat, pengontrol masuk Istio membuat Load Balancer Jaringan Google Cloud dengan dengan Alamat IP tertentu

Untuk mengonfigurasi akses ke layanan Anda dengan cURL atau layanan DNS, Anda harus terlebih dahulu mendapatkan alamat IP eksternal dari layanan load balancer:

Konsol

Untuk mendapatkan alamat IP eksternal load balancer dari Konsol Google Cloud:
  1. Buka halaman GKE di Konsol Google Cloud:
    Buka GKE
  2. Klik Layanan dan traffic masuk.
  3. Mengidentifikasi layanan yang merupakan Istio cluster Anda traffic masuk. Jenis layanan akan menjadi Pemuatan eksternal load balancer, dan Name akan menjadi istio-ingressgateway.
  4. 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 menyalin 00.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.

Setelah mendapatkan alamat IP eksternal load balancer, Anda dapat menggunakannya di perintah cURL atau dengan layanan karakter pengganti DNS untuk mengakses Layanan penyaluran Knative.

Menggunakan cURL

Anda dapat menggunakan cURL perintah dengan domain dasar nip.io default untuk mengirim permintaan ke layanan Anda.

Anda menentukan alamat IP eksternal load balancer bersama dengan nama layanan dan namespace Anda di perintah cURL:

curl --header 'Host: SERVICE_NAME.NAMESPACE.kuberun.EXTERNAL_IP.nip.io' EXTERNAL_IP

Ganti:

  • SERVICE_NAME dengan nama layanan penayangan Knative Anda.
  • NAMESPACE dengan namespace tempat layanan Anda berjalan.
  • EXTERNAL_IP dengan alamat IP eksternal load balancer Anda.

Contoh:

curl --header 'Host: my-service.default.kuberun.12.345.67.890.nip.io' http://12.345.67.890

Menggunakan layanan karakter pengganti DNS lainnya

Secara default, layanan penayangan Knative Anda menggunakan DNS nip.io layanan karakter pengganti. Namun, Anda dapat memilih untuk menggunakan layanan lain seperti sslip.io. Untuk mengonfigurasi layanan karakter pengganti DNS lainnya Anda harus terlebih dahulu mendapatkan alamat IP eksternal muatan Anda load balancer, lalu menggunakan alamat IP tersebut untuk mengonfigurasi layanan karakter pengganti DNS.

Mengonfigurasi domain cluster Anda

Penayangan Knative menggunakan ConfigMap config-domain untuk menentukan dasar domain yang digunakan semua layanan penayangan Knative Anda. Anda dapat mengupdate ConfigMap tersebut melalui Konsol Google Cloud atau dengan perintah kubectl.

Konsol

Untuk mengubah domain dasar default dari nip.io menjadi salah satu DNS layanan karakter pengganti di Konsol Google Cloud:

  1. Buka halaman Pemetaan domain Knative server di Konsol Google Cloud:

    Buka Pemetaan domain

  2. Pilih Tambahkan pemetaan > Tambahkan domain default cluster

  3. Pilih kotak centang di samping "Terapkan pemetaan domain ini ke semua layanan penyaluran Knative yang di-deploy ke cluster ini."

  4. Pilih cluster Anda dari menu drop-down.

  5. Di kolom Domain, masukkan situs DNS karakter pengganti yang ingin Anda gunakan. Sebagai contoh: sslip.io

kubectl

Untuk mengubah domain dasar default dari nip.io menjadi salah satu DNS situs karakter pengganti, gunakan perintah:

kubectl patch configmap config-domain --namespace knative-serving --patch \
  '{"data": {"kuberun.EXTERNAL_IP.nip.io": null, "DNS_SERVICE": ""}}'

Ganti

  • EXTERNAL_IP dengan Load Balancer alamat IP eksternal.
  • DNS_SERVICE dengan situs DNS karakter pengganti yang Anda gunakan. Sebagai contoh: sslip.io

Layanan Anda kini tersedia di http://{SERVICE_NAME}.{NAMESPACE}.kuberun.{EXTERNAL_IP}.{DNS_SERVICE}.