Presentation is loading. Please wait.

Presentation is loading. Please wait.

Puppet management for DPM Martin Hellmich Andrea Manzi IT/SDC 13.12.2013.

Similar presentations


Presentation on theme: "Puppet management for DPM Martin Hellmich Andrea Manzi IT/SDC 13.12.2013."— Presentation transcript:

1 Puppet management for DPM Martin Hellmich Andrea Manzi IT/SDC 13.12.2013

2 DPM Configuration 13/12/2013 Puppet management for DPM Jan ‘14Sep ‘13 Sep ‘14 Cont. puppet module development 2

3 Obvious differences YAIM  Configuration only  Configuration all local  Only EMI components  Bash  You can do anything you want Puppet  Install and configuration  Puppetmasters  Everything  Puppet DSL or ruby  Adhere to puppet conventions 13/12/2013Puppet management for DPM 3

4 Yaim to Puppet conversion  Functions  Modules  site-info.def  Manifest  Our modules: dmlite, fetchcrl, gridftp, lcgdm, xrootd  Also used: afs, bdii, ceph, firewall, hadoop, hostcertificate, kerberos, mysql, stdlib 13/12/2013 Puppet management for DPM 4

5 DPM WITH PUPPET Using modules and manifests 13/12/2013Puppet management for DPM 5

6 First step: Find the configuration page 13/12/2013 Puppet management for DPM https://svnweb.cern.ch/trac/lcgdm/wiki/Dpm/Admin/InstallationC onfigurationPuppetSimple 6

7 Second step: Install puppet modules 13/12/2013 Puppet management for DPM  yum install puppet  puppet module install lcgdm  puppet module install dmlite  puppet module install gridftp  puppet module install xrootd https://forge.puppetlabs.com 7

8 Third step: Get the examples and configure 13/12/2013 Puppet management for DPM 8

9 Fourth step: Run puppet  puppet apply headnode.pp  Or  puppet agent -t 13/12/2013 Puppet management for DPM 9

10 A look at the examples  Variables $token_password = "TOKEN_PASSWORD" $mysql_root_pass = "PASS" $db_user = "dpmmgr" $db_pass = "MYSQLPASS" $domain = "cern.ch" 13/12/2013 Puppet management for DPM 10

11 A look at the examples  Dependencies Class[Mysql::Server] -> Class[Lcgdm::Ns::Service] 13/12/2013 Puppet management for DPM 11

12 A look at the examples  Firewall firewall{"050 allow http and https": proto => "tcp", dport => [80, 443], action => "accept" } 13/12/2013 Puppet management for DPM 12

13 A look at the examples  DPM class{"lcgdm": dbflavor => "mysql", dbuser => "${db_user}", dbpass => "${db_pass}", dbhost => "localhost", domain => "${domain}", volist => $volist, } 13/12/2013 Puppet management for DPM 13

14 A look at the examples  dmlite class{"dmlite::head": token_password => "${token_password}", mysql_username => "${db_user}", mysql_password => "${db_pass}", } 13/12/2013 Puppet management for DPM 14

15 A look at the examples  Pools and filesystems lcgdm::dpm::pool{"mypool": def_filesize => "100M" } lcgdm::dpm::filesystem {"${::fqdn}-myfs": pool => "mypool", server => "${::fqdn}", fs => "/fslocation" } 13/12/2013 Puppet management for DPM 15

16 A look at the examples  Frontends class{"dmlite::dav":} class{"dmlite::srm":} class{"dmlite::gridftp": dpmhost => "${::fqdn}" } 13/12/2013 Puppet management for DPM 16

17 A look at the examples  Security lcgdm::shift::trust_value{ "DPM TRUST": component => "DPM", host => "${disk_nodes}"; "DPNS TRUST": component => "DPNS", host => "${disk_nodes}"; "RFIO TRUST": component => "RFIOD", host => "${disk_nodes}", all => true } 13/12/2013 Puppet management for DPM lcgdm::shift::protocol{"PROTOCOLS": component => "DPM", proto => "rfio gsiftp http https xroot" } class{"voms::atlas":} class{"voms::dteam":} 17

18 DEMO TIME QUESTIONS? Do an install from scratch 13/12/2013Puppet management for DPM 18

19 Backup Slides

20 A look at the examples  XROOTD class{"xrootd::config": xrootd_user => 'dpmmgr', xrootd_group => 'dpmmgr' } class{"dmlite::xrootd": nodetype => [ 'head' ], domain => "${domain}", dpm_xrootd_debug => $debug, dpm_xrootd_sharedkey => "${xrootd_sharedkey}" } 13/12/2013 Puppet management for DPM 20


Download ppt "Puppet management for DPM Martin Hellmich Andrea Manzi IT/SDC 13.12.2013."

Similar presentations


Ads by Google