Как я могу развернуть BOSH Director на BOSH Lite

В настоящее время я пытаюсь установить BOSH Director на BOSH Lite - для меня ясно, что BOSH Lite уже поставляется с Director, но я хотел бы протестировать выпуск, содержащий Director, "поверх этого". Вот моя установка:

введите описание изображения здесь

Все отлично работает пока не добавлю warden_cpi работа. Я хотел бы настроить CPI Warden для подключения к Warden, работающему на виртуальной машине с BOSH Lite и доступным для Директора. Итак, что я попробовал, это:

releases:
- name: bosh-warden-cpi
  url: https://bosh.io/d/github.com/cppforlife/bosh-warden-cpi-release?v=29
  sha1: 9cc293351744f3892d4a79479cccd3c3b2cf33c7
  version: latest

instance_groups:
- name: bosh-components
  jobs:
  - name: warden_cpi
    release: bosh-warden-cpi
    properties:
      warden_cpi:
        host_ip: 10.254.50.4  # host IP of BOSH Lite Vagrant Box
        warden:
          connect_network: tcp
          connect_address: 10.254.50.4:7777 # again host IP and Port of garden-linux on BOSH Lite Vagrant Box
        agent:
          mbus: nats://user:password@127.0.0.1:4222 
          blobstore:
            provider: dav
            options:
              endpoint: http://127.0.0.1:25250
              user: user
              password: password

где 10.254.50.4 это IP-адрес Vagrant Box и 7777 это порт garden-linux,

Во время развертывания я получаю это сообщение от bosh vms

+----------------------------------------------------------+--------------------+-----+---------+--------------+
| VM                                                       | State              | AZ  | VM Type | IPs          |
+----------------------------------------------------------+--------------------+-----+---------+--------------+
| bosh-components/0 (37a1938e-e1df-4650-bec6-460e4bc3916e) | unresponsive agent | n/a | small   |              |
| bosh-director/0 (2bb47ce1-0bba-49aa-b9a3-86e881e91ee9)   | running            | n/a | small   | 10.244.102.2 |
| jumpbox/0 (51c895ae-3563-4561-ba3f-d0174e90c3f4)         | running            | n/a | small   | 10.244.102.4 |
+----------------------------------------------------------+--------------------+-----+---------+--------------+

Как сообщение об ошибке от bosh deployЯ получаю это:

Ошибка 450002: истекло время ожидания отправки `get_state'на e1ed3839-ade4-4e12-8f33-6ee6000750d0 через 45 секунд

После появления ошибки я вижу виртуальную машину с bosh vms:

+----------------------------------------------------------+---------+-----+---------+--------------+
| VM                                                       | State   | AZ  | VM Type | IPs          |
+----------------------------------------------------------+---------+-----+---------+--------------+
| bosh-components/0 (37a1938e-e1df-4650-bec6-460e4bc3916e) | running | n/a | small   | 10.244.102.3 |
| bosh-director/0 (2bb47ce1-0bba-49aa-b9a3-86e881e91ee9)   | failing | n/a | small   | 10.244.102.2 |
| jumpbox/0 (51c895ae-3563-4561-ba3f-d0174e90c3f4)         | running | n/a | small   | 10.244.102.4 |
+----------------------------------------------------------+---------+-----+---------+--------------+

Но когда я сш в bosh-components ВМ, нет работы в /var/vcap/jobs,

Когда я удаляю warden_cpi блок из списка вакансий, все работает как положено. Полный список работ для моей BOSH компоненты VM:

  • Nats
  • Postgres
  • реестр
  • Blobstore

Сам директор работает на другой машине. Без CPI Warden эти две машины могут общаться, как и ожидалось.

Кто-нибудь может указать мне, как я должен настроить CPI Warden, чтобы он подключался к Vagrant Box, как ожидалось?

0 ответов

Вопрос очень старый, это интерфейс командной строки BOSH v1, тогда как теперь BOSH v2 является установленным стандартом, Garden Linux давно устарел в пользу Garden runC, но все же, много экспериментировав с BOSH-Lite, я бы хотел бы ответить на этот вопрос.

Во-первых, семантическое замечание: вы не должны говорить "сверх того", а вместо этого "по указанию", потому что BOSH Director просто инструктирует некоторую базовую (основанную на API) инфраструктуру что-то делать, что в конечном итоге заставляет рабочие нагрузки.

Во-вторых, вы можете столкнуться с двумя препятствиями:

  1. Основная проблема заключается в том, что Warden CPI обращается как к бэкэнду Garden, так и к локальному ядру Linux для настройки различных вещей вокруг этих контейнеров Garden. Как прямое следствие, вы не можете запускать CPI Warden внутри контейнера BOSH-Lite.

  2. Используемая файловая система (здесь уже давно ушедший из жизни Garden Linux, но в настоящее время проблема аналогична Garden runC) может не работать внутри контейнера Garden, как это управляется ранее существовавшим Warden CPI.

В общем, главное, о чем нужно знать, - это идея о том, что Warden CPI не только общается с серверной частью Garden через некоторый его REST API. Более того, Warden CPI должен быть совмещен с ядром Linux, которое запускает Garden, чтобы выполнять системные вызовы и запускать локальные команды для монтирования постоянного хранилища и других вещей.

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