Atualização da Edição Personalizada em um ambiente isolado

Você pode atualizar a Edição Personalizada em um ambiente isolado usando o plug-in kubectl.

O plug-in Instana kubectl e o operador Instana Enterprise são sempre lançados juntos. As atualizações do backend Instana são independentes do operador Instana Enterprise releases.You pode usar o plug-in Instana kubectl para verificar as versões do backend Instana suportadas e atualizar o backend conforme necessário. Após até quatro lançamentos do backend Instana, uma nova versão do operador Instana Enterprise é lançada. Para requisitos específicos da versão para atualização, consulte as notas de atualização.

Pré-requisitos

Certifique-se de que os seguintes pré-requisitos sejam atendidos antes de atualizar o Instana :
  • O cluster tem capacidade adequada. Se o cluster estiver se aproximando de sua capacidade de solicitação, adicione um nó extra para evitar que os pods fiquem presos no status Pendente.
  • Os nós Elasticsearch têm espaço em disco suficiente. Se o uso do disco exceder 80%, os nós Elasticsearch mudam automaticamente para o modo somente leitura, o que pode fazer com que a atualização trave ou falhe silenciosamente.
  • O host de salto está conectado à Internet com acesso ao cluster ou ambiente isolado no qual o backend do Instana é atualizado.
  • Consulte as notas de atualização. Ao pular uma versão, consulte as notas de atualização de todas as versões puladas e da versão de destino.

Procedimento

Para atualizar a Edição Personalizada em um ambiente isolado, execute as seguintes etapas:

Nota:
Os exemplos incluídos neste procedimento destinam-se ao Linux x86_64.
  1. Verifique se as versões do armazenamento de dados são compatíveis com a versão do Instana para a qual você deseja atualizar. Para versões de armazenamento de dados, consulte Atualização de operadores de armazenamento de dados de terceiros.

  2. Se a versão do seu armazenamento de dados não for compatível, atualize os armazenamentos de dados.

    1. Ative o modo de manutenção.

      kubectl patch core instana-core -n instana-core --type='merge' -p '{"spec":{"operationMode": "maintenance"}}'
      • Skopeo:
        skopeo login -u <your_internal_artifactory_username> -p <your_internal_artifactory_password> <internal-image-registry>
      • Docker:
        docker login -u <your_internal_artifactory_username> -p <your_internal_artifactory_password> <internal-image-registry>

        Não altere o nome real das imagens. Altere apenas o artifactory URL e o caminho. Por exemplo, se você executar kubectl instana versions list-images e o nome da imagem retornado for artifact-public.instana.io/backend/acceptor:3.xxx.xxx–x, então você deve enviar a imagem para o seu artifactory interno no seguinte formato: <internal-image-registry>/<internal-image-repository-path>/acceptor:<tag_of_image>.

    2. Baixe artefatos e faça upload para um registro de imagens interno.

      Nota:
      Copie as imagens do seu servidor bastião para o seu próprio repositório interno de imagens. Siga uma das etapas a seguir, dependendo se você usa Skopeo ou Docker. Não altere o nome real das imagens. Altere apenas o artifactory URL e o caminho. Por exemplo, se você executar e kubectl instana versions list-images o nome da imagem retornado for artifact-public.instana.io/backend/acceptor:3.xxx.xxx–x, então você deverá enviar a imagem para o seu Artifactory interno no seguinte formato: <registro-interno-de-imagens>/<caminho-do-repositório-interno-de-imagens>/acceptor:<tag_da_imagem>.
      • Skopeo
        1. Copie as imagens do Strimzi.
          skopeo copy --dest-tls-verify=false docker://artifact-public.instana.io/self-hosted-images/3rd-party/operator/strimzi:1.0.1_v0.33.0 docker://<internal-image-registry>/<internal-image-repository-path>/strimzi:1.0.1_v0.33.0
          skopeo copy --dest-tls-verify=false docker://artifact-public.instana.io/self-hosted-images/3rd-party/datastore/kafka:1.0.1-kafka-4.1.2_v0.37.0 docker://<internal-image-registry>/<internal-image-repository-path>/kafka:1.0.1-kafka-4.1.2_v0.37.0
        2. Copie as imagens Elasticsearch.
          skopeo copy --dest-tls-verify=false docker://artifact-public.instana.io/self-hosted-images/3rd-party/operator/elasticsearch:3.4.1_v0.34.0 docker://<internal-image-registry>/<internal-image-repository-path>/elasticsearch-operator:3.4.1_v0.34.0
          skopeo copy --dest-tls-verify=false docker://artifact-public.instana.io/self-hosted-images/3rd-party/datastore/elasticsearch:8.19.18_v0.37.0 docker://<internal-image-registry>/<internal-image-repository-path>/elasticsearch:8.19.18_v0.37.0
        3. Copie as imagens CNPG Postgres.
          skopeo copy --dest-tls-verify=false docker://artifact-public.instana.io/self-hosted-images/3rd-party/operator/cloudnative-pg:v1.29.2_v0.35.0 docker://<internal-image-registry>/<internal-image-repository-path>/cloudnative-pg-operator:v1.29.2_v0.35.0
          skopeo copy --dest-tls-verify=false docker://artifact-public.instana.io/self-hosted-images/3rd-party/datastore/cnpg-containers:15_v0.40.0 docker://<internal-image-registry>/<internal-image-repository-path>/cnpg-containers:15_v0.40.0
        4. Copie as imagens Cassandra.
          skopeo copy --dest-tls-verify=false docker://artifact-public.instana.io/self-hosted-images/3rd-party/operator/cass-operator:1.30.3_v0.41.0 docker://<internal-image-registry>/<internal-image-repository-path>/cass-operator:1.30.3_v0.41.0
          skopeo copy --dest-tls-verify=false docker://artifact-public.instana.io/self-hosted-images/3rd-party/datastore/cassandra:4.1.11_v0.43.0 docker://<internal-image-registry>/<internal-image-repository-path>/cassandra:4.1.11_v0.43.0
          skopeo copy --dest-tls-verify=false docker://artifact-public.instana.io/self-hosted-images/3rd-party/datastore/system-logger:1.30.3_v0.24.0 docker://<internal-image-registry>/<internal-image-repository-path>/system-logger:1.30.3_v0.41.0
          skopeo copy --dest-tls-verify=false docker://artifact-public.instana.io/self-hosted-images/3rd-party/datastore/k8ssandra-client:0.8.14_v0.34.0 docker://<internal-image-registry>/<internal-image-repository-path>/k8ssandra-client:0.8.14_v0.34.0
        5. Copie as imagens ClickHouse.
          skopeo copy --dest-tls-verify=false docker://artifact-public.instana.io/clickhouse-operator:v1.2.39 docker://<internal-image-registry>/<internal-image-repository-path>/clickhouse-operator:v1.2.39
          skopeo copy --dest-tls-verify=false docker://artifact-public.instana.io/clickhouse:25.8.13.73-7-lts-ibm docker://<internal-image-registry>/<internal-image-repository-path>/clickhouse:25.8.13.73-7-lts-ibm
        6. Copie as imagens do Zookeeper.
          skopeo copy --dest-tls-verify=false docker://artifact-public.instana.io/self-hosted-images/3rd-party/operator/zookeeper:0.2.15_v0.21.0 docker://<internal-image-registry>/<internal-image-repository-path>/operator/zookeeper:0.2.15_v0.21.0 
          skopeo copy --dest-tls-verify=false docker://artifact-public.instana.io/self-hosted-images/3rd-party/datastore/zookeeper:3.9.3_v0.21.0 docker://<internal-image-registry>/<internal-image-repository-path>/zookeeper:3.9.3_v0.21.0 
          skopeo copy --dest-tls-verify=false docker://artifact-public.instana.io/self-hosted-images/k8s/kubectl:v1.36.2_v0.13.0 docker://<internal-image-registry>/<internal-image-repository-path>/k8s/kubectl:v1.36.2_v0.13.0
      • Docker
        1. Copie as imagens do Strimzi.
          #Pull images 
          docker pull artifact-public.instana.io/self-hosted-images/3rd-party/operator/strimzi:1.0.1_v0.33.0
          docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/kafka:1.0.1-kafka-4.1.2_v0.37.0
          #Retag the images to your internal image registry 
          docker tag artifact-public.instana.io/self-hosted-images/3rd-party/operator/strimzi:1.0.1_v0.33.0 <internal-image-registry>/operator/strimzi:1.0.1_v0.33.0
          docker tag artifact-public.instana.io/self-hosted-images/3rd-party/datastore/kafka:1.0.1-kafka-4.1.2_v0.37.0 <internal-image-registry>/datastore/kafka:1.0.1-kafka-4.1.2_v0.37.0 
          #Push the images to your internal image registry  
          docker push <internal-image-registry>/operator/strimzi:1.0.1_v0.33.0
          docker push <internal-image-registry>/datastore/kafka:1.0.1-kafka-4.1.2_v0.37.0
        2. Copie as imagens Elasticsearch.
          #Pull images 
          docker pull artifact-public.instana.io/self-hosted-images/3rd-party/operator/elasticsearch:3.4.1_v0.34.0 
          docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/elasticsearch:8.19.18_v0.37.0 
          #Retag the images to your internal image registry 
          docker tag artifact-public.instana.io/self-hosted-images/3rd-party/operator/elasticsearch:3.4.1_v0.34.0 <internal-image-registry>/operator/elasticsearch:3.4.1_v0.34.0 
          docker tag artifact-public.instana.io/self-hosted-images/3rd-party/datastore/elasticsearch:8.19.18_v0.37.0 <internal-image-registry>/datastore/elasticsearch:8.19.18_v0.37.0 
          #Push the images to your internal image registry  
          docker push <internal-image-registry>/operator/elasticsearch:3.4.1_v0.34.0 
          docker push <internal-image-registry>/datastore/elasticsearch:8.19.18_v0.37.0
        3. Copie as imagens CNPG Postgres.
          #Pull images 
          docker pull artifact-public.instana.io/self-hosted-images/3rd-party/operator/cloudnative-pg:v1.29.2_v0.35.0 
          docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/cnpg-containers:15_v0.40.0 
          #Retag the images to your internal image registry 
          docker tag artifact-public.instana.io/self-hosted-images/3rd-party/operator/cloudnative-pg:v1.29.2_v0.35.0 <internal-image-registry>/operator/cloudnative-pg:v1.29.2_v0.35.0 
          docker tag artifact-public.instana.io/self-hosted-images/3rd-party/datastore/cnpg-containers:15_v0.40.0 <internal-image-registry>/datastore/cnpg-containers:15_v0.40.0 
          #Push the images to your internal image registry  
          docker push <internal-image-registry>/operator/cloudnative-pg:v1.29.2_v0.35.0 
          docker push <internal-image-registry>/datastore/cnpg-containers:15_v0.40.0
        4. Copie as imagens Cassandra.
          #Pull images 
          docker pull artifact-public.instana.io/self-hosted-images/3rd-party/operator/cass-operator:1.30.3_v0.41.0 
          docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/system-logger:1.30.3_v0.24.0 
          docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/k8ssandra-client:0.8.14_v0.34.0 
          docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/cassandra:4.1.11_v0.43.0 
          #Retag the images to your internal image registry 
          docker tag artifact-public.instana.io/self-hosted-images/3rd-party/operator/cass-operator:1.30.3_v0.41.0 <internal-image-registry>/operator/cass-operator:1.30.3_v0.41.0 
          docker tag artifact-public.instana.io/self-hosted-images/3rd-party/datastore/system-logger:1.30.3_v0.24.0 <internal-image-registry>/datastore/system-logger:1.30.3_v0.24.0 
          docker tag artifact-public.instana.io/self-hosted-images/3rd-party/datastore/k8ssandra-client:0.8.14_v0.34.0 <internal-image-registry>/datastore/k8ssandra-client:0.8.14_v0.34.0 
          docker tag artifact-public.instana.io/self-hosted-images/3rd-party/datastore/cassandra:4.1.11_v0.43.0 <internal-image-registry>/datastore/cassandra:4.1.11_v0.43.0 
          #Push the images to your internal image registry  
          docker push <internal-image-registry>/operator/cass-operator:1.30.3_v0.41.0 
          docker push <internal-image-registry>/datastore/system-logger:1.30.3_v0.24.0 
          docker push <internal-image-registry>/datastore/k8ssandra-client:0.8.14_v0.34.0 
          docker push <internal-image-registry>/datastore/cassandra:4.1.11_v0.43.0
        5. Copie as imagens ClickHouse.

          Puxar imagens:
          
          docker pull artifact-public.instana.io/clickhouse-operator:v1.2.39 
          docker pull artifact-public.instana.io/clickhouse:25.8.13.73-7-lts-ibm
          Re-etiquete as imagens no seu repositório interno de imagens:
          docker tag artifact-public.instana.io/clickhouse-operator:v1.2.39 <internal-image-registry>/clickhouse-operator:v1.2.39 
          docker tag artifact-public.instana.io/clickhouse:25.8.13.73-7-lts-ibm <internal-image-registry>/clickhouse:25.8.13.73-7-lts-ibm 
          Envie as imagens para o seu repositório interno de imagens:
          docker push <internal-image-registry>/clickhouse-operator:v1.2.39 
          docker push <internal-image-registry>/clickhouse:25.8.13.73-7-lts-ibm
          
        6. Copie as imagens do Zookeeper.
          #Pull images 
          docker pull artifact-public.instana.io/self-hosted-images/3rd-party/operator/zookeeper:0.2.15_v0.21.0
          docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/zookeeper:3.9.3_v0.21.0 
          docker pull artifact-public.instana.io/self-hosted-images/k8s/kubectl:v1.36.2_v0.13.0
          #Retag the images to your internal image registry 
          docker tag artifact-public.instana.io/self-hosted-images/3rd-party/operator/zookeeper:0.2.15_v0.21.0 <internal-image-registry>/operator/zookeeper:0.2.15_v0.21.0 
          docker tag artifact-public.instana.io/self-hosted-images/3rd-party/datastore/zookeeper:3.9.3_v0.21.0 <internal-image-registry>/zookeeper:3.9.3_v0.21.0 
          docker tag artifact-public.instana.io/self-hosted-images/k8s/kubectl:v1.36.2_v0.13.0 <internal-image-registry>/self-hosted-images/k8s/kubectl:v1.36.2_v0.13.0 
          #Push the images to your internal image registry  
          docker push <internal-image-registry>/operator/zookeeper:0.2.15_v0.21.0
          docker push <internal-image-registry>/zookeeper:3.9.3_v0.21.0 
          docker push <internal-image-registry>/self-hosted-images/k8s/kubectl:v1.36.2_v0.13.0
    3. Baixe os gráficos de Helm :
      1. Adicione os repositórios helm.
        helm repo add instana https://artifact-public.instana.io/artifactory/rel-helm-customer-virtual --username=_ --password=$DOWNLOAD_KEY
        helm repo update
      2. Baixe os gráficos de Helm :
        helm pull instana/ibm-clickhouse-operator --version=v1.2.0
        helm pull instana/strimzi-kafka-operator --version=1.0.1 
        helm pull instana/eck-operator --version=3.4.1 
        helm pull instana/cloudnative-pg --version=0.29.0
        helm pull instana/cass-operator --version=0.64.4
        helm pull instana/zookeeper-operator --version=1.0.0
    4. Atualize os armazenamentos de dados.
      1. Opcional: crie um segredo de extração de imagem se o seu registro interno de imagens precisar de autenticação.
        kubectl create secret docker-registry <internal-image-registry-pull-secret> --namespace instana-clickhouse \
        --docker-username=<registry_username> \
        --docker-password=<registry_password> \
        --docker-server=<internal-image-registry>:<internal-image-registry-port> \
        --docker-email=<registry_email>
      2. Atualizar o Kafka
        1. Atualize o Strimzi Operator. Se você criou um segredo de pull de imagem na etapa anterior, adicione --set image.imagePullSecrets[0].name="<internal-image-registry-pull-secret>" ao comando a seguir.
          helm upgrade --install strimzi-kafka-operator strimzi-kafka-operator-helm-3-chart-1.0.1.tgz --version 1.0.1 -n instana-kafka --set image.registry=<internal-image-registry> --set image.repository=operator --set image.name=strimzi --set image.tag=1.0.1_v0.33.0 --set kafka.image.registry=<internal-image-registry> --set kafka.image.repository=datastore --set kafka.image.name=kafka --set kafka.image.tag=1.0.1-kafka-4.1.2_v0.37.0
        2. Atualize o recurso personalizado Kafka.
          kubectl patch Kafka instana -n instana-kafka --type='merge' -p '
             spec:
               kafka:
                 version: 4.1.2 
               entityOperator:
                 userOperator:
                   image: <internal-image-registry>/operator/strimzi:1.0.1_v0.33.0
                   '
        3. Aguarde até que a implantação seja concluída.
          kubectl wait kafka/instana --for=condition=Ready --timeout=300s -n instana-kafka
      3. Atualize o Elasticsearch.
        1. Atualize o operador Elasticsearch. Se você criou um segredo de pull de imagem na etapa anterior, adicione --set imagePullSecrets[0].name="<internal-image-registry-pull-secret>" ao comando a seguir.
          helm upgrade --install elastic-operator eck-operator-3.4.1.tgz -n instana-elastic --version=3.4.1 --set image.repository=<internal-image-registry>/operator/elasticsearch --set image.tag=3.4.1_v0.34.0
        2. Atualizar o recurso personalizado " Elasticsearch ".
          kubectl patch Elasticsearch instana -n instana-elastic --type='merge' -p '{"spec":{"image": "<internal-image-registry>/datastore/elasticsearch:8.19.18_v0.37.0"}}'
        3. Aguarde até que a implantação seja concluída.
          kubectl wait elasticsearch/instana --for=condition=ReconciliationComplete --timeout=300s -n instana-elastic
      4. Atualize CNPG Postgres.
        1. Para a edição personalizada em um cluster Red Hat OpenShift, determine o ID do grupo do sistema de arquivos em Red Hat OpenShift. Red Hat OpenShift exige que os grupos do sistema de arquivos estejam dentro de um intervalo de valores específico para o namespace.

        2. Se você estiver implantando a Edição Personalizada em um cluster do Red Hat OpenShift, obtenha o intervalo de usuários permitidos.
          kubectl get namespace instana-postgres -o yaml
          É exibida uma saída semelhante ao exemplo a seguir:
          apiVersion: v1
          kind: Namespace
          metadata:
            annotations:
            .......
              openshift.io/sa.scc.uid-range: 1000750000/10000
            labels:
              kubernetes.io/metadata.name: instana-postgres
            .......
            name: instana-postgres

          A openshift.io/sa.scc.supplemental-groups anotação contém o intervalo de IDs permitidos. O intervalo 1000750000/10000 indica 10.000 valores que começam com o ID 1000750000, com um intervalo de IDs de 1000750000 a 1000760000. No exemplo, o valor 1000750000 é usado como um ID de grupo do sistema de arquivos.

        3. Atualize o operador Postgres. Se você criou um segredo de pull de imagem para seu registro interno, adicione --set image.imagePullSecrets[0].name="<internal-image-registry-pull-secret>" ao seguinte comando.

          helm upgrade --install cnpg cloudnative-pg-0.29.0.tgz --set image.repository=<internal-image-registry>/<internal-image-repository-path>/cloudnative-pg-operator --set image.tag=v1.29.2_v0.35.0 --version=0.29.0 -n instana-postgres
          # Applicable for Red Hat Open Shift clusters
          helm upgrade --install cnpg cloudnative-pg-0.29.0.tgz --set image.repository=<internal-image-registry>/<internal-image-repository-path>/cloudnative-pg-operator --set image.tag=v1.29.2_v0.35.0 --version=0.29.0 --set containerSecurityContext.runAsUser=<UID from namespace> --set containerSecurityContext.runAsGroup=<UID from namespace> -n instana-postgres
        4. Atualizar o recurso personalizado " Postgres ":
          kubectl patch Cluster postgres -n instana-postgres --type='merge' -p '{"spec":{"imageName": "<internal-image-registry>/<internal-image-repository-path>/cnpg-containers:15_v0.40.0"}}'
      5. Atualize o Cassandra.
        1. Instale o operador Cassandra. Se você criou um segredo de pull de imagem na etapa anterior, adicione --set imagePullSecrets[0].name="<internal-image-registry-pull-secret>" ao comando a seguir.
          helm upgrade --install cass-operator cass-operator-0.64.4.tgz -n instana-cassandra --version=0.64.4 --set securityContext.runAsGroup=999 --set securityContext.runAsUser=999 --set image.registry=<internal-image-registry> --set image.repository=operator/cass-operator --set image.tag=1.30.3_v0.41.0 --set appVersion=1.30.3 --set imageConfig.systemLogger=<internal-image-registry>/datastore/system-logger:1.30.3_v0.24.0 --set imageConfig.k8ssandraClient=<internal-image-registry>/datastore/k8ssandra-client:0.8.14_v0.34.0
        2. Atualizar o recurso personalizado " Cassandra ".
          kubectl patch CassandraDatacenter cassandra -n instana-cassandra --type='merge' -p '{"spec":{"serverImage":"<internal-image-registry>/datastore/cassandra:4.1.11_v0.43.0","systemLoggerImage":"<internal-image-registry>/datastore/system-logger:1.30.3_v0.24.0","serverVersion":"4.1.11"}}'
        3. Crie um arquivo, como clickhouse_installation.yaml:
          kubectl patch clickhouseinstallation instana -n instana-clickhouse --type='strategic' -p='
          spec:
            templates:
              podTemplates:
                -name: clickhouse
                 spec:
                   containers:
                     - name: instana-clickhouse
                       image: <internal-image-registry>/<internal-image-repository-path>/clickhouse:25.8.13.73-7-lts-ibm
                     - name: clickhouse-log
                       image: <internal-image-registry>/<internal-image-repository-path>/clickhouse:25.8.13.73-7-lts-ibm '
      6. Atualize o ClickHouse.
        1. Atualize o operador ClickHouse. Se você criou um segredo de pull de imagem na etapa anterior, adicione --set imagePullSecrets[0].name="<internal-image-registry-pull-secret>" ao comando a seguir.
          helm upgrade --install clickhouse-operator ibm-clickhouse-operator-v1.2.0.tgz -n instana-clickhouse --version=v1.2.0 --set operator.image.repository=<internal-image-registry>/<internal-image-repository-path>/clickhouse-operator --set operator.image.tag=v1.2.39
        2. Atualize o recurso personalizado ClickHouseKeeperInstallation.
          kubectl patch ClickHouseKeeperInstallation clickhouse-keeper -n instana-clickhouse --type='strategic' -p='
          spec:
            templates:
              podTemplates:
                - name: clickhouse-keeper
                  spec:
                    containers:
                - name: clickhouse-keeper
                  image: <internal-image-registry>/<internal-image-repository-path>/clickhouse:25.8.13.73-7-lts-ibm
          initContainers:
                - name: server-id-injector
                  image: <internal-image-registry>/<internal-image-repository-path>/clickhouse:25.8.13.73-7-lts-ibm '
        3. Crie um arquivo, como clickhouse_installation.yaml:
          kubectl patch clickhouseinstallation instana -n instana-clickhouse --type='strategic' -p='
          spec:
            templates:
              podTemplates:
                - name: clickhouse
                  spec:
                    containers:
                      - name: instana-clickhouse
                        image: <internal-image-registry>/<internal-image-repository-path>/clickhouse:25.8.13.73-7-lts-ibm
                      - name: clickhouse-log
                        image: <internal-image-registry>/<internal-image-repository-path>/clickhouse:25.8.13.73-7-lts-ibm '
      7. Opcional: atualize o Zookeeper. Conclua estas etapas para atualizar o armazenamento de dados ZooKeeper se estiver usando o zookeeper em vez do clickhousekeeper.
        1. Atualize o operador ZooKeeper.
          helm upgrade --install zookeeper-operator -n instana-zookeeper zookeeper-operator-1.0.0.tgz --set image.repository=<internal-image-registry>/operator/zookeeper --set image.tag=0.2.15_v0.21.0 --set global.imagePullSecrets={"instana-registry"} 
          1. Atualize o recurso de cluster ZooKeeper aplicando o seguinte patch.
            kubectl patch zookeepercluster instana-zookeeper -n instana-clickhouse --type=merge --patch '
            spec:
             image:
               tag: 3.9.3_v0.21.0
                  '
      8. Opcional: atualize o BeeInstana, consulte Atualizando o BeeInstana em Kubernetes.
  3. Instale o plug-in mais recente do kubectl, consulte
  4. Baixe artefatos e faça upload para o registro interno de imagens.
    1. Recuperar a lista de imagens em um backend d Instana :
      kubectl instana versions list-images -d $DOWNLOAD_KEY
      É exibida uma saída semelhante ao seguinte exemplo:
      artifact-public.instana.io/backend/acceptor:3.xxx.xxx-x
      ...
      ...
      artifact-public.instana.io/backend/gateway:1.26.3_v0.46.0
      artifact-public.instana.io/backend/config-templates:3.xxx.xxx-x
      artifact-public.instana.io/infrastructure/instana-enterprise-operator:1.3.0
      artifact-public.instana.io/infrastructure/instana-enterprise-operator-webhook:1.3.0
      • O identify comando fornece uma lista das versões de backend do Instana atualmente disponíveis que são compatíveis com a Custom Edition instalada.

      • O list-images comando imprime uma lista de imagens do operador Instana Kubernetes e de todos os componentes Instana. Você pode usar o --instana-version sinalizador para especificar a versão do operador. Se você não usar o sinalizador, todas as versões de backend disponíveis do Instana serão listadas e você poderá selecionar uma versão.

    2. Chave de download para exportação:
      export DOWNLOAD_KEY="<download_key>"
    3. Faça login no registro Instana :

      Nota:

      Execute um dos seguintes comandos, dependendo se você usa Skopeo ou Docker.

      • Skopeo:
        skopeo login -u _ -p $DOWNLOAD_KEY artifact-public.instana.io
      • Docker:
        docker login -u _ -p $DOWNLOAD_KEY artifact-public.instana.io
    4. Faça login no registro interno de imagens. Siga uma das etapas a seguir, dependendo se você usa Skopeo ou Docker.
      • Skopeo:
        skopeo login -u <your_internal_artifactory_username> -p <your_internal_artifactory_password> <internal-image-registry>
      • Docker:
        docker login -u <your_internal_artifactory_username> -p <your_internal_artifactory_password> <internal-image-registry>
    5. Copie as imagens do backend do Instana e do Enterprise Operator para o seu próprio registro de imagens interno a partir do seu host de salto. Siga uma das etapas a seguir, dependendo se você usa Skopeo ou Docker.

      • Skopeo:
        while read p; do SOURCE=`echo "$p" | tac -s'/' | head -1`; echo $SOURCE; skopeo copy --dest-tls-verify=false docker://artifact-public.instana.io/backend/$SOURCE docker://<internal-image-registry>/$SOURCE; done<images.txt
        OPERATOR_IMAGE=`echo "$(cat images.txt | tail -1)" | tac -s'/' |  head -1`
        skopeo copy --dest-tls-verify=false docker://artifact-public.instana.io/infrastructure/$OPERATOR_IMAGE docker://<internal-image-registry>/$OPERATOR_IMAGE
      • Docker:

      1. Puxar imagens:
        docker pull artifact-public.instana.io/backend/acceptor:3.xxx.xxx–x
        docker pull artifact-public.instana.io/clickhouse-operator:v1.2.39
      2. Reetiquetar imagens:
        docker tag artifact-public.instana.io/backend/acceptor:3.xxx.xxx–x <internal-image-registry>/backend/acceptor:3.xxx.xxx–x
        docker tag artifact-public.instana.io/clickhouse-operator:v1.2.39 <internal-image-registry>/clickhouse-operator:v1.2.39
      3. Imagens push:
        docker push <internal-image-registry>/backend/acceptor:3.xxx.xxx–x
        docker push <internal-image-registry>/clickhouse-operator:v1.2.39 

        Não altere o nome real das imagens. Altere apenas o artifactory URL e o caminho. Por exemplo, se você executar kubectl instana versions list-images e o nome da imagem retornado for artifact-public.instana.io/backend/acceptor:3.xxx.xxx–x, então você deve enviar a imagem para o seu artifactory interno no seguinte formato: <internal-image-registry>/<internal-image-repository-path>/acceptor:<tag_of_image>.

  5. Atualização do operador empresarial d Instana :
      1. Instale a versão de destino do plug-in Instana kubectl. O plug-in Instana kubectl e o operador Instana Enterprise são versionados juntos, portanto, instale a versão do plug-in que corresponda à versão do operador que você está instalando.

      2. Crie um arquivo de valores, consulte Criando o arquivo de valores.

      3. Adicione as seguintes linhas ao arquivo de valores:
        operator:
          image:
            registry: <internal-image-registry>
        webhook:
          image:
            registry: <internal-image-registry>
        imagePullSecrets:
          - name: instana-registry
      4. Aplique as mudanças:
        kubectl instana operator apply -n instana-operator --values <pathtoFile>/values.yaml
      5. Verifique a implantação do operador empresarial d Instana :
        kubectl get all -n instana-operator

        Lembre-se sempre de definir o registro interno de imagens no arquivo de valores após regenerar os manifestos para garantir que as imagens sejam extraídas corretamente do seu registro interno.

  6. Atualizar o backend d Instana :
    Nota:
    A partir da compilação 1.0.0, é possível atualizar o backend do Instana sempre que novas versões forem lançadas. Todos os comandos possuem um sinalizador --download-key opcional. Se você não especificar o sinalizador, será usada a chave de download da instalação existente.
    1. Encontre as versões disponíveis do backend do Instana que são compatíveis com a edição personalizada instalada.
      kubectl instana versions identify
    2. Atualize a versão do backend. Execute uma das seguintes etapas.

      • Selecione uma versão para atualizar:
        kubectl instana versions update

        Todas as versões de atualização compatíveis são exibidas. Você pode selecionar uma versão.

      • Especifique uma versão para atualizar:
        kubectl instana versions update --instana-version 3.xxx.xxx-0
        Como alternativa, você pode configurar a versão do backend para a qual deseja atualizar na especificação principal e aplicar a especificação conforme mostrado no exemplo a seguir.
        ...
        spec:
         imageConfig:
           tag: 3.xxx.xxx-0
        ...
    3. Verifique a atualização do backend do Instana :
      kubectl get core -n instana-core
      kubectl get units -n instana-units