Puppet install of Openstack: не удалось найти ресурс «Пакет [dnsmasq-base] Пакет [dnsmasq-utils]» для связи с «Пакет [нейтрон-dhcp-agent]»

ebug: Executing '/etc/puppet/etckeeper-commit-pre'
debug: catalog supports formats: b64_zlib_yaml dot pson raw yaml; using pson
err: Could not retrieve catalog from remote server: Error 400 on SERVER: Could not find resource 'Package[dnsmasq-base]Package[dnsmasq-utils]' for relationship on 'Package[neutron-dhcp-agent]' on node controller6.ec2.internal
warning: Not using cache on failed catalog
err: Could not retrieve catalog; skipping run

Мне, должно быть, не хватает чего-то очевидного, у меня установлены пакеты dnsmasq, dnsmasq-base и dnsmasq-utils на моем сервере Ubuntu 12.04 LTS, но марионетка не может их найти. Я использую sudo puppet, поэтому не думаю, что это будет проблемой с разрешениями. Отключение требования в моем params.pp позволило продолжить установку (но она зависла из-за отдельной проблемы, поэтому я не могу сказать вам, сработало бы, если бы она была завершена). Я также пробовал использовать нейтрон v3.2 и 3.3, а остальные модули имеют версии, необходимые для openstack. Наконец, если я отключу нейтрон в openstack all.pp, я могу получить рабочую установку функционирования Openstack (без сети).

Надеюсь, кто-то здесь может дать мне пару подсказок, спасибо за чтение.

Править

Хотел добавить, что с тех пор я вручную установил пакет нейтрон-dhcp-agent в надежде исправить эту проблему, но безуспешно.

Редактировать 2

   $dnsmasq_packages   = ['dnsmasq-base', 'dnsmasq-utils']

Строка 105 в / etc / puppet / modules / нейтрон / манифесты / параметры.pp

Если я закомментирую пакеты (замените на []), то он продолжится после того момента, в котором произошла ошибка.

Редактировать 3

Я считаю, что проблема здесь, /etc/puppet/modules/neutron/manifests/agents/dhcp.pp Есть какие-нибудь предложения о том, как я могу попытаться исправить это? Я собираюсь поставить две проверки вместо одной и посмотреть, как это пойдет.

include neutron::params

      Neutron_config<||>            ~> Service['neutron-dhcp-service']


 Neutron_dhcp_agent_config<||> ~> Service['neutron-dhcp-service']

  case $dhcp_driver {
    /\.Dnsmasq/: {
      Package[$::neutron::params::dnsmasq_packages] -> Package<| title == 'neutron-dhcp-agent' |>
      ensure_packages($::neutron::params::dnsmasq_packages)
    }
    default: {
      fail("Unsupported dhcp_driver ${dhcp_driver}")
    }
  }
0
задан 1 May 2014 в 15:25
1 ответ

Судя по моей работе с BE 2012, похоже, что ответ таков:

  • В потоке пользовательского интерфейса восстановления вы не видите носители. Вместо этого вы видите наборы резервных копий

  • После каталогизации носителя вы можете затем в представлении устройства хранения (ленточный накопитель) увидеть наборы резервных копий на этом носителе

Важный шаг, который легко пропустить: Перед нажатием кнопки «Восстановить» щелкните имя сервера, с которым связан набор носителей. (Вы не сможете сделать это позже. Вы должны выбрать сервер из основного списка и затем нажать «Восстановить».)

  • Итак, рабочий процесс для «восстановления с носителя»:

    • Каталог носителя
    • Посмотрите на наборы резервных копий на этот носитель (даты), запишите те, которые вас интересуют
    • Щелкните вкладку верхнего меню Резервное копирование и восстановление
    • Щелкните сервер, с которым связан набор носителей для восстановления ( очень важный шаг!

      Чтобы все было в одном месте, вот изменения:

      manifest / agent / dhcp.pp

      Начинается со строки 85

          case $dhcp_driver {
            /\.Dnsmasq/: {
       -      Package[$::neutron::params::dnsmasq_packages] -> Package<| title == 'neutron-dhcp-agent' |>
       -      ensure_packages($::neutron::params::dnsmasq_packages)
       +      Package[$::neutron::params::dnsmasq-base_package] -> Package<| title == 'neutron-dhcp-agent' |>
       +      Package[$::neutron::params::dnsmasq-utils_package] -> Package<| title == 'neutron-dhcp-agent' |>
       +      ensure_packages($::neutron::params::dnsmasq-base_package)
       +      ensure_packages($::neutron::params::dnsmasq-utils_package)
            }
            default: {
              fail("Unsupported dhcp_driver ${dhcp_driver}")
      

      manifest / params.pp

      Начинается со строки 93

       $metadata_agent_package = 'neutron-metadata-agent'
        $metadata_agent_service = 'neutron-metadata-agent'
      
       -    $dnsmasq_packages   = ['dnsmasq-base', 'dnsmasq-utils']
       +    $dnsmasq-base_package = ['dnsmasq-base']
       +    $dnsmasq-utils_package = ['dnsmasq-utils']
      
            $isc_dhcp_packages  = ['isc-dhcp-server']
      

      Править

      Несмотря на то, что описанное выше устранило мою проблему при запуске Puppet 2.7.11, я недавно обновился до версии 3.5.1, и проблема исчезла. Итак, два возможных решения, если вы когда-нибудь столкнетесь с этим:)

0
ответ дан 5 December 2019 в 14:06

Теги

Похожие вопросы