• ثبت نام
  • ورود
  • 49624 - 021 تلفن
  • ثبت نام
  • ورود
  • 49624 - 021 تلفن

معرفی و آموزش Puppet

معرفی و آموزش Puppet

Puppet یک نرم افزار متن باز جهت مدیریت متمرکز پیکربندی است که توسط Luke Kanies در سال ۲۰۰۵ نوشته شده است و بر روی سرور و کلاینت لینوکس و ویندوز فایل اجرا است, مدیران سرور مجازی و سرور اختصاصی میتوانند با استفاده از Puppet سرعت و بهینگی فوق العاده ای به روند پیکر بندی های تکراری خود بدهند, پاپت قادر است فایل های ini را ویرایش کند, دستورات خط فرمان را تحت شرایط و رویداد های خاص اجرا کند, بدون در گیر کردن مدیر سیستم با تفاوت های پکیج منیجر های مختلف (YUM, APT) بسته های مورد نظر را نصب کند و از به روز بودن آنها اطمینان حاصل کند.

 

معرفی و آموزش Puppet

 

معرفی و آموزش Puppet

ارتباط بین کلاینت و مستر در پاپت توسط SSL محافظت میشود و میتوانید تعداد دلخواه node را به یک master  اضافه کنید تا مدیریت متمرکز آنها توسط master انجام شود.

تنظیمات و پیکربندی ها در پاپت توسط فایل هایی متنی تحت عنوان Manifest ذخیره میشوند, به طور مثال متن زیر برای ایجاد پوشه ای با مشخصات ذکر شده قابل استفاده است:

file { ‘/var/log/admin-app-log’:

ensure => ‘directory’,

owner => ‘root’,

group => ‘wheel’,

mode => ‘۰۷۵۰’,

}

 

همچنین دست شما در اجرا کردن دستورات دلخواه خط فرمان دست شما باز است:

class basic_exec {

exec { ‘refresh_cache’:

command => ‘refresh_cache 8600’,

path => ‘/usr/local/bin/:/bin/’,

}

}

 

دستور زیر فایل php.ini را طبق خواسته شما ویرایش میکند:

 

ini_setting { 'edit phpini':

ensure => present,

path => ' /etc/php5/cli/php.ini',

setting => 'max_input_time',

value => '۶۰',

}

}


دستور زیر سرویس Cron را در صورت غیر فعال بودن استارت میکند:

class running_service {

service { ‘cron’:

ensure => ‘running’,

}

}

یا مانیفست زیر پکیج های ‘screen’, ‘strace’, ‘sudo’   را بر روی سرور های لینوکسی مختلف اعم از رد هت و دبیان نصب میکند

 

$enhancers = [ 'screen', 'strace', 'sudo' ]

package { $enhancers: ensure => 'installed' }

 

هر کدام از این فایل ها را میتوانید با قرار دادن روی کلاینت به صورت تکی اجرا کنید یا روی سرور master قرار دهید تا master روی کلاینت های مربوطه تغییرات را اعمال نماید.

 

با تعریف مانیفست زیر در سرور مستر,  تغییرات مورد نظر فقط در سرور های تعریف شده ns1 و ns2 اعمال میشود

 

node 'ns1', 'ns2' {    # applies to ns1 and ns2 nodes   file {'/tmp/dns':    # resource type file and filename     ensure => present, # make sure it exists     mode => ۰۶۴۴,     content => "Only DNS servers get this file.\n",   } }

برای راهنمایی بیشتر در مورد نصب و کانفیگ Puppet میتوانید به این لینک مراجعه نمایید:
https://www.digitalocean.com/community/tutorials/how-to-install-puppet-to-manage-your-server-infrastructure

نوشته مشابه

ثبت نظر