bash scripts install webserver wordpress+loadbalance web on Debian 10
scripts ที่เขียนขึ้น จะใช้ wordpress เป็น web application ใช้ mariadb เป็น Databases และใช้ nginx เป็น webserver และ loadbalance
เครื่องที่ต้องเตรียม
- webserver 2 เครื่อง
- databases_master 1 เครื่อง
- databases_slave 1 เครื่อง
- loadbalance 1 เครื่อง
**** เครื่อง master ต้องสามารถ ssh ไปเครื่อง slave ได้เนื่องจากจะมีการใช้ scp ให้ทดสอบ ssh จาก master ก่อนที่จะรัน script ****
**** run script หน้า home ของ root เท่านั้น ***
แก้ตัวแปรต่อไปนี้ให้เป็นของตัวเอง
เครื่อง databases_master
interface = network interface (local ip) เช่น eth0 , ens33
ip_slave = ip databases slave
rep_user = user replication
rep_pass = password replication
ip_wp01 = ip wordpress เครื่อง 1
ip_wp02 = ip wordpress เครื่อง 2
db_name = databases name for wordpress
db_user = user wordpress
db_pass = password wordpress
เครื่อง databases_slave
interface = network interface (local ip) เช่น eth0 , ens33
ip_master = ip database master
rep_user = user replication
rep_pass = password replication
เครื่อง wordpress ทั้ง 2 เครื่อง
adduser = user สำหรับ wordpress สิทธิ์ในการจัดการไฟล์
passworduser = password สำหรับ wordpress สิทธิ์ในการจัดการไฟล์
domain = ชื่อ domain ของเว็บ
path_web = ที่อยู่ไฟล์ wordpress
port = ตั้งเป็น 443
php_ver = เวอร์ชั่น php
filephp_name = ชื่อไฟล์ config ของ php.conf
php_name = ชื่อ php สำหรับ wordpress
listen = '/var/run/php_name.sock'
path_unzip = path แตกไฟล์ wordpress ที่โหลดมา
เครื่อง loadbalance
*** เนื่องจากใน script มีการใช้ certbot เครื่อง loadbalance จำเป็นต้องมี public ip ไม่งั้น certbot จะไม่สามารถติดตั้งได้***
email= ใส่ email เนื่องจากใช้ certbot บังคับให้ใส่
domain = ชื่อ domain ของเว็บ
port = ตั้งเป็น 80
server1 = ip wordpress server 01:443
server2 = ip wordpress server 02:443
**ถ้าจะใช้เป็น 80 http ให้เอา 443 ออก แล้วก้เปลี่ยน port เครื่อง web กับ loadbalance ให้เป็น 80
Script ของแต่ละเครื่อง ให้เอาไปรันบนแต่ละเครื่องของตัวเอง
เครื่อง databases master
https://drive.google.com/file/d/1GLDs5kU4WHvI5c6P3lNUInp6nQ2dw28C/view?usp=sharing
เครื่อง database slave
https://drive.google.com/file/d/1Kxv7XOQ93WxTz_AK_W7jACGA8Y_SNubg/view?usp=sharing
เครื่อง wordpress 2 ทั้งเครื่อง
https://drive.google.com/file/d/1PDBMM8HKJwJDm7YDSVUCeMOGyKDV8g0r/view?usp=sharing
เครื่อง loadbalance
https://drive.google.com/file/d/1GxBW-AXy4E492Q7HMLNZbavHHt4cOnAo/view?usp=sharing
ตัว loadbalance เมื่อคอนฟิก wordpress ผ่านหน้า url แล้ว ให้ปิด ip_hash; แล้วก็ปิด ip ที่เข้าตอนแรก โดยใช้ # เพื่อคอนฟิก wordpress อีกเครื่อง เมื่อทำเสร็จแล้วให้เปิด IP ทั้งสองเครื่อง ปิด ip_hash; เอาไว้เหมือนเดิม