تنظیمات Ansible- کار با ماژول ها

توی بخش قبل تنظیمات ابتدایی انجام شد، ولی به یه جایی رسیدیم که کامند های خیلی پایه ای و گزارشی رو میتونستیم اجرا کنیم.

برخی از کامند ها هست که مجوز روت رو برای اجرا شدن لازم داره، یه راهش رو توی مرحله قبل توضیح دادیم ولی یه راه دیگه اش اینکه به اون یوزری که قراره این کامند رو اجرا کنه مجوز بدیم.

برای این کار :

visudo

به یوزر مورد نظر مجوزهای لازم رو میدیم

باید روی تمام کلاینت ها نیز این کار رو انجام بدیم، سپس کامند را با مجوز root اجرا می کنیم برای اینکار کامند رو به صورت زیر اجرا می کنیم

ansible -m command -a "lvdisplay" linuxgroup --become -K

بعد از این مرحله از ما پسورد برای یوزر ansuser رو میخواد و بعد کامند اجرا میشه

نکته اینکه هر وقت خواستیم یه Inventory دیگه انتخاب کنیم می توانیم از اپشن -i استفاده کنیم و بعد از مسیر فایل جدید inventory را به دستور اضافه کنیم.

اگر خواستیم کل سرورها رو به یک باره ping کنیم از ماژول Ping استفاده می کنیم

ansible -m ping linuxgroup

برای کپی کردن از ماژول copy استفده می کنیم

ansible -m copy -a "src=/etc/hosts dest=/tmp/hosts" linuxgroup

در شکل زیر نشون داده شده که changed:true هست یعنی یه تغییری ایجاد شده اگر همین کامند رو دوباره بزنیم changed:false میشه چون قبلا این فایل کپی شده

برای تعیین دسترسی و صاحب فایل از ماژول file استفاده میکنیم و باید حتما از –become استفاده کنیم چون مجوز بالاتری برای تغییر permission لازم داریم، در اینجا به صورت تستی یوزر Unixtest رو قرار دادم

 ansible -m copy -a "src=/etc/hosts dest=/milad/hostsmode=888 owner=unixtest" --become -K linuxgroup

برای پاک کردن یک فایل :

ansible -m file -a "dest=/tmp/hosts state=absent"  linuxgroup --become -K

برای اینکه هر بار این کامند ها را با –become نزنیم در فایل تنظیمات انسیبل تغییرات زیر رو میدیم، مسیر فایل به این صورت است

/etc/ansible/ansible.cfg

با ماژول کپی میتونیم یک مطلب رو داخل یک فایل کپی کنیم

نکته: با قرار دادن \n در انتهای فایل می توان اخر نوشته ها یک enter زد.

برخی کامند ها مثل set با ماژول command اجرا نمی شوند و باید با ماژول shell اجرا شوند

اگر خواستیم از ماژول های مختلفی که میتونیم داخل playbook استفاده کنیم با خبر شویم از سایت docs.ansible.com استفاده میکنیم

اما اگر نحوه استفاده از یه ماژول رو خواستیم بدونیم میتونیم دستور ansible-doc رو استفاده کنیم

اگر خواستیم عیب یابی یا troubleshooting کنیم میتونیم اخر هر کامند اجرایی -vvv بزنیم با اینکار برای هر مرحله لاگ های بیشتری در کنسول در اختیار ما قرار می دهد


دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *