Развертывание Kubernetes успешно, но не отображает обновленный контент - PullRequest
0 голосов
/ 27 февраля 2020

Я новичок в Кубернетесе.

У меня есть конвейер Jenkins для развертывания микросервисов [Spring Boot] в кластер Kubernetes [EKS]. Он находится в рабочем состоянии и может успешно развертываться в кластере EKS.

В первый раз [когда Deployment / Service / Pod отсутствует в EKS] приложение развертывает и отображает содержимое должным образом, но после это приложение развертывается в кластере, но не показывает обновленное содержимое, оно показывает старое содержимое.

Если я удаляю существующее развертывание, службу и модуль, оно развертывает и отображает новое содержимое.

Любая подсказка, если я что-то упустил.

Ответы [ 3 ]

1 голос
/ 27 февраля 2020

Есть хитрость ... вы должны использовать шаблон в pom и файле развертывания yaml, этот шаблон необходимо заменить с помощью команды sed в файле jenkins

в pom

<image>registry.hub.docker.com/xxxx/yyyy:#BUILD_NUMBER</image>

В файле deloyment.yaml

image: registry.hub.docker.com/xxxx/yyyy:#BUILD_NUMBER  

и в файле jenkins

sh "sed -i 's/#BUILD_NUMBER/${BUILD_NUMBER}/g' pom.xml"
sh "sed -i 's/#BUILD_NUMBER/${BUILD_NUMBER}/g' kubedeploy.yaml"
0 голосов
/ 27 февраля 2020

Проверьте, используете ли вы «последний» образ тега в спецификации POD. Если да, вы можете сделать одну из двух вещей -

  1. Вместо последнего тега используйте тег Speci c.
  2. Если вы все еще хотите использовать тег "последний" изображения, то Развертывание исправлений с помощью приведенной ниже команды на Linux. Если вы используете Windows, просто используйте bash shell или git shell -

kubectl patch deployment <deploymentName> -p "{\"spec\":{\"template\":{\"metadata\":{\"labels\":{\"date\":\" date + '% s' \"}}}}}"

Дайте мне знать, если это решает вашу проблему.

`

  <plugin>
    <groupId>com.google.cloud.tools</groupId>
    <artifactId>jib-maven-plugin</artifactId>
    <version>2.1.0</version>
    <configuration>
      <to>
         <repository>docker.io/repo</repository>
         <tag>${project.version}</tag>
      </to>
    </configuration>
  </plugin>

` Дайте мне знать, если этот тег плагина помогает.

0 голосов
/ 27 февраля 2020

Пожалуйста, проверьте изображение тега то же самое? Если да, предоставьте разные для каждой сборки.

Если вам нужен один и тот же тег изображения, измените imagePullPolicy на Always.

https://kubernetes.io/docs/concepts/containers/images/

Если проблема все еще сохраняется, проверьте развертывание развертывания.

https://kubernetes.io/docs/concepts/workloads/controllers/deployment/

Поделитесь своим файлом YAML, если все еще не можете это исправить.

...