نرم افزار گنو/لینوکس

آشنایی با Ansible

نوشته شده توسط اروند طباطبایی

این روز ها کار های مربوط به DevOPS وجه مهمی از زندگی سیس‌ادمین ها شده است. تقاضای بالای «اتوماتیک بودن تا حد ممکن» در کنار انعطاف پذیری و قابلیت مقیاس پذیری بسیار مهم تلقی می‌شود و Ansible یکی از نرم‌افزار هایی است که در این مورد بسیار راه گشا خواهد بود. در این پست به طور مختصر با انسیبل آشنایی پیدا می کنید و روش نصب آن را خواهید آموخت.

Ansible نرم‌افزار متن بازی است که وظیفه ی مدیریت تنظیمات را بر عهده دارد، از نرم‌افزار های مشابه و رقیب آن می‌توان به Chef و Puppet اشاره کرد.این برنامه بسیار سبک بوده و نیازی به نرم‌افزار اضافی روی ماشین‌هایی که قرار است مدیریت کند ندارد و کار هایش را از طریق SSH انجام می دهد. انسیبل از بر پایه ی پایتون ساخته شده و از فرمت YAML استفاده می‌کند که این خود باعث می‌شود که یادگیری انسیبل چندان سخت نباشد.

وظایف انسیبل شامل مدیریت تنظیمات سیستم عامل و نرم‌افزار ها، تنظیم و هماهنگی PaaS در VMWare یا فضاهای ابری، توسعه ی نرم‌افزار و … می شود. تنظیم اشتباه انسیبل می‌تواند مشکلات امنیتی بسیاری به وجود بیاورد و مقیاس پذیری را هم کاهش دهد، پس در استفاده از آن دقت لازم را داشته باشید.

نصب انسیبل در اوبونتو ۱۶.۰۴

مخزن مربوط به انسیبل را اضافه کرده، دستور آپدیت apt را اجرا و انسیبل را نصب کنید:

$ sudo apt-add-repository ppa:ansible/ansible

$ sudo apt-get update

$ sudo apt-get install ansible

نکته: نصب برای نسخه های ۱۵٫۰۴ و ۱۴٫۰۴ مشابه ۱۶٫۰۴ صورت می گیرد.

نصب انسیبل روی CentOS 7

در سنت او اس ابتدا باید EPEL را نصب کرده و سپس اقدام به نصب پکیج ansible کنید.

$ sudo yum -y install epel-release

$ sudo yum -y install ansible

نکته: در CentOS 6 هم می‌توانید از همین روش استفاده کنید.

تنظیم کاربر انسیبل

همانطور که قبلاً هم گفتیم انسیبل از پروتکل SSH برای اتصال به هاست راه دور استفاده می کند، ایجاد یک کاربر انسیبل به انسیبل اجازه می‌دهد که با یک کاربر(با محدودیت و دسترسی محدود) کار کند و برای برخی از کار های مهم از sudo استفاده کند. با دستورات زیر روی هاستی که انسیبل نصب شده یک کاربر برای انسیبل ایجاد کنید:

$ sudo groupadd -g 5001 ansible

$ sudo useradd -u 5001 -g 5001 -c "Ansible User" -m ansible

حال باید کلید های مربوط به اتصال ssh را بسازیم. برای راحتی کار شاید بهتر باشد که برای کلید ها پسورد نگذاریم.

$ sudo su - ansible

$ ssh-keygen -t rsa -b 4096

 

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

اروند طباطبایی

بنیانگذار دیجی اسپارک: اولین مرجع تخصصی امبدد سیستم به زبان فارسی / کارشناس سئو و تولید محتوا

هرچه می آموزم میبینم که خیلی کم آموختم. علاقه به رباتیک و تکنولوژی دارم. امیدوارم بتونم دانشی را که آموخته‌ام، به روش‌های مختلفی به کاربران علاقمند منتقل کنم.

تبادل نظر و رفع عیب با ثبت دیدگاه

۲ دیدگاه