CoreOS: как обслуживать разные "профили" в облачной конфигурации

Я только начинаю работать с CoreOS, я следую пошаговому руководству по настройке Kubernetes, но мне, похоже, не хватает очень простой концепции. Поскольку я использую Bare Metal, я использую cloud-config-url параметр, указывающий на веб-сервер NGINX, возвращающий некоторый очень простой файл конфигурации облака, который заменяет ip хоста (как указано в dhcp). Что-то вроде этого:

#cloud-config
coreos:
  etcd2:
    discovery: "https://discovery.etcd.io/2ab74sd3a59583012056187ee8b74e9a"
    advertise-client-urls: "http://$public_ipv4:2379"
    initial-advertise-peer-urls: "http://$public_ipv4:2380"
    listen-client-urls: "http://0.0.0.0:2379,http://0.0.0.0:4001"
    listen-peer-urls: "http://$public_ipv4:2380,http://$public_ipv4:7001"
  units:
    - name: etcd2.service
      command: start
    - name: fleet.service
      command: start
ssh_authorized_keys:
....

Это отлично. Оно работает.

Но что, если я хочу запустить сервис, который не включает etcd2конфигурация? или добавить сервис к определенному подмножеству серверов? Как вы, ребята, справляетесь с этим делом?

Есть ли еще параметры или заголовки, переданные ядром в cloud-config-url? как я могу использовать это в NGINX?

Спасибо за ваш отзыв

1 ответ

Я предполагаю, что вы можете передать параметр GET и переключить конфигурацию на основе этого. Возможно, вас также заинтересует проект coreos-baremetal, который делает это на языке шаблонов.

Другие вопросы по тегам