Mengelola gateway masuk Apigee

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

Mengonfigurasi gateway ingress Apigee

Anda dapat mengonfigurasi gateway ingress 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.
    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
    • Diakhiri dengan karakter alfanumerik

    Lihat ingressGateways[].name di referensi properti Konfigurasi

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

    Lihat ingressGateways[].resources.requests.cpu dan ingressGateways[].resources.requests.memory di Referensi properti konfigurasi.

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

    Lihat ingressGateways[].resources.limits.cpu dan ingressGateways[].resources.limits.memory di 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 Anda, misalnya menetapkan jenis load balancer ke internal atau eksternal. Contoh:

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

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

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

Menerapkan konfigurasi gateway masuk 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 ingress 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. Perbarui pengontrol Apigee untuk berhenti memperbarui 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. Perbarui 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 sebagai berikut:

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

    Terapkan perubahan konfigurasi:

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

    Untuk mengetahui informasi selengkapnya, lihat virtualhosts.selector di Referensi properti konfigurasi.

Menskalakan gateway traffic masuk Apigee:

Perbarui properti berikut dalam 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 dalam 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.

Memperbarui layanan gateway ingress Apigee

Perbarui properti berikut dalam 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 gateway traffic masuk Apigee default:

Jika membuat layanan Kubernetes kustom untuk deployment gateway ingress, Anda dapat menonaktifkan pembuatan load balancer di layanan Kubernetes default. Perbarui properti ingressGateways[].svcType menjadi 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.

Mengaktifkan klien non-SNI

Lihat Mengaktifkan klien non-SNI dan HTTP.

Menginstal gateway traffic masuk Apigee tambahan

Di file overrides.yaml, Anda dapat menambahkan beberapa gateway ingress. 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 ingress Apigee berlabel ke host virtual tertentu dalam file penggantian. Konfigurasi ini menentukan gateway ingress tempat Apigee akan menerapkan konfigurasi host virtual. Dalam contoh berikut, host virtual spam-vh dikonfigurasi untuk menggunakan gateway ingress berlabel meat dan dua host virtual lainnya menggunakan gateway ingress fruit. Gateway ingress 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 ingress Apigee dapat dijalankan bersama dengan penginstalan Anthos Service Mesh/Istio yang sudah ada di cluster. Gateway ingress Apigee tidak menyimpan konfigurasi apa pun di apiserver sehingga tidak akan ada konflik.
Siapa yang bertanggung jawab untuk mengupgrade komponen gateway ingress Apigee?
Upgrade komponen gateway ingress Apigee ditangani oleh Apigee dan terjadi selama upgrade hybrid dan rilis patch reguler.
Bagaimana cara mengekspos port 80 di gateway masuk Apigee?
Port 80 tidak didukung oleh gateway ingress Apigee. Jika Anda bermigrasi dari Anthos Service Mesh ke gateway ingress Apigee, dan mengikuti petunjuk di postingan komunitas untuk mengaktifkan Port 80, hal ini tidak akan berfungsi dengan gateway Ingress Apigee.