Установка пакета пропуска клиента Chef на сервере с воздушным зазором

Я пытаюсь установить рецепты шеф-повара на сервере с воздушным зазором. Я собрал драгоценные камни, перечисленные во всех рецептах, и подготовил архив поставщика / кеша. Копируем его на сервер и запускаем /opt/chef/embedded/bin/bunlde install --local успешно установил 233 драгоценных камня, но когда я запустил chef-client -j boot.json он находит все драгоценные камни и не загружает, но по-прежнему выполняет шаг установки пакета, пытается получить доступ к rubygems.org и терпит неудачу

Запуск chef-client в режиме отладки не показывает имени драгоценного камня, он пытается загрузить, поэтому я не знаю, чего не хватает. Могу ли я пропустить этот шаг или узнать, какой драгоценный камень отсутствует?

1 ответ

Частью запуска после загрузки кулинарных книг является установка необходимых гемов в файл рецептов metadata.rb.

Клиент готовит Gemfile и запускает bundle installчтобы проверить, установлены ли и обновлены ли необходимые драгоценные камни , это поведение сборщика и почему он пытается подключиться к rubygems.org.

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

Это почти то, что вы сделали, получили все драгоценные камни по своим рецептам, установили их на внутреннюю машину и запустили gem server.

Это может быть утомительным, и есть другие подходы , позволяющие зеркальный rubygem внутренне более легко описано здесь

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