Возможно ли, чтобы под Kubernetes имя хоста Pod было именем хоста Node хоста? - PullRequest
0 голосов
/ 18 марта 2019

Переходя от Docker к K8s, сегодня мы запускаем несколько контейнеров с: docker run --hostname% H ... , который заставляет контейнер получать имя хоста как собственное. Могу ли я иметь подобное поведение при работе с K8s? (с именем хоста pod в качестве имени хоста узла)

Из того, что я видел до сих пор:

  1. spec.hostname не поддерживает значения из env vars.

  2. Использование hostAliases, похоже, содержит жестко закодированное имя ...

Кстати, модули развернуты как DeamonSet

1 Ответ

0 голосов
/ 15 мая 2019

Если вы используете hostNetwork: true для спецификации модуля, он поделится сетью с узлом.Вот простой тест:

apiVersion: v1
kind: Pod
metadata:
  name: test-pod
spec:
  hostNetwork: true
  containers:
    - name: test-container
      image: k8s.gcr.io/busybox
      command: [ "sh", "-c"]
      args:
      - while true; do
          echo -en '\n';
          printenv HOSTNAME
          sleep 10;
        done;
  restartPolicy: Never

Это показывает, что имя хоста модуля совпадает с его узлом.

Обратите внимание, что эта настройка является общей не рекомендуется :

Избегайте использования hostNetwork по тем же причинам, что и hostPort

Однако, возможно, в вашем случае это не проблема.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...