במאמר הזה מוסבר איך להוסיף שערים נוספים של Cloud Service Mesh להתקנת Apigee hybrid.
התקנת שערים נוספים של Cloud Service Mesh
בקובץ Cloud Service Mesh overlay.yaml אפשר להוסיף עוד שערים של תעבורת נכנסת לפי דפוס דומה לזה שבהמשך. שימו לב שהרכיבים
spec.components[].label ו-spec.components[].k8s.service.selector
מאפשרים לשייך שער כניסה עם שם למארח וירטואלי ספציפי, כפי שמוסבר במאמר טירגוט כניסה למארח וירטואלי.
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
profile: asm-gcp
# hub: gcr.io/gke-release/asm # {"$ref":"#/definitions/io.k8s.cli.setters.anthos.servicemesh.hub"}
components:
ingressGateways:
- name: istio-ingressgateway-dairy
enabled: true
label:
app: istio-ingressgateway
ingress_name: dairy
k8s:
service:
selector:
app: istio-ingressgateway
ingress_name: dairy
type: LoadBalancer
ports:
- name: status-port
port: 15021
- name: http2
port: 80
targetPort: 8080
- name: https
port: 443
targetPort: 8443
hpaSpec:
minReplicas: 1
maxReplicas: 10
- name: istio-ingressgateway-vegetables
enabled: true
label:
app: istio-ingressgateway
ingress_name: vegetables
k8s:
service:
selector:
app: istio-ingressgateway
ingress_name: vegetables
ports:
- name: http2
port: 80
targetPort: 8080
- name: status-port
port: 15020
- name: https
port: 443
targetPort: 8443
hpaSpec:
minReplicas: 1
maxReplicas: 10
resources:
requests:
cpu: 300m
memory: 128Mi
כדי להחיל את השינויים, פועלים לפי ההוראות במסמכי העזרה של Cloud Service Mesh לפלטפורמה שלכם.
טירגוט של Cloud Service Mesh/istio ingress למארח וירטואלי
אתם יכולים לטרגט שער כניסה מסוג Cloud Service Mesh או Istio עם תווית למארח וירטואלי ספציפי בקובץ ההחלפות.
בהגדרה הזו מציינים את שער הכניסה שבו Apigee יחיל את ההגדרה של המארח הווירטואלי. בדוגמה הבאה, התנועה למארח הווירטואלי milk-vh מנותבת דרך ה-ingress עם התווית dairy, והתנועה לשני המארחים הווירטואליים האחרים מנותבת דרך ה-ingress vegetables. צריך לתייג את ה-ingress בצורה נכונה, כמו שמוסבר במאמר בנושא התקנת שערים נוספים של Apigee ingress gateway.
virtualhosts:
- name: milk-vh
sslCertPath: cert-milk.crt
sslKeyPath: cert-milk.key
selector:
app: istio-ingressgateway
ingress_name: dairy
- name: carrots-vh
sslCertPath: cert-carrots.crt
sslKeyPath: cert-carrots.key
selector:
app: istio-ingressgateway
ingress_name: vegetables
- name: ginger-vh
sslCertPath: cert-ginger.crt
sslKeyPath: cert-ginger.key
selector:
app: apigee-ingressgateway
ingress_name: vegetables