Hi Anthony, So, there's some additional backstory here - I used to work for Chef, so I'm pretty experienced in the ecosystem. There types of questions are better asked on the Chef mailing list, but I'll try to give you as much information in as few words as possible :)
1. Librarian is not officially supported by Chef (the company). The recommended path is to use the ChefDK which includes Berkshelf for dependency management. Full disclaimer: I am a core committer to Berkshelf so I have bias. 2. There is a vagrant-berkshelf plugin that I would recommend for use with ChefDK. I would consul the README of those plugins for more information on their use. 3. The current story for Vagrant + Chef is a bit sad because installing Chef on a system used to be difficult. The next version of Vagrant will automatically install Chef, so you won't need the vagrant-omnibus plugin. The next version of Vagrant will also include native support for "Chef Solo local mode" (aka Chef Zero). Chef Solo is deprecated by Chef Software. As for good resources, I would recommend not touching so many moving parts at once time. Vagrant is an entire ecosystem of it's own, as is Chef, as is Berkshelf. They work great together, but it can be a lot of information to take in at one time. To learn Chef, I recommend visiting https://learnchef.com <https://learnchef.com/>. They have interactive tutorials and you do not need to worry about managing virtual machines, etc. Best, Seth > On Nov 4, 2014, at 5:40 PM, Anthony Kong <[email protected]> wrote: > > Hi Seth, > > I am really new to these configuration management tools so thanks a lot for > your input! > > So Librarian is nothing more than cookbook management tool and Chef only > installs recipes as instructed. > > As a followup question, I find that there is a plugin called > vagrant-librarian-chef > (https://github.com/jimmycuadra/vagrant-librarian-chef). What is the use case > for this? > > I wonder if you have any good resource on the use/best practice of > vagrant+chefsolo? > > Cheers, Tony > > > On Wednesday, 5 November 2014 09:13:02 UTC+11, Seth Vargo wrote: > Hi Anthony, > > I think you are confusing Chef with Librarian with Vagrant. > > - Chef is a configuration management tool > - Librarian is a Chef cookbook dependency manager > - Vagrant merely executes the Chef recipes you specify > > Best, > Seth > >> On Nov 4, 2014, at 5:07 PM, Anthony Kong <[email protected] >> <javascript:>> wrote: >> >> Hi Seth, >> >> Thanks for your answer. I made that comment because I was expecting chef to >> resolve all the dependencies and install them automatically for me. As you >> can see in the Cheffile.lock file, chef seems to be capable of working out >> the dependency tree of sensu >> >> I will explicitly add the dependent packages for now. >> >> Cheers, Tony >> >> On Wednesday, 5 November 2014 07:59:33 UTC+11, Seth Vargo wrote: >> Hi Anthony, >> >> This is not really a Vagrant issue, but I'll answer as best I can here. >> >> I do not see rabbitmq in your Chef configuration run_list. Vagrant has no >> way of knowing you want to run the rabbitmq recipe if you do not specify it >> in the run_list. Just like your other recipes (apt, vim, git), you need to >> tell Chef to run that recipe. >> >> > I think it will defeat the purpose of using chef if I have to explicitly >> > add rabbitmq to the recipe list. >> >> I am not sure I understand this comment. You must declare the recipe in your >> run_list or Chef does not know to run the recipe. >> >> Best, >> Seth >> >>> On Nov 4, 2014, at 3:16 PM, Anthony Kong <[email protected] <>> wrote: >>> >>> Hi all, >>> >>> I am trying to install sensu to a VM in Virtual Box. >>> >>> It is my Cheffile: >>> >>> # encoding: utf-8 >>> >>> site 'http://community.opscode.com/api/v1' >>> <http://community.opscode.com/api/v1'> >>> >>> cookbook "apt" >>> cookbook "python", {} >>> cookbook "vim", {} >>> cookbook "git", {} >>> cookbook "postfix", {} >>> cookbook 'sensu', '~> 2.2.0' >>> >>> I can confirm that sensu's dependencies are correctly resolved in >>> Cheffile.lock. e.g. >>> >>> $ grep rabbit Cheffile.lock >>> rabbitmq (3.3.0) >>> rabbitmq (>= 2.0.0) >>> >>> >>> However, after vagrant up, I find that the package rabbitmq-server is not >>> installed. >>> >>> Here is my chef provision section of my Vagrant file >>> >>> >>> config.vm.provision :chef_solo do |chef| >>> chef.cookbooks_path = "cookbooks" >>> # Enable this for debug info >>> # chef.log_level = :debug >>> chef.data_bags_path = "data_bags" >>> chef.add_recipe 'apt' >>> chef.add_recipe 'python' >>> chef.add_recipe 'vim' >>> chef.add_recipe 'git' >>> # Must provide ssl.json in data bag for sensu >>> chef.add_recipe 'sensu' >>> chef.json = { >>> :git => { >>> :prefix => "/usr/local" >>> } >>> } >>> end >>> >>> I think it will defeat the purpose of using chef if I have to explicitly >>> add rabbitmq to the recipe list. How can I resolve this missing dependency >>> problem? >>> >>> Thanks >>> >>> >>> -- >>> You received this message because you are subscribed to the Google Groups >>> "Vagrant" group. >>> To unsubscribe from this group and stop receiving emails from it, send an >>> email to [email protected] <>. >>> For more options, visit https://groups.google.com/d/optout >>> <https://groups.google.com/d/optout>. >> >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Vagrant" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> For more options, visit https://groups.google.com/d/optout >> <https://groups.google.com/d/optout>. > > > -- > You received this message because you are subscribed to the Google Groups > "Vagrant" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected] > <mailto:[email protected]>. > For more options, visit https://groups.google.com/d/optout > <https://groups.google.com/d/optout>.
smime.p7s
Description: S/MIME cryptographic signature
