Mengelola gateway masuk Apigee

Mulai dari Apigee Hybrid versi 1.8, Apigee Hybrid menggunakan Apigee ingress gateway untuk menyediakan gateway masuk bagi hybrid.

Mengonfigurasi gateway masuk Apigee

Anda dapat mengonfigurasi gateway masuk di overrides.yaml. Contoh:

Sintaksis

ingressGateways:
- name: INGRESS_NAME
  replicaCountMin: REPLICAS_MIN
  replicaCountMax: REPLICAS_MAX
  resources:
    requests:
      cpu: CPU_COUNT_REQ
      memory: MEMORY_REQ
    limits:
      cpu: CPU_COUNT_LIMIT
      memory: MEMORY_LIMIT
  svcAnnotations:  # optional. See Known issue 243599452.
    SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE
  svcLoadBalancerIP: SVC_LOAD_BALANCER_IP # optional

Contoh

ingressGateways:
- name: prod1
  replicaCountMin: 2
  replicaCountMax: 100
  resources:
    requests:
      cpu: 1
      memory: 1Gi
    limits:
      cpu: 2
      memory: 2Gi
  svcAnnotations:  # optional. See Known issue 243599452.
    networking.gke.io/load-balancer-type: "Internal"
  svcLoadBalancerIP: 198.252.0.123 
  • INGRESS_NAME adalah nama deployment gateway masuk. Nama ini dapat berupa nama apa pun yang memenuhi persyaratan berikut:
    • Memiliki panjang maksimum 17 karakter
    • Hanya berisi karakter alfanumerik huruf kecil, '-' atau '.'
    • Diawali dengan karakter alfanumerik
    • Akhiri dengan karakter alfanumerik

    Lihat ingressGateways[].name di referensi properti Konfigurasi

  • REPLICAS_MIN dan REPLICAS_MAX Jumlah replika minimum dan maksimum untuk gateway masuk Apigee dalam penginstalan Anda. Lihat ingressGateways[].replicaCountMin dan ingressGateways[].replicaCountMax dalam referensi properti Konfigurasi.
  • CPU_COUNT_REQ dan MEMORY_REQ Permintaan CPU dan memori untuk setiap replika gateway masuk Apigee dalam penginstalan Anda.

    Lihat ingressGateways[].resources.requests.cpu dan ingressGateways[].resources.requests.memory dalam referensi properti Konfigurasi.

  • CPU_COUNT_LIMIT dan MEMORY_LIMIT Batas CPU dan memori maksimum untuk setiap replika gateway masuk Apigee dalam penginstalan Anda.

    Lihat ingressGateways[].resources.limits.cpu dan ingressGateways[].resources.limits.memory dalam referensi properti Konfigurasi.

  • SVC_ANNOTATIONS_KEY SVC_ANNOTATIONS_VALUE (opsional):

    Ini adalah key-value pair yang menyediakan anotasi untuk layanan ingress default Anda. Anotasi digunakan oleh platform cloud Anda untuk membantu mengonfigurasi penginstalan hybrid, misalnya menetapkan jenis loadbalancer ke internal atau eksternal. Contoh:

    ingressGateways:
      svcAnnotations:
        networking.gke.io/load-balancer-type: "Internal"

    Anotasi bervariasi dari satu platform ke platform lain. Lihat dokumentasi platform Anda untuk anotasi yang wajib dan disarankan.

    Lihat ingressGateways[].svcAnnotations di referensi properti Konfigurasi.
  • SVC_LOAD_BALANCER_IP (opsional). Pada platform yang mendukung penentuan alamat IP load balancer, load balancer akan dibuat dengan alamat IP ini. Pada platform yang tidak mengizinkan Anda menentukan alamat IP load balancer, properti ini akan diabaikan. Lihat ingressGateways[].svcLoadBalancerIP di referensi properti Konfigurasi.

Menerapkan konfigurasi ingress gateway Apigee

Terapkan perubahan pada cakupan organisasi dengan apigeectl.

$APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml --org

Tugas pengelolaan

Beberapa tugas pengelolaan umum untuk gateway masuk Apigee:

Berhenti menyediakan konfigurasi ke ASM

Setelah mengupgrade ke Apigee Hybrid v1.8 dan memigrasikan traffic ke gateway ingress Apigee, Anda dapat berhenti menyediakan konfigurasi perutean ke Anthos Service Mesh.

  1. Update pengontrol Apigee untuk berhenti mengupdate objek CR Anthos Service Mesh di server API. Di file penggantian, tetapkan:

    ao:
      args:
        disableIstioConfigInAPIServer: true
  2. Terapkan perubahan konfigurasi:

    $APIGEECTL_HOME/apigeectl init -f OVERRIDES_FILE
    

    Lihat ao di referensi Properti konfigurasi untuk mengetahui detailnya.

  3. Periksa status deployment dengan perintah berikut, karena perintah sebelumnya memulai ulang pengontrol:
    $APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
  4. Update virtualhosts. Setiap host virtual harus menyertakan label pemilih app dengan nilai app: apigee-ingressgateway. Dengan perubahan ini, gateway Anthos Service Mesh tidak akan dapat membaca konfigurasi perutean Apigee.

    Tambahkan atau ganti properti selector di setiap host virtual seperti berikut:

    virtualhosts:
    - name: ENV_GROUP
      selector:
        app: apigee-ingressgateway # required
      ...
    

    Terapkan perubahan konfigurasi:

    $APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE --settings virtualhosts
    

    Untuk informasi selengkapnya, lihat virtualhosts.selector dalam referensi properti Konfigurasi.

Menskalakan gateway masuk Apigee:

Perbarui properti berikut di file penggantian Anda.

  • ingressGateways[].replicaCountMax
  • ingressGateways[].replicaCountMin

Lihat ingressGateways di referensi Properti konfigurasi untuk mengetahui detailnya.

Terapkan perubahan dengan apigeectl apply --org.

Memperbarui alokasi resource

Perbarui properti berikut di file penggantian Anda.

  • ingressGateways[].resources.limits.cpu
  • ingressGateways[].resources.limits.memory
  • ingressGateways[].resources.requests.cpu
  • ingressGateways[].resources.requests.memory

Lihat ingressGateways di referensi Properti konfigurasi untuk mengetahui detailnya.

Terapkan perubahan dengan apigeectl apply --org.

Mengupdate layanan gateway masuk Apigee

Perbarui properti berikut di file penggantian Anda.

  • ingressGateways[].svcAnnotations
  • ingressGateways[].svcLoadBalancerIP

Lihat ingressGateways di referensi Properti konfigurasi untuk mengetahui detailnya.

Terapkan perubahan dengan apigeectl apply --org.

Nonaktifkan load balancer untuk layanan ingress gateway Apigee default:

Jika membuat layanan Kubernetes kustom untuk deployment gateway ingress, Anda dapat menonaktifkan pembuatan load balancing di layanan Kubernetes default. Perbarui properti ingressGateways[].svcType ke ClusterIP di file penggantian Anda. Contoh:

ingressGateways:
  - name: my-ingress-gateway
    replicaCountMin: 2
    replicaCountMax: 10
    svcType: ClusterIP

Terapkan perubahan dengan apigeectl apply --org.

Mengonfigurasi TLS dan mTLS

Lihat Mengonfigurasi TLS dan mTLS di gateway masuk.

Memfasilitasi klien non-SNI

Lihat Mengaktifkan klien non-SNI dan HTTP.

Menginstal gateway masuk Apigee tambahan

Dalam file overrides.yaml, Anda dapat menambahkan beberapa gateway masuk. Properti konfigurasi ingressGateways adalah array. Untuk mengetahui informasi selengkapnya, lihat ingressGateways di referensi Properti konfigurasi.

Contoh:

ingressGateways:
- name: fruit
  replicaCountMin: 2
  replicaCountMax: 10

- name: meat
  replicaCountMin: 2
  replicaCountMax: 10

Terapkan perubahan dengan apigeectl apply --org.

Menargetkan ingress Apigee ke host virtual

Anda dapat menargetkan gateway masuk Apigee berlabel ke host virtual tertentu dalam file penggantian. Konfigurasi ini menentukan gateway masuk tempat Apigee akan menerapkan konfigurasi host virtual. Pada contoh berikut, spam-vh host virtual dikonfigurasi untuk menggunakan gateway masuk berlabel meat, sedangkan dua host virtual lainnya menggunakan gateway masuk fruit. Gateway masuk harus diberi label dengan benar, seperti yang dijelaskan dalam Menginstal gateway Anthos Service Mesh tambahan.

virtualhosts:
- name: spam-vh
  sslCertPath: cert-spam.crt
  sslKeyPath: cert-spam.key
  selector:
    app: apigee-ingressgateway
    ingress_name: meat
- name: banana-vh
  sslCertPath: cert-banana.crt
  sslKeyPath: cert-banana.key
  selector:
    app: apigee-ingressgateway
    ingress_name: fruit
- name: plum-vh
  sslCertPath: cert-plum.crt
  sslKeyPath: cert-plum.key
  selector:
    app: apigee-ingressgateway
    ingress_name: fruit

    

FAQ

Bagaimana cara kerjanya dengan penginstalan Anthos Service Mesh/Istio saya yang sudah ada di namespace lain?
Selama Apigee diinstal di namespace khusus - Gateway masuk Apigee dapat dijalankan bersama penginstalan Anthos Service Mesh/Istio yang sudah ada di cluster. Gateway masuk Apigee tidak menyimpan konfigurasi apa pun di apiserver sehingga tidak akan terjadi konflik.
Siapa yang bertanggung jawab untuk mengupgrade komponen ingress gateway Apigee?
Upgrade komponen gateway masuk Apigee ditangani oleh Apigee dan terjadi selama rilis patch dan upgrade hybrid reguler.
Bagaimana cara mengekspos port 80 di ingress gateway Apigee?
Port 80 tidak didukung oleh gateway masuk Apigee. Jika Anda bermigrasi dari Anthos Service Mesh ke gateway masuk Apigee, dan mengikuti petunjuk di postingan komunitas untuk mengaktifkan Port 80, gateway ini tidak akan berfungsi dengan gateway Apigee Ingress.