Поваренная книга Yum не найдена в Ubuntu?

Я использую немного шеф-повара github.com/tobami/littlechef для установки графита на Ubuntu 14.04 vm, используя виртуальный бокс и бродягу.

Узел, описывающий сервер ubuntu, выглядит так

{
    "chef_environment": "_default",
    "name": "local_monitoring",
    "platform": "debian",
    "run_list": [
        "recipe[graphite]"
    ]
}

Когда я пытаюсь запустить следующую команду...

fix node:local_monitoring

... Я получаю следующее сообщение об ошибке.

    == Configuring local_monitoring ==
Synchronizing nodes, environments, roles, cookbooks and data bags...

Cooking...
[2014-12-31T01:40:58+00:00] INFO: Forking chef instance to converge...
[2014-12-31T01:40:58+00:00] INFO: *** Chef 11.12.8 ***
[2014-12-31T01:40:58+00:00] INFO: Chef-client pid: 19967
[2014-12-31T01:41:04+00:00] INFO: Setting the run_list to ["recipe[graphite]"] from CLI options
[2014-12-31T01:41:04+00:00] INFO: Run List is [recipe[graphite]]
[2014-12-31T01:41:04+00:00] INFO: Run List expands to [graphite]
[2014-12-31T01:41:04+00:00] INFO: Starting Chef Run for local-monitoring
[2014-12-31T01:41:04+00:00] INFO: Running start handlers
[2014-12-31T01:41:04+00:00] INFO: Start handlers complete.
[2014-12-31T01:41:04+00:00] ERROR: Running exception handlers
[2014-12-31T01:41:04+00:00] ERROR: Exception handlers complete
[2014-12-31T01:41:04+00:00] FATAL: Stacktrace dumped to /tmp/chef-solo/cache/chef-stacktrace.out
[2014-12-31T01:41:04+00:00] ERROR: Cookbook yum not found. If you're loading yum from another cookbook, make sure you configure the dependency in your metadata
[2014-12-31T01:41:04+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)

FAILED: chef-solo could not finish configuring the node

Disconnecting from [email protected]:2001... done.

У меня есть поваренная книга графита, найденная здесь github.com/hw-cookbooks/graphite, установленная в моем каталоге coobooks.

Я прочитал о похожей проблеме здесь lists.opscode.com/sympa/arc/chef/2013-02/msg00409.html, поэтому я скачал кулинарную книгу yum отсюда https://github.com/opscode-cookbooks/yum и добавил его в свой список выполнения, но когда я запускаю fix node:local_monitoring, я получаю следующий вывод.

== Configuring local_monitoring ==
Synchronizing nodes, environments, roles, cookbooks and data bags...

Cooking...
[2014-12-31T01:47:18+00:00] INFO: Forking chef instance to converge...
[2014-12-31T01:47:18+00:00] INFO: *** Chef 11.12.8 ***
[2014-12-31T01:47:18+00:00] INFO: Chef-client pid: 20308
[2014-12-31T01:47:24+00:00] INFO: Setting the run_list to ["recipe[yum]", "recipe[graphite]"] from CLI options
[2014-12-31T01:47:24+00:00] INFO: Run List is [recipe[yum], recipe[graphite]]
[2014-12-31T01:47:24+00:00] INFO: Run List expands to [yum, graphite]
[2014-12-31T01:47:24+00:00] INFO: Starting Chef Run for local-monitoring
[2014-12-31T01:47:24+00:00] INFO: Running start handlers
[2014-12-31T01:47:24+00:00] INFO: Start handlers complete.
[2014-12-31T01:47:24+00:00] ERROR: Running exception handlers
[2014-12-31T01:47:24+00:00] ERROR: Exception handlers complete
[2014-12-31T01:47:24+00:00] FATAL: Stacktrace dumped to /tmp/chef-solo/cache/chef-stacktrace.out
[2014-12-31T01:47:24+00:00] ERROR: Cookbook yum not found. If you're loading yum from another cookbook, make sure you configure the dependency in your metadata
[2014-12-31T01:47:24+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)

FAILED: chef-solo could not finish configuring the node

Disconnecting from [email protected]:2001... done.

Я действительно не знаю, что делать здесь, или что может быть причиной проблемы. Любая помощь будет оценена по достоинству. Если мне нужно что-то уточнить, дайте мне знать. Большое спасибо!


person PaulM    schedule 31.12.2014    source источник
comment
эту поваренную книгу необходимо обновить для поддержки Ubuntu, IE использует package для установки. Это заставит его использовать apt-get install, а не yum   -  person abc123    schedule 31.12.2014
comment
Комментарий выше некорректен и не относится к этой проблеме.   -  person coderanger    schedule 31.12.2014


Ответы (1)


поваренная книга графита зависит от yum. Поскольку зависимости поваренной книги Chef должны быть чисто статическими, они не могут быть привязаны к каждой платформе, поэтому вам это нужно даже на тех платформах, с которыми они фактически не будут использоваться. Вот почему такие инструменты, как Berkshelf, популярны для управления загрузками и зависимостями.

person coderanger    schedule 31.12.2014
comment
Спасибо за ваш комментарий! Почему Chef по-прежнему не может найти поваренную книгу yum даже после того, как я включил ее в свой список выполнения? - person PaulM; 31.12.2014
comment
Вы действительно загрузили и распаковали поваренную книгу yum в папку с поваренными книгами (вместе со всеми другими зависимостями)? - person coderanger; 31.12.2014
comment
Я клонировал репозитории отсюда github.com/opscode-cookbooks/yum и здесь github.com/opscode-cookbooks/yum-epel. Я поместил его в свой каталог кулинарных книг. - person PaulM; 31.12.2014