Differences

This shows you the differences between two versions of the page.

Link to this comparison view

saisp:labs:10:contents:05 [2014/01/31 16:41]
alexandru.carp
saisp:labs:10:contents:05 [2017/05/22 17:28] (current)
alexandru.carp
Line 1: Line 1:
-==== 05. Variabile si selectori ====+==== 05. [20p] Variabile si selectori ====
  
 === Variabile === === Variabile ===
Line 68: Line 68:
 Aplicati manifestul si observati starea serviciului NTP. Aplicati manifestul si observati starea serviciului NTP.
  
-=== (Exercitiu) Instalare ​NTP ===+=== Manifest pentru instalare ​NTP ===
  
-Scrieti un manifest care sa instaleze pachetul corect pentru ​serverul NTP, in functie de distributia de Linux.+Mai intai, dezinstalati ​serverul ​de NTP din masina virtuala.
  
-Pentru Ubuntu sau Debian ​pachetul ​se numeste **ntp** iau pentru Redhat si Fedora se numeste **ntpd**.+Apoi, scrieti un manifest care: 
 +  * sa instaleze pachetul pentru serverul NTP; 
 +  * sa se asigure ca serviciul NTP este pornit (numele serviciului difera, in functie de distributia de Linux); 
 +  * sa se asigure ca fisierul de configurare este cel corect (in functie de distributie).  
 +Folositi structura conditionala **case**. 
 + 
 +<​note>​ 
 +Consultati documentatia pentru **case**: https://​docs.puppet.com/​puppet/​3.5/​lang_conditional.html#​case-statements 
 +</​note>​ 
 + 
 +<​note>​ 
 +  * Pentru Ubuntu sau Debian ​serviciul ​se numeste **ntp** iau pentru Redhat si Fedora se numeste **ntpd**. 
 +  * Descarcati fisierul de configurare pentru Debian / Ubuntu (https://​github.com/​ihcsim/​puppet-tutorial/​blob/​master/​src/​modules/​ntp/​files/​ntp.conf.debian) sau RedHat / Fedora (https://​github.com/​ihcsim/​puppet-tutorial/​blob/​master/​src/​modules/​ntp/​files/​ntp.conf.el) 
 +</​note>​ 
 + 
 +<​solution -hidden>​ 
 +<​code>​ 
 +case $operatingsystem { 
 +  centos, redhat: { 
 +    $service_name = '​ntpd'​ 
 +    $conf_file ​   = '​ntp.conf.el'​ 
 +  } 
 +  debian, ubuntu: { 
 +    $service_name = '​ntp'​ 
 +    $conf_file ​   = '​ntp.conf.debian'​ 
 +  } 
 +
 + 
 +package { '​ntp':​ 
 +  ensure => installed,​ 
 +
 +file { '​ntp.conf':​ 
 +  path    => '/​etc/​ntp.conf',​ 
 +  ensure ​ => file, 
 +  require => Package['​ntp'​],​ 
 +  source ​ => "/​root/​${conf_file}"​ 
 +
 +service { '​ntp':​ 
 +  name      => $service_name,​ 
 +  ensure ​   => running, 
 +  enable ​   => true, 
 +  subscribe => File['​ntp.conf'​],​ 
 +
 +</​code>​ 
 +</​solution>​
  
saisp/labs/10/contents/05.txt · Last modified: 2017/05/22 17:28 by alexandru.carp
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0