محمدرضا
محمدرضا
خواندن ۴ دقیقه·۶ ماه پیش

انسیبل چیست؟|در 3 مرحله انسیبل نصب کن...


انسیبل یک ابزار open source در حوزه IT شناخته شده است که قراره تو 3 حوزه: 1. Deployment و 2. Configuration management و 3.Orchestration tool  بهمون کمک کنه.

اگر بخواهم براتون ساده تر بگم، یه تعداد سرور داریم که هرکدام یکسری کانفیگ و سرویس نصب شده دارند و حالا از انسیبل استفاده میکنیم و ابتدا میایم به همه این ماشین ها

از طریق پروتکل ssh  به همه اونها متصل میشویم و در هر لحظه هر ماشینی رو مشخص میکنیم که چه کانفیگی و رفتاری باید داشته باشد.

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

در ادامه میخوام براتون استفاده انسیبل در حوزه های مختف رو خدمتتون توضیح بدم:

  1. حوزه Deploy اپلیکشن ها:

بعد از مرحله اخر یک App که تست میباشد اون مرحله اخر دپلوی اونها میشود که  از طریق انسیبل کار جلو میرود.

به این صورت عمل میکند که انتقال نسخه جدید App را روی سرور عملیاتی انجام میدهد،لازم به ذکر است که  اگر آن نسخه جدید نیازمند به کانفیگ جدید هم باشد میتوان این فرآیند را هم به Ansible بسپاریم.

جامع ترین آموزش نصب Ansible:

دو مدل Node داریم:

1.Control Node:به ماشین یا سروری که روی آن قصد نصب انسیبل را داشته باشیم،اصطلاحا به آن میگوییم:Control Node

این ماشین یا سرور غول پیکر ما فقط بخش ControlNode یا Ansible Core آن روی توزیع های لینوکسی نصب خواهد شد و پیش نیاز نصب برای آن موجد بودن پایتون در آن سرور میباشد.

جا داره این نکته را هم خدمتتون عرض کنم که Ansible Core روی سیستم عامل های ویندوزی نصب نخواهد شد و فقط در حالت Manage node ویندوز از آن پشتیبانی خواهد کرد که در

ادامه بیشتر توضیح خواهم داد.

2.Manage Node: اصطلاحا به سرور،ماشین ،سوییچ ها و…. که قابلیت نصب پروتکل SSH روی آنها باشد و توسط انسیبل مدیریت و کانفیگ شوند، Manage Node نامیده میشود.

این Node هایی که دارای سیستم عامل لینوکسی و ویندوزی هستند هم باید و پایتون 2.7 به بالا نصب داشته باشند.

حالا بریم که مراحل اولیه نصب Control Node رو باهم یاد بگیریم:

راه اول: نصب از طریق گیت هاب انسیبل:

1.ابتدا به صفحه گیت هاب رسمی انسیبل رفته و فایل های مربوطه را دانلود میکنیم: https://github.com/ansible/ansible.git.

2.پس از آن وارد پوشه /Cd ansible

3.ودر آخر دستور نصب را میزنیم Source ./hacking/env-setup

در این مرحله ما اومدیم از طریق گیت هاب Ansible فایل های مربوطه را دانلود کردیم و با دستورات بالا تحت سورس کد نصب کردیم.

راه دوم: نصب از طریق پکیج منیجر-Package Manager

اول آموزش نصب برای خانواده RHEL/CentOs رو میبریم جلو:

درخانواده RedHat base ها، Pip و Ansible رو میتونیم از طریق مخزن Epel دریافت کنیم که اگر دستور yum repolist |grep epel رو بزنیم

و نتیجه برامون نمایش داده نشود پس ابتدا لازم است این مخزن را نصب کرده و پس از آن ادامه مراحل نصب انسیبل را جلو میبریم:

  1. دستور نصب اکسترا پکیج :Yum install epel-release
  2. پس از اینکه مخزن نصب ان با موفقیت به آخر رسید ریپو هارا آپدیت میکنیم:dnf update or yum update
  3. ودر آخر Anible را نصب میکنیم: Yum or dnf install ansible

خب حالا بریم سراغ توزیع Debian/Ubuntu:

تو این قسمت هم مشابه بالا از طریق پکیج منیجر نصب میکنیم:

  1. در ریپو های پیش فرض این توزیع لینوکسی،ریپ.ی مربوط به انسیبل وجود ندارد و باید آن را نصب کنیم:apt-add-repository -y ppa:ansible/ansible
  2. apt update
  3. و دستور نصب انسیبل را میزنیم: apt install -y ansible

نکته:اگر خطایی مشابه با “sudo:add-apt-repository: command not found” دریافت کردید،احتمال داره که python را نداشتید یا از دست داده اید

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

  • apt install python-software-properties
راه سوم: نصب از طریق Python

تنها وابستگی Ansible به زبان برنامه نویسی Python هست و وقتی که ما پایتون رو نصب کردیم،ساده ترین راه برای راه اندازی انسیبل استفاده از

Pip میباشد. کافیه چک کنیم که Pip نصب هست که بادستور زیر بررسی میکنیم:

  • sudo easy_install pip

پس از آن انسیبل را نصب میکنیم:

  • pip install ansible

جمع بندی:

در این مقاله قصد داشتم به صورت جامع و از طریق 3 راه نصب انسیبل را آموزش بدهم و این قدم صفر برای ورود به آموزش این ابزار پرکاربرد میباشد

قصد دارم در آموزش های بعدی پله به پله از ابتدا آموزش بدهم و به قسمت های جذابی خواهیم رسید.

امیداورم مورد قبولتون واقع شده باشه و خوشحال میشوم که نظرات خودتون رو ثبت کنید.

ودر آخر حمایت یادتون نره رفقا…

مخلص.

نصب انسیبلansible irانسیبل چیستانسیبل اینونتوریگیت هاب
علاقه مند به حوزه open source،اتومیشن،امنیت و... موسس آکادمی انسیبل به فارسی:ansible.ir
شاید از این پست‌ها خوشتان بیاید