I believe the error indicates that hiera was installed as a rubygem which is not supported on Puppet 3.x. Maybe the error will go away if you remove the hiera gems?
I think I have gotten around it by adding 'require rubygems' to the puppet executable. I'm copying the puppet-users mailing list b/c I am guessing this is a common problem. On Wed, May 1, 2013 at 12:35 PM, Ling Gao <[email protected]> wrote: > Hi, > > What does the following error mean? > > Error: Could not retrieve catalog from remote server: Error 400 on SERVER: > You need rubygems to use Hiera at /etc/puppet/manifests/site.pp:12 on node > <nodename> > Warning: Not using cache on failed catalog > Error: Could not retrieve catalog; skipping run > > I have puppet 3.1.1-1 installed and have rubygems-1.8.16-1 installed on > both puppet server and agent nodes. > > Thanks, > > Ling > > > On Tue, Apr 30, 2013 at 6:15 PM, Dan Bode <[email protected]> wrote: > >> sorry, I keep accidentally replying to the sender and not the list... >> >> >> On Tue, Apr 30, 2013 at 3:14 PM, Dan Bode <[email protected]> wrote: >> >>> >>> >>> >>> On Tue, Apr 30, 2013 at 2:37 PM, Ling Gao <[email protected]> wrote: >>> >>>> Thanks for the quick response. >>>> Here is the situation I am trying to solve: the controller and compute >>>> nodes are behind the firewall. only the puppet server can access the >>>> internet. So I need to: >>>> 1. find and download the correct OpenStack rpms and >>>> their dependencies and put them on the puppet server. (I think of RDO >>>> unless you have better repositories. ). >>>> >>> >>> >>> You should be able to use the dev_env as an example of how to achieve >>> this: >>> >>> https://github.com/stackforge/puppet-openstack_dev_env >>> >>> if you look at the following files: >>> >>> manifests/site.pp >>> >>> and >>> >>> hiera_data/common.yaml >>> >>> they should provide you with enough information to get started. You will >>> still have to do a couple of things: >>> >>> - look at the manifests in manifests/setup/* to see example of some of >>> the preconfig being set up >>> - update anything that refers to a proxy (search for 3128),and remove it >>> (or point it to your own proxy if you are going to use one) >>> - either preconfigure your own RDO repos as a part of the OS base image >>> or use puppet to configure it >>> >>> If that sounds like too much too bite into, you may want to consider >>> using packstack to get started. >>> >>> >>> >>> >>> >>>> 2. find puppet modules (I can load it from github if the ones from the >>>> RDO does not work). >>>> 3. construct manifest files (I am not good at it. Just started learning >>>> it. So examples are good start for me.) >>>> >>>> Can anyone help? >>>> >>>> Thanks, >>>> >>>> Ling >>>> >>>> On Tue, Apr 30, 2013 at 5:11 PM, Sandro Mathys >>>> <[email protected]>wrote: >>>> >>>>> The Puppet modules that come with Packstack (openstack-packstack >>>>> package) are not intended to be run outside manually. The example manifest >>>>> you're trying to run wants to configure RabbitMQ but since RDO supports >>>>> Qpid instead, the rabbitmq module (and executable) are missing from RDO. >>>>> >>>>> If you want to use RDO to install OpenStack, use the packstack binary >>>>> as described on the RDO website. If you want to use plain Puppet to >>>>> install >>>>> OpenStack, better don't take the modules from RDO or write your own >>>>> manifest(s) to make sure you use the existing modules if you must, i.e. >>>>> copy Packstack's behavior. >>>>> >>>>> >>>>> On Tue, Apr 30, 2013 at 10:54 PM, Ling Gao <[email protected]>wrote: >>>>> >>>>>> I am testing deploying OpenStack Grizzly on RH6.4 in my cluster. >>>>>> I decided to use the OpenStack rpms and the puppet modules from RDO, >>>>>> but not use packstack to deploy. Here is what I am doing. Please let me >>>>>> know this will work or not. >>>>>> >>>>>> 1. install puppet server >>>>>> 2. Install the openstack modules: >>>>>> yum install -y >>>>>> http://rdo.fedorapeople.org/openstack/openstack-grizzly/rdo-release-grizzly-1.noarch.rpm >>>>>> yum install -y openstack-packstack >>>>>> This will put the openstack modules >>>>>> to /usr/lib/python2.6/site-packages/packstack/puppet/modules directory >>>>>> 3. modify /etc/puppet/puppet.conf. >>>>>> modulepath = >>>>>> /usr/lib/python2.6/site-packages/packstack/puppet/modules >>>>>> 4. Use the site.pp file that comes from >>>>>> /usr/lib/python2.6/site-packages/packstack/puppet/modules/openstack/examples/ >>>>>> directory >>>>>> 5. Install a controller using puppet. >>>>>> But got the following error: >>>>>> # puppet agent -t >>>>>> Info: Retrieving plugin >>>>>> Info: Loading facts in /var/lib/puppet/lib/facter/root_home.rb >>>>>> Info: Loading facts in /var/lib/puppet/lib/facter/iptables_version.rb >>>>>> Info: Loading facts in /var/lib/puppet/lib/facter/puppet_vardir.rb >>>>>> Info: Loading facts in /var/lib/puppet/lib/facter/ip6tables_version.rb >>>>>> Info: Loading facts in /var/lib/puppet/lib/facter/pe_version.rb >>>>>> Error: Could not retrieve catalog from remote server: Error 400 on >>>>>> SERVER: Puppet::Parser::AST::Resource failed with error ArgumentError: >>>>>> Invalid resource type rabbitmq_user at >>>>>> /usr/lib/python2.6/site-packages/packstack/puppet/modules/nova/manifests/rabbitmq.pp:26 >>>>>> on node <nodename> >>>>>> Warning: Not using cache on failed catalog >>>>>> Error: Could not retrieve catalog; skipping run >>>>>> >>>>>> What is missing? Can anyone help? I am not familiar with the .pp >>>>>> files. >>>>>> >>>>>> Thanks, >>>>>> >>>>>> Ling >>>>>> >>>>>> -- >>>>>> >>>>>> >>>>>> >>>>>> >>>>> >>>>> >>>> -- >>>> >>>> >>>> >>>> >>> >>> >> > -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/puppet-users?hl=en. For more options, visit https://groups.google.com/groups/opt_out.
