Mengelola gateway masuk Apigee

Dimulai dengan Apigee Hybrid versi 1.8, Apigee Hybrid menggunakan gateway masuk Apigee untuk menyediakan gateway masuk untuk hybrid.

Mengonfigurasi gateway masuk Apigee

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

Sintaks

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. Bisa saja berupa nama apa pun yang sesuai persyaratan berikut:
    • Memiliki panjang maksimum 17 karakter
    • Hanya berisi karakter alfanumerik huruf kecil, '-' atau '.'
    • Awali dengan karakter alfanumerik
    • Diakhiri dengan karakter alfanumerik

    Lihat ingressGateways[].name dalam referensi properti Configuration

  • REPLICAS_MIN dan REPLICAS_MAX Jumlah replika minimum dan maksimum untuk Gateway masuk Apigee di penginstalan Anda. Lihat ingressGateways[].replicaCountMin dan ingressGateways[].replicaCountMax dalam referensi properti Configuration.
  • CPU_COUNT_REQ dan MEMORY_REQ Permintaan CPU dan memori untuk masing-masing instance gateway masuk Apigee di 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.

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

  • SVC_ANNOTATIONS_KEY SVC_ANNOTATIONS_VALUE (opsional):

    Ini adalah pasangan nilai kunci yang memberikan pada anotasi layanan masuk default Anda. Anotasi digunakan oleh platform {i>cloud<i} Anda untuk membantu mengkonfigurasi instalasi hybrid, misalnya mengatur jenis load balancer internal atau eksternal. Contoh:

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

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

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

Terapkan konfigurasi gateway masuk Apigee

Terapkan perubahan ke cakupan organisasi dengan apigeectl.

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

Tugas pengelolaan

Beberapa tugas pengelolaan umum untuk gateway masuk Apigee:

Menskalakan gateway masuk Apigee:

Perbarui properti berikut di file penggantian.

  • 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.

  • 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.

  • 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 masuk Apigee default:

Jika Anda membuat layanan Kubernetes kustom untuk deployment gateway masuk, Anda dapat menonaktifkan pembuatan load balancer layanan Kubernetes. Ubah ingressGateways[].svcType ke ClusterIP dalam file penggantian. 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.

Memungkinkan klien non-SNI

Lihat Mengaktifkan klien non-SNI dan HTTP.

Menginstal gateway masuk Apigee tambahan

Di file overrides.yaml, Anda dapat menambahkan beberapa gateway masuk. Tujuan Properti konfigurasi ingressGateways adalah array. Untuk 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.

Memetakan host virtual ke deployment gateway masuk Apigee

Anda dapat menggunakan label pemilih untuk memetakan host virtual ke deployment gateway masuk Apigee. Di kolom contoh berikut, {i>host<i} virtual spam-vh dikonfigurasi untuk berjalan di gateway masuk yang berlabel meat dan dua host virtual lainnya berjalan di gateway masuk fruit. Gateway masuk harus diberi label yang 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

    

Menambahkan ciphersuite kustom ke deployment gateway masuk Apigee

Apigee Hybrid mendukung ciphersuite TLS v1.2. Jika Anda menggunakan TLS v1.0 atau v1.1, Anda dapat menggunakan virtualhosts.cipherSuites di file penggantian untuk menambahkan ciphersuite kustom ke deployment gateway masuk Apigee Anda.

Misalnya, untuk mendukung TLS v.1.1:

virtualhosts:
- name: ENV_GROUP_NAME
  minTLSProtocolVersion: "1.1"
  cipherSuites:
  - "ECDHE-ECDSA-AES128-GCM-SHA256"
  - "ECDHE-RSA-AES128-GCM-SHA256"
  - "ECDHE-ECDSA-AES256-GCM-SHA384"
  - "ECDHE-RSA-AES256-GCM-SHA384"
  - "ECDHE-ECDSA-CHACHA20-POLY1305"
  - "ECDHE-RSA-CHACHA20-POLY1305"
  - "ECDHE-ECDSA-AES128-SHA"
  - "ECDHE-RSA-AES128-SHA"
  - "ECDHE-ECDSA-AES256-SHA"
  - "ECDHE-RSA-AES256-SHA"
  ...

Misalnya, untuk mendukung TLS v.1.0:

virtualhosts:
- name: ENV_GROUP
  minTLSProtocolVersion: "1.0"
  cipherSuites:
  - "ECDHE-ECDSA-AES128-GCM-SHA256"
  - "ECDHE-RSA-AES128-GCM-SHA256"
  - "ECDHE-ECDSA-AES256-GCM-SHA384"
  - "ECDHE-RSA-AES256-GCM-SHA384"
  - "ECDHE-ECDSA-CHACHA20-POLY1305"
  - "ECDHE-RSA-CHACHA20-POLY1305"
  - "ECDHE-ECDSA-AES128-SHA"
  - "ECDHE-RSA-AES128-SHA"
  - "ECDHE-ECDSA-AES256-SHA"
  - "ECDHE-RSA-AES256-SHA"
  ...

Menyesuaikan log akses Ingress

Anda dapat menyesuaikan tujuan dan format log akses gateway masuk Apigee dengan istiod.accessLogFile dan istiod.accessLogFormat dalam properti konfigurasi. Dalam contoh berikut, output akan dikirim ke /dev/stdout, yang merupakan nilai default untuk istiod.accessLogFile:

istiod:
  accessLogFormat: '{"request_path":"%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%","status":"%RESPONSE_CODE%"}'

Anda dapat menonaktifkan logging akses gateway masuk Apigee dengan menetapkan istiod.accessLogFile dan kosong dengan sejumlah nilai. Contoh:

istiod:
  accessLogFile: ''

FAQ

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