Ubuntu 24.04
Sponsored Link

Puppet : [file Resource] का उपयोग कैसे करें2024/07/25

 

यह [file] संसाधन के उदाहरण हैं।

[1] यह फ़ाइल को निम्नानुसार रखने के लिए कॉन्फ़िगरेशन का प्रबंधन करता है।
यदि फ़ाइल Puppet क्लाइंट पर कोई नहीं है, तो इसे बनाया जाता है।
यदि मौजूद है, तो यह निर्दिष्ट विशेषताओं के साथ रहता है।
root@dlp:~#
vi /etc/puppet/code/environments/production/manifests/site.pp
file { '/home/testfile.txt':
  ensure  => file,
  owner   => 'root',
  group   => 'root',
  mode    => '0644',
  content => 'This is the puppet test file.',
}
[2] चर के साथ सामग्री निर्दिष्ट करें।
root@dlp:~#
vi /etc/puppet/code/environments/production/manifests/file01.pp
$contents = 'This is the test Puppet manifest.
Sample contents
Test contents
'

file { '/home/testfile2.txt':
  ensure  => file,
  owner   => 'root',
  group   => 'root',
  mode    => '0644',
  content => "$contents",
}
[3] Puppet सर्वर पर स्रोत फ़ाइल को टेम्पलेट के रूप में निर्दिष्ट करें।
root@dlp:~#
vi /etc/puppet/fileserver.conf
# नया निर्माण

# कोई भी नाम
[extra_files]
  # टेम्प्लेट फ़ाइलों के लिए निर्देशिका का पथ
  path /etc/puppet/files
  # एक्सेस की अनुमति
  # नीचे दिया गया उदाहरण सभी को अनुमति देता है
  # यदि एक्सेस अनुमति सेट है, तो निम्नानुसार सेट करें
  # ⇒ [allow 10.0.0.0/24]
  # ⇒ [allow *.srv.world]
  allow *

root@dlp:~#
vi /etc/puppet/code/environments/production/manifests/file02.pp
file { '/home/testfile3.txt':
  ensure => file,
  owner  => 'root',
  group  => 'root',
  mode   => '0644',
  source => 'puppet://dlp.srv.world/extra_files/test.txt',
}

root@dlp:~#
mkdir /etc/puppet/files

root@dlp:~#
echo "Puppet test file" > /etc/puppet/files/test.txt

[4] यह लिंक रखने के लिए कॉन्फ़िगरेशन का प्रबंधन करता है।
उदाहरण के लिए, यह [/home/testfile.link] को [/home/testfile.txt] से रखता है।
root@dlp:~#
vi /etc/puppet/code/environments/production/manifests/file03.pp
file { '/home/testfile.link':
  ensure => link,
  target => '/home/testfile.txt',
}
[5] यह किसी फ़ाइल को मौजूद नहीं रखने के लिए कॉन्फ़िगरेशन का प्रबंधन करता है। यदि यह मौजूद है, तो इसे हटा दिया जाता है।
root@dlp:~#
vi /etc/puppet/code/environments/production/manifests/file04.pp
file { 'testfile4.txt': ensure => absent }
[6] यह किसी निर्देशिका को पुनरावर्ती रूप से रखने के लिए कॉन्फ़िगरेशन का प्रबंधन करता है।
उदाहरण [मोड] को [644] के रूप में निर्दिष्ट करता है, हालांकि [x] स्वाभाविक रूप से निर्देशिकाओं में स्वचालित रूप से जोड़ा जाता है।
इसके अलावा, जो फ़ाइलें या निर्देशिकाएं स्रोत निर्देशिका में मौजूद नहीं हैं, उन्हें पैरामीटर [purge] और [force] के साथ हटा दिया जाता है।
root@dlp:~#
vi /etc/puppet/fileserver.conf
# अंत में जोड़ें
# निर्देशिका को टेम्पलेट स्रोत के रूप में निर्दिष्ट करें

[extra_dir]
  path /etc/puppet/dirs
  allow *

root@dlp:~#
vi /etc/puppet/code/environments/production/manifests/file05.pp
file { '/home/testdir':
  ensure  => directory,
  recurse => true,
  purge   => true,
  force   => true,
  owner   => 'root',
  group   => 'root',
  mode    => '0644',
  source  => 'puppet://dlp.srv.world/extra_dir/testdir',
}

root@dlp:~#
mkdir -p /etc/puppet/dirs/testdir

root@dlp:~#
touch /etc/puppet/dirs/testdir/test.txt

मिलान सामग्री