Запустить другой компонент приложения в одном и том же развертывании в движке GCP Kubernetes? - PullRequest
0 голосов
/ 06 февраля 2019

У меня есть приложение с несколькими компонентами, скажем, x, y, z, я хочу запустить x, y с 3 модулями и z с 1 модулем.Как я могу сделать это в одном файле deploy.yaml в движке Kubernetes на GCP?

1 Ответ

0 голосов
/ 06 февраля 2019

Я не думаю, что развертывание может помочь вам в этой ситуации, но StatefulSet может также помочь с некоторыми изменениями в вашем приложении.

Поскольку StatefulSet всегда создает модули с некоторыми соглашениями об именах, и они придерживаются его, даже если онивоссозданы.Модули обычно называются -INDEX, как mypod-1, mypod-2 и т. Д.

Так что используйте его, выделите первые 3 модуля для двух компонентов, отключив третий компонент.Используйте переменную среды имени модуля и, если имя модуля не соответствует индексу 4, отключите третий компонент (эта логика должна быть в вашем приложении), а для имени модуля с индексом 4 отключите первые два компонента.

Вы можетеиспользуйте имя модуля в качестве переменной env, используя приведенную ниже конфигурацию,

- name: Pod_Name
  valueFrom:
    fieldRef:
      fieldPath: metadata.name 
...