• Русский
  • Включение инъекции sidecar с использованием ресурса IstioRevisionTag

    Если имя вашей ревизии не default, вы по-прежнему можете использовать метку istio-injection=enabled. Для этого сначала необходимо создать ресурс IstioRevisionTag с именем default, который указывает на ваш ресурс Istio.

    Справка

    Предварительные требования

    • Установлен Alauda Service Mesh v2 Operator, создан ресурс Istio, и Istio развернут Operator.
    • Создан ресурс IstioCNI, и необходимые поды IstioCNI развернуты Operator.
    • Существуют пространства имен, которые должны входить в mesh, и их может обнаружить control plane Istio.
    • Необязательно: рабочие нагрузки для mesh уже развернуты. В этих примерах приложение Bookinfo существует в пространстве имен bookinfo, но инъекция sidecar (как описано в шаге 2) еще не настроена. Для получения дополнительной информации см. "Развертывание приложения Bookinfo".

    Процедура

    1. Чтобы найти имя вашего ресурса Istio, выполните следующую команду:

      kubectl get istio

      Пример вывода

      NAME      NAMESPACE      PROFILE   REVISIONS   READY   IN USE   ACTIVE REVISION   STATUS    VERSION   AGE
      default   istio-system             1           1       0        default-v1-28-6   Healthy   v1.28.6   37s

      В этом случае ресурс Istio называется default, но его базовая ревизия — default-v1-28-6.

    2. Определите ресурс IstioRevisionTag в YAML-файле:

      Пример YAML ресурса IstioRevisionTag

      apiVersion: sailoperator.io/v1
      kind: IstioRevisionTag
      metadata:
        name: default
      spec:
        targetRef:
          kind: Istio
          name: default
    3. Примените ресурс IstioRevisionTag с помощью этой команды:

      kubectl apply -f istioRevisionTag.yaml
    4. Подтвердите успешное создание ресурса IstioRevisionTag с помощью следующей команды:

      kubectl get istiorevisiontags.sailoperator.io

      Пример вывода

      NAME      STATUS    IN USE   REVISION          AGE
      default   Healthy   True     default-v1-28-6   15s

      Как показано в примере, новая метка теперь ссылается на вашу активную ревизию default-v1-28-6. Теперь вы можете использовать метку istio-injection=enabled, как если бы ваша ревизия называлась default.

    5. Проверьте, что поды работают без sidecar, выполнив команду ниже. Все существующие рабочие нагрузки в целевом пространстве имен должны отображать 1/1 в столбце контейнеров READY.

      kubectl get pods -n bookinfo

      Пример вывода

      NAME                              READY   STATUS    RESTARTS   AGE
      details-v1-85c7fcfd5b-fdx4q       1/1     Running   0          5m48s
      productpage-v1-775ffc67d8-89n5c   1/1     Running   0          5m48s
      ratings-v1-6c79fdf684-cdkzc       1/1     Running   0          5m48s
      reviews-v1-685fb87cb6-pgzm5       1/1     Running   0          5m48s
      reviews-v2-76c4659bc6-lgtp4       1/1     Running   0          5m48s
      reviews-v3-f7b4c8678-x2hnp        1/1     Running   0          5m48s
    6. Добавьте метку инъекции в пространство имен bookinfo с помощью следующей команды:

      kubectl label namespace bookinfo istio-injection=enabled

      Пример вывода

      namespace/bookinfo labeled
    7. Чтобы активировать инъекцию sidecar, выполните повторное развертывание рабочих нагрузок в пространстве имен bookinfo с помощью этой команды:

      kubectl -n bookinfo rollout restart deployments

    Проверка

    1. Проверьте успешность rollout, выполнив команду ниже и убедившись, что вновь созданные поды показывают 2/2 контейнера в столбце READY:

      kubectl get pods -n bookinfo

      Пример вывода

      NAME                              READY   STATUS    RESTARTS   AGE
      details-v1-d964f49cb-bdlwn        2/2     Running   0          38s
      productpage-v1-79fbc54dfb-wbtf2   2/2     Running   0          38s
      ratings-v1-6f4bf85f96-glkg9       2/2     Running   0          38s
      reviews-v1-57d48b8c6b-hlfbt       2/2     Running   0          38s
      reviews-v2-6d65c788d4-q98pl       2/2     Running   0          38s
      reviews-v3-6cf5df6bb6-phnj9       2/2     Running   0          38s