سرور مجازی آراز سرور مجازی آراز
DevOps

5 مورد از برترین ابزار های انسیبل ؛ قسمت دوم آموزش انسیبل

در این مقاله از سری مقالات آموزش انسیبل، قصد داریم چند مورد از مهم‌ترین ابزار های انسیبل ( ansible ) را به شما معرفی کنیم.در مقاله‌ی قبلی با عنوان آموزش انسیبل تلاش کردیم تا مفهوم انسیبل را به تفصیل توضیح داده و در ادامه، درباره‌ی مخزن انسیبل که در آن سرور مجازی هدف و مشخصات آنان را در این مخازن تعریف می‌کنیم، گفت‌وگو کردیم.

حال در این مقاله، قصد داریم تا 5 مورد از برترین و پر استفاده‌ترین ماژول‌ها یا ابزار های انسیبل را به شما معرفی کنیم؛ با ما همراه باشید. البته در نظر داشته باشید که ابزار های انسیبل موردنظر را تنها می‌خواهیم به صورت جزئی بررسی کنیم و آنها به طور کامل معرفی نخواهند شد. در واقع ما تنها از نوع ساده‌ی استفاده از این ابزار های انسیبل برای توضیح استفاده خواهیم کرد.

سرور مجازی آراز سرور مجازی آراز
اگر شما نیز در کسب و کارتان نیاز به یک زیرساخت ابری قابل اطمینان دارید، ما به شما ابر آراز را معرفی می کنیم. با استفاده از سرور های ابری آراز می توانید به هر میزان از منابع که نیاز دارید، به صورت مقیاس‌پذیر دسترسی پیدا کنید و با رشد و گسترش تجارت‌تان، این منابع را افزایش دهید و خیالتان از بابت هزینه راحت باشد؛ چراکه محاسبه هزینه به صورت پرداخت به میزان کارکرد است. همچنین در مواقعی که به کمک فنی نیاز داشتید، از تیم تخصصی فنی ابر آراز به صورت رایگان کمک بگیرید. در این صورت دیگر نیاز به کنترل همه ی جزییات نخواهید داشت و کا‌رهایتان به صورت اتوماتیک و به راحتی انجام می شوند.

ابزار های انسیبل ؛ ‌file

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

به طور مثال این ابزار به روش رو به رو نوشته و استفاده می‌شود:

name: Change file ownership, group and permissions _

:ansible.builtin.file

path: /etc/foo.conf

owner: foo

group: foo

'mode: '0644

چهار آرگومانت path، owner، group و mode ، آرگومانت‌های اصلی این ابزار می‌باشند.

ابزار های انسیبل ؛ ‌file

آرگومانت اول path

این قسمت وظیفه آدرس دهی فایل مقصد را بر عهده دارد.

آرگومانت دوم owner

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

آرگومانت سوم group

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

آرگومانت چهارم mode

در این قسمت حالت اجرایی فایل با استفاده از کد‌های مختصری که کاملا شبیه عددی می‌باشد که در دستور chmod استفاده می‌کنیم قرار داده می‌شود.

ابزار های انسیبل ؛ include

در این ابزار می‌توانیم یک فایل که یک تسک یا پلی در آن قرار دارد را استفاده کنیم. به طور مثال در نظر داشته باشید که داخل یک پلی‌بوک می‌خواهید در یک سری از سرور‌های تعریف شده در مخزن یک پلی دیگر که در فایل دیگری گذاشته اید اجرا شود؛ در همچین موقعی می‌توانیم از ابزار include استفاده کنیم.

نحوه نوشتار عادی این ابزار در داخل یک پلی بوک به صورت زیر می‌باشد:

name: Include a play after another play _

include: otherplays.yaml

در این قسمت از پلی بوک فایلی که بعد از include معرفی شده در سرور(های) هدف اجرا خواهد شد.

ابزار های انسیبل ؛ template

این ابزار یک تغییر دهنده و ایجاد کننده فایل است که بر اساس استاندارد زبان jinja2 کار می‌کند.

شما می‌توانید با استفاده از این ابزار یک فایل j2 در هاست خود ساخته و با توجه به ساختار نوشتار خودتان این فایل را با یک فایل در داخل سرور مجازی هدف تغییر دهید. در نظر داشته باشید که این روش برای تنظیم فایل‌های متفاوت در تعداد زیادی سرور استفاده می‌شود.

ابزار template به روش زیر استفاده می‌شود:

name: Template a file to /etc/file.conf -

:ansible.builtin.template

src: /mytemplates/foo.j2

 dest: /etc/file.conf

owner: bin

group: wheel

'mode: '0644

آرگومانت src

این قسمت فایل مبدا که در داخل دستگاه ارائه دهنده انسیبل ( ansible )می‌باشد را نشان می‌دهد و آدرس این فایل j2 را باید در این قسمت بنویسیم.

آرگومانت dest

فایلی که در جلو این آرگومانت قرار می‌گیرد فایل می‌باشد که در سرور مجازی هدف تغییر می‌کند.

آرگومانت owner

این قسمت سازنده فایل و یوزری که در سیستم عامل اجازه دسترسی به این فایل دارد رو نمایانگر می‌کند.

آرگومانت group

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

آرگومانت mode

در این قسمت، حالت اجرایی فایل با استفاده از کد‌های مختصری که کاملا شبیه عددی می‌باشد که در دستور chmod استفاده می‌کنیم قرار داده می‌شود.

ابزار های انسیبل ؛ command

این ابزار وظیفه دارد که دستوری که به آن می‌دهید را در سرور هدف اجرا کند.

تنها ملاحظاتی که درباره این دستور وجود دارد این است که در فضای shell اجرا نمی‌شود؛ در نتیجه تمامی متغیرها از قبیل $HOSTNAME در این دستور کارها نبوده و همچنین علائمی مانند | در این دستور به دلیل این که در محیط غیر قابل اجرا می‌باشد.

این ابزار ساخته نشده که دستورات در سرور با آن اجرا شوند. دلیل ساخت این ابزار این است که اجرای دستورات در شرایط خاص مورد بررسی قرار بگیرد.

نحوه استفاده از این دستور در داخل پلی بوک به روش رو به رو می‌باشد:

name: Run command if /path/to/database does not exist (with 'args' keyword) -

ansible.builtin.command: /usr/bin/make_database.sh db_user db_name

:args

creates: /path/to/database

در متن بالا جلوی اسم ابزار فایل اجرایی‌ای که باید در آن هنگام اجرا شود نوشته شده و همچنین دو آرگومانت db_user و db_name به این فایل فرستاده شده اند.

این دستور با این دو آرگومانت در صورتی ساخته می‌شود که فایل /path/to/database در سرور وجود نداشته باشد.

ابزار های انسیبل ؛ service

در هنگام استفاده از این ابراز انسیبل قرار نیست کار عجیبی انجام گیرد؛ صرفا قرار است که یک سرویس در سیستم عامل هدف در شرایطی قرار گیرد که ما از آن انتظار داریم.

به طور مثال فکر کنید نیاز دارید که سرویس httpd در قسمتی از کار حتما روشن باشد. برای این کار اصولی‌ترین اتفاق آن است که از این سرویس استفاده کنید. دلیل این موضوع آن است که در هنگام اجرای دستور توسط ابزار command یا shell امکان خطا در اجرا وجود دارد؛ ولی وقتی از این ابزار استفاده می‌کنیم انسیبل ( ansible ) حتما این کار را انجام خواهد داد و در صورت عدم موفقیت حتما خارج می‌شود.

برای انجام این اتفاق می‌توانیم درخواست خود را در فایل پلی بود اینگونه ثبت کنیم:

name: Start service httpd, if not started -

:ansible.builtin.service

name: httpd

state: started

سخن پایانی

این مقاله، قسمت دوم از سری آموزش‌های کاربردی انسیبل ( ansible ) است که قصد داریم به صورت هفتگی آن را پیش ببریم. امیدواریم که معرفی ابزار های انسیبل برای شما کاربردی بوده باشد. اگر انتقاد یا پیشنهادی درباره این سری مقالات دارید، می‌توانید با تیم آراز در میان بگذارید تا به آنان پاسخ دهیم. در مقاله‌ی بعدی، ما در مورد پلی بوک انسیبل صحبت کردیم. پیشنهاد می‌کنیم، فرصت مطالعه‌ی این مقاله را از دست ندهید.

اگر تمایل دارید که از دیگر اخبار حوزه تکنولوژی و فناوری نیز آگاهی یابید، به پیج اینستاگرام ابر آراز مراجعه نمایید.

سرور مجازی آراز سرور مجازی آراز

ادمین

نویسنده ابرآراز متخصص فناوری اطلاعات و علاقه‌مند به رایانش ابری است که تلاش می‌کند با ارائه مقالات آموزشی و کاربردی، مفاهیم پیچیده فناوری را به زبانی ساده و قابل فهم برای همه کاربران ارائه دهد.

نوشته های مشابه

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

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

دکمه بازگشت به بالا