نحوه پیکربندی وب سرور آپاچی در لینوکس با استفاده از Ansible

در این پست وبلاگ، یک وب سرور آپاچی را روی یک ماشین لینوکس (ماشین مجازی Azure) با استفاده از Ansible پیکربندی می کنیم. وب سرور آپاچی یک نرم افزار رایگان و متن باز است که به کاربران اجازه می دهد وب سایت های خود را در اینترنت مستقر کنند.
پیش نیازها
- آشنایی با مفهوم Infrastructure-as-Code (IaC) مفید است، اما ضروری نیست.
- یک ماشین مجازی لینوکس: اگرچه این عمل بر روی یک ماشین مجازی Azure انجام می شود، مراحل مشابهی را می توان در هر توزیع لینوکس انجام داد. برای ایجاد خودکار ماشین های مجازی در Azure می توانید این پیوند را دنبال کنید.
بنابراین، بیایید شیرجه بزنیم.
Ansible چیست و چرا از آن استفاده کنیم؟
Ansible یک ابزار اتوماسیون متن باز است که می تواند برای خودکارسازی پیکربندی سرورها و سیستم ها استفاده شود. این یک برنامه نرمافزار اتوماسیون فناوری اطلاعات خط فرمان است که تأمین ابر، مدیریت پیکربندی، استقرار برنامهها و بسیاری دیگر از نیازهای فناوری اطلاعات را خودکار میکند. اطلاعات بیشتر در مورد Ansible را اینجا بخوانید: با Ansible شروع کنید.
بیایید از طریق SSH به ماشین مجازی خود متصل شویم. اگر قبلاً vm ایجاد نکردهاید، میتوانید برای ایجاد خودکار ماشینهای مجازی در Microsoft Azure با Terraform، این پیوند را دنبال کنید. به ماشین مجازی متصل شوید
ssh linuxuser@ip_address
یک دایرکتوری/پوشه برای این پروژه Ansible بسازید و دایرکتوری را به این پوشه تغییر دهید.
mkdir ansible
cd ansible
Ansible را نصب کنید
یک فایل برای نصب Ansible بسازید. ما این فایل را فراخوانی می کنیم installations.sh
.
nano installation.sh
کد زیر را در فایل کپی کنید installation.sh
توجه داشته باشید که پایتون برای انجام عملیات Ansible مورد نیاز است، بنابراین باید آن را نیز نصب کنید.
#!/bin/bash
sudo apt update
sudo apt install python3-pip
pip install boto3 botocore
pip install boto
sudo apt install ansible
دستور را برای تغییر مجوز فایل و قابل اجرا کردن آن اجرا کنید.
chmod +x ./installation.sh
دستور نصب Ansible و الزامات بالا را اجرا کنید
./installation.sh
ما می توانیم با اجرای دستور زیر تست کنیم که آیا Ansible به درستی پیکربندی شده است. این باید نسخه نصب شده Ansible را چاپ کند.
ansible --version
یک کتاب بازی Ansible ایجاد کنید
Ansible playbook یک فایل YAML با فهرستی از دستورالعملها است که در مقابل میزبانها اجرا میشود. این یک واحد سازمان یافته و سیستماتیک از اسکریپت ها است که کار را برای پیکربندی سرور که توسط ابزار اتوماسیون Ansible اجرا می شود، تعریف می کند.
یک فایل به نام ایجاد کنید ansible-playbook.yml
و کد زیر را قرار دهید. در این کتاب بازی، ما دو وظیفه را مشخص می کنیم (یعنی installing apache2
و starting apache2
) روی لوکال هاست انجام شود.
---
- name: installing and starting apache2
hosts: localhost
become: yes
tasks:
- name: installing apache2
apt:
name: apache2
state: present
- name: stop nginx
service:
name: apache2
state: started
enabled: yes
توجه داشته باشید که ما در حال اجرای playbook در مقابل هستیم localhost
. این به این دلیل است که ما با موفقیت وارد سرور میزبان شده ایم. با این حال، امکان اجرای یک کتاب بازی در برابر چندین میزبان وجود دارد. این کار با استفاده از یک فایل موجودی انجام می شود. بیشتر بخوانید: موجودی Ansible.
پیکربندی Ansible Playbook را آزمایش و اجرا کنید
برای تست پیکربندی و بررسی خطاها، دستور زیر را اجرا کنید. با این کار صحت کتاب بازی بررسی می شود.
ansible-playbook ansible-playbook.yml --ask-become-pass --check
پیکربندی را اجرا کنید.
برای تهیه و راه اندازی وب سرور Apache2، Playbook Ansible زیر را اجرا کنید.
ansible-playbook ansible-playbook.yml --ask-become-pass
پس از اتمام اجرای کتاب پخش، آپاچی در ماشین مجازی پیکربندی می شود. میتوانید با باز کردن یک مرورگر وب و پیمایش به آدرس IP عمومی ماشین مجازی، پیکربندی را آزمایش کنید. شما باید صفحه اصلی وب سرور آپاچی را ببینید.
نتیجه
با تشکر برای خواندن. اگر این را مفید یافتید به من اطلاع دهید. خوش آمدید من را در لینکدین دنبال کنید و توییتر @Paschal_ik.
قبلی:
در ادامه:
LAMP STACK را روی یک ماشین مجازی Azure نصب کنید
SSL را در یک دامنه سفارشی در ماشین مجازی لاجوردی فعال کنید
منابع:
نصب Ansible – Ansible Documentation
نصب بسته ها – راهنمای کاربر بسته بندی پایتون