برنامه نویسی

نحوه پیکربندی وب سرور آپاچی در لینوکس با استفاده از 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
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

استقرار Ansible Playbook

پیکربندی را اجرا کنید.

برای تهیه و راه اندازی وب سرور Apache2، Playbook Ansible زیر را اجرا کنید.

ansible-playbook ansible-playbook.yml --ask-become-pass
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

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

وب سرور آپاچی پیکربندی شده است

نتیجه

با تشکر برای خواندن. اگر این را مفید یافتید به من اطلاع دهید. خوش آمدید من را در لینکدین دنبال کنید و توییتر @Paschal_ik.

قبلی:

در ادامه:
LAMP STACK را روی یک ماشین مجازی Azure نصب کنید
SSL را در یک دامنه سفارشی در ماشین مجازی لاجوردی فعال کنید

منابع:

نصب Ansible – Ansible Documentation

نصب بسته ها – راهنمای کاربر بسته بندی پایتون

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

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

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

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