Hi Angel, In terms of having a regular execution of puppet device, you could utilise the device_manager and set up a run_interval parameter: https://forge.puppet.com/puppetlabs/device_manager#run_interval which will set up a regular cron job.
Also, it is worth adding cisco_ios::server to your puppet server manifest alongside cisco_ios::proxy, as per the cisco_ios setup guide: https://forge.puppet.com/puppetlabs/cisco_ios#setup If you still have issues with the resource_api autoload, you could try adding the gem to your puppetserver: puppetserver gem install puppet-resource_api puppetserver reload puppet agent -tv Regards Will On Wednesday, December 5, 2018 at 1:32:23 PM UTC, amateo wrote: > > I have it working and I can run puppet device to send > configuration to > device. > > Now, I would like to configure the agent proxy so I don't have to > manually run puppet device to send configuration to devices, but to > puppet agent doing it for me in every run. Is this possible, how do I > have to do it? > > I'm trying it with this manifest: > > node default { > > include cisco_ios::proxy > > exec {'run puppet device': > command => '/opt/puppetlabs/bin/puppet device --verbose --logdest > syslog', > require => Class['cisco_ios::proxy'], > } > > device_manager {'switch_cisco_pruebas': > type => 'cisco_ios', > credentials => { > address => '10.54.1.111', > port => '22', > username => 'test', > password => 'test123', > enable_password => '123test', > }, > } > > } > > node switch_cisco_pruebas { > > ntp_server { '1.2.3.5': > ensure => 'present', > key => 94, > prefer => true, > minpoll => 4, > maxpoll => 14, > } > > ios_config { 'prueba_comandos': > command => " > default interface Gi1/0/2 > int gi1/0/2 > description Prueba Puppet > ", > } > } > > With this manifest, the "run puppet device" exec is done in every > puppet agent run, sending configuration to device, and works with > ntp_server and banner resources, but it doesn't work with ios_config > one, I get the error > > Dec 5 14:23:55 leo10 puppet-agent[66368]: Could not retrieve catalog > from remote server: Error 500 on SERVER: Server Error: Evaluation Error: > Error while evaluating a Resource Statement, Could not autoload > puppet/type/ios_config: no such file to load -- puppet/resource_api > (file: /etc/puppetlabs/code/environments/production/manifests/site.pp, > line: 33, column: 2) on node switch_cisco_pruebas > > The same manifest, applied with puppet device works without any > problem. > > What do I have to do to automatically configure device in every > puppet run? > > El 5/12/18 a las 12:11, Will Meek escribió: > > Hi Angel, > > > > Thank you for the detail so far! > > > > The only way I can reproduce this on my setup is with having > > puppetlabs-cisco_ios 0.5.0 installed in the production environment, > > whereby puppet tries to pick up the old 'ios' provider rather than the > > >0.6.0 'cisco_ios' provider. > > > > puppet device --verbose --target switch_cisco_pruebas --modulepath > > /etc/puppetlabs/code/environments/ciscotest/modules --resource > ntp_server > > > > Error: Could not autoload puppet/provider/ntp_server/ios: superclass > > mismatch for class NtpServer > > > > > > > > puppet module list > > > > /etc/puppetlabs/code/environments/production/modules > > > > └── puppetlabs-cisco_ios (v0.5.0) > > > > puppet module list --environment ciscotest > > > > /etc/puppetlabs/code/environments/ciscotest/modules > > > > ├── puppetlabs-cisco_ios (v0.6.1) > > > > > > > > Do you have an old version of the cisco_ios module installed in any > > environments? > > > > This should be addressed by the resolution of Puppet > > ticket https://tickets.puppetlabs.com/browse/PUP-8766, hopefully early > 2019. > > > > In the meantime, if you add a --libdir are you successful? > > > > eg. > > > > sudo puppet device --verbose --target switch_cisco_pruebas --modulepath > > /etc/puppetlabs/code/environments/ciscotest/modules --resource > > ntp_server --libdir > > /etc/puppetlabs/code/environments/ciscotest/modules/cisco_ios/lib/ > > > > Info: retrieving resource: ntp_server from switch_cisco_pruebas at > > file:///etc/puppetlabs/puppet/devices/switch_cisco_pruebas.conf > > > > ntp_server { '1.2.3.5': > > > > key => 94, > > > > minpoll => 4, > > > > maxpoll => 14, > > > > prefer => true, > > > > ensure => 'present', > > > > } > > > > > > Out of interest - what version of Puppet are you running? > > > > puppet --version > > 6.0.4 > > > > Thanks > > Will > > > > On Friday, November 30, 2018 at 1:29:16 PM UTC, amateo wrote: > > > > I'm beginning with puppetlabs/cisco_ios module. For the moment, just > a > > proof of concept. > > > > These are the modules I have installed: > > > > /etc/puppetlabs/code/environments/ciscotest/modules > > ├── puppetlabs-cisco_ios (v0.6.1) > > ├── puppetlabs-concat (v5.1.0) > > ├── puppetlabs-device_manager (v2.7.0) > > ├── puppetlabs-hocon (v1.0.1) > > ├── puppetlabs-netdev_stdlib (v0.17.0) > > ├── puppetlabs-puppetserver_gem (v1.0.0) > > ├── puppetlabs-resource_api (v1.0.0) > > └── puppetlabs-stdlib (v5.1.0) > > > > In _manifests/site.pp_ I have: > > node default { > > device_manager {'switch_cisco_pruebas': > > type => 'cisco_ios', > > credentials => { > > address => '1.2.3.4', > > port => '22', > > username => 'test', > > password => 'password', > > enable_password => 'enablepassword', > > }, > > } > > } > > > > The problem I have is that running puppet agent gives no error, but > the > > device command doesn't work. I have the error: > > > > root@leo10:/etc/puppetlabs/code/environments/ciscotest# puppet > device > > --verbose --target switch_cisco_pruebas --apply ~/manifest.pp --noop > > Error: Could not autoload puppet/provider/ntp_server/cisco_ios: > > superclass mismatch for class Device > > Error: Could not autoload puppet/type/ntp_server: Could not autoload > > puppet/provider/ntp_server/cisco_ios: superclass mismatch for class > > Device > > Error: Evaluation Error: Error while evaluating a Resource > Statement, > > Could not autoload puppet/type/ntp_server: Could not autoload > > puppet/provider/ntp_server/cisco_ios: superclass mismatch for class > > Device (file: /home/amateo_adm/manifest.pp, line: 1, column: 1) on > node > > switch_cisco_pruebas > > > > Could anybody help me? > > > > -- > > Angel L. Mateo Martínez > > Sección de Telemática > > Área de Tecnologías de la Información > > y las Comunicaciones Aplicadas (ATICA) > > http://www.um.es/atica > > Tfo: 868889150 > > Fax: 868888337 > > > > -- > > 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] <javascript:> > > To view this discussion on the web visit > > > https://groups.google.com/d/msgid/puppet-users/ef8056dd-83f3-4ed6-907b-42eec15cf9fc%40googlegroups.com > > > < > https://groups.google.com/d/msgid/puppet-users/ef8056dd-83f3-4ed6-907b-42eec15cf9fc%40googlegroups.com?utm_medium=email&utm_source=footer>. > > > > For more options, visit https://groups.google.com/d/optout. > > -- > Angel L. Mateo Martínez > Sección de Telemática > Área de Tecnologías de la Información > y las Comunicaciones Aplicadas (ATICA) > http://www.um.es/atica > Tfo: 868889150 > Fax: 868888337 > -- 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 view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/06283f9a-861d-4b95-86fb-1e2ccb5abdef%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
