Versión 1.9

Implementa servicios

Implementar servicios en clústeres con Anthos Service Mesh es casi la misma que la implementación de servicios en clústeres sin Anthos Service Mesh. Necesitas realizar algunos cambios en tus manifiestos de Kubernetes:

  • Crear servicios de Kubernetes para todos los contenedores. Todas las implementaciones deben tener un servicio de Kubernetes conectado.

  • Asigna un nombre a los puertos de servicio. Aunque GKE te permite definir puertos de servicio sin nombre, Anthos Service Mesh requiere que proporciones un nombre para un puerto que coincida con el protocolo del puerto.

  • Etiqueta tus implementaciones. Esto te permite usar características de administración de tráfico de Anthos Service Mesh, como dividir el tráfico entre versiones del mismo servicio.

En el siguiente ejemplo, la implementación y el servicio ilustran estos requisitos:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: helloserver
spec:
  replicas: 1
  selector:
    matchLabels:
      app: helloserver
  template:
    metadata:
      labels:
        app: helloserver
    spec:
      containers:
      - image: gcr.io/google-samples/istio/helloserver:v0.0.1
        imagePullPolicy: Always
        name: main
      restartPolicy: Always
      terminationGracePeriodSeconds: 5
apiVersion: v1
kind: Service
metadata:
  name: hellosvc
spec:
  ports:
  - name: http
    port: 80
    targetPort: 8080
  selector:
    app: helloserver
  type: LoadBalancer

Después de implementar los servicios en un clúster con Anthos Service Mesh, asegúrate de inyectar proxies de sidecar.

¿Qué sigue?