Como ativar recursos opcionais

Ao instalar o Anthos Service Mesh, você especifica o perfil de configuração do Anthos Service Mesh, que ativa os recursos do padrão compatível listados na página Recursos compatíveis. Os perfis de configuração do Anthos Service Mesh, asm.yaml e asm-onprem.yaml, estão localizados no subdiretório install/kubernetes/operator/profiles, no diretório raiz da instalação do Anthos Service Mesh. Os perfis de configuração definem e configuram os recursos instalados com o Anthos Service Mesh.

Você pode modificar o perfil de configuração do ASM e ativar os recursos Ppcionais opcionais usando a API IstioOperator. Especifique a configuração IstioOperator em um arquivo YAML e transmita o arquivo para o comando istioctl manifest apply usando a opção de linha de comando -f.

Embora seja possível especificar os parâmetros de configuração na linha de comando usando a opção --set, recomendamos o uso de um arquivo YAML para a configuração. Assim, você pode armazenar o arquivo no sistema de controle de versões com seus arquivos de configuração de recurso do cluster.

A seção spec na configuração do YAML corresponde às opções de linha de comando do --set. Por exemplo, o YAML para ativar o modo mTLS STRICT é:

apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
  global:
    mtls:
      enabled: true

A opção de linha de comando correspondente é: --set global.mtls.enabled=true

Para mais informações, consulte Como personalizar a configuração.

Ao ativar os recursos opcionais:

  • Verifique se o recurso que você ativou é compatível.

  • Especifique o perfil de configuração aplicável à sua plataforma:

    • Para o Google Kubernetes Engine, use --set profile=asm
    • Para o GKE no VMware, use --set profile=asm-onprem
  • Para o GKE, prepare o arquivo istio-operator.yaml conforme descrito em Como preparar arquivos de configuração de recursos e especifique o arquivo istio-operator.yaml e seu arquivo YAML com os recursos opcionais na linha de comando ao executar istioctl manifest apply.

A tabela a seguir fornece o YAML para ativar recursos opcionais e compatíveis.

Recurso YAML
Modo mTLS STRICT

apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
  global:
    mtls:
      enabled: true
Envoy direto para stdout

apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
  global:
    proxy:
      accessLogFile="/dev/stdout"

Para mais informações, consulte Ativar a geração de registros de acesso do Envoy.

Cloud Trace

apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
  addonComponents:
    tracing:
      enabled: true
  values:
    global:
      proxy:
        tracer: "stackdriver"
Saída por meio de gateways

apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
  components:
    egressGateways:
      - name: istio-egressgateway
        enabled: true

Para saber mais, consulte Gateway.

GKE: Interface de rede de contêineres do Istio (CNI, na sigla em inglês) Para GKE:

apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
  components:
    cni:
      enabled: true
      namespace: kube-system
  values:
    cni:
      cniBinDir: /home/kubernetes/bin
      excludeNamespaces:
        - istio-system
        - kube-system

Para o GKE no VMware, adicione gke-system a excludeNamespaces e values.cni.cniBinDir é /opt/cni/bin:


apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
  components:
    cni:
      enabled: true
      namespace: kube-system
  values:
    cni:
      cniBinDir: /opt/cni/bin
      excludeNamespaces:
        - istio-system
        - kube-system
        - gke-system

Você também precisa ativar uma política de rede.

.
Ativar um balanceador de carga interno

Para instalações no GKE, é possível ativar um balanceador de carga interno para o gateway de entrada do Istio. Os balanceadores de carga internos não são compatíveis com o GKE no VMware. Para informações sobre como configurar o GKE no VMware, consulte Como configurar o balanceador de carga para o GKE no VMware


apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
  profile: empty
  components:
    ingressGateways:
      - name: istio-ingressgateway
        enabled: true
        k8s:
          serviceAnnotations:
            cloud.google.com/load-balancer-type: "internal"
          service: your_service_name
            ports:
              - name: status-port
                port: 15020
              - name: http2
                port: 80
              - name: https
                port: 443