TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THỦ ĐỨC
KHOA CÔNG NGHỆ THÔNG TIN
ĐỒ ÁN
Quản trị hệ thống Linux 3
Đề Tài:
Proxy Server
Cấu hình HAProxy (Load balancing)
Nhóm CLB người lớn tuổi:
Nguyễn Văn Xuân
Tiêu Khắc Tuyên
Trần Nguyễn Nghi Huỳnh
Nguyễn Thị Bích Trâm
Lưu Kiến Minh
GVHD: Lê Thanh Vũ
TP.Hồ Chí Minh, tháng 4 năm 2021
QTHT Linux 3
I. Mơ hình
• Cấu hình dns cho proxy Load balancing có tên miền linux3.vn
• Cấu hình cấu hình Web1 và Web2 chạy trang Index.html với nội dung tùy ý
• Cấu hình proxy Load balancing cho web 1 và web 2
II. Cấu hình dns cho proxy Load balancing có domain linux3.vn
Bước 1: Cài gói bind cho máy DNS server bằng lệnh:
# yum install bind*
Bước 2: Cấu hình dich vụ DNS
#vi /etc/named.conf
• Chỉnh lại một số thơng tin ở các dòng sau trong mục option:
+ Listen-on-port 53 { 127.0.0.1;192.168.2.1 }; thêm vào địa chỉ IP của DNS server
+ Listen-on-v6 port 53 { none }; vì khơng sử dụng Ipv6 nên để là none
+ allow-query { localhost;192.168.2.0/24; }; để các host các thể gửi truy vấn đến
DNS server qua đường mạng 192.168.2.0/24.
CLB người cao tuổi
Page 2
QTHT Linux 3
• Sửa lại các dịng :
#58 thêm tên miền vào ở đây dùng là zone “ linux3.vn ”
#62 tạo file phân giải thuận
#68 cấu hình zone phân giải ngược zone” 2.168.192. in-addr.arpa ”
#72 tạo file phân giải ngược
• Lưu lại file cấu hình.
• Liệt kê các file trong thư mục named:
#cd /var/named
#ls -l
• Copy file named.localhost và đổi tên thành tên đường dẫn phân giải thuận
fw.thuan
#cp named.localhost fw.thuan
CLB người cao tuổi
Page 3
QTHT Linux 3
#vi fw.thuan
#cp fw.thuan rev.nghich
• Kiểm tra cấu hình :
Bước 3: Phân quyền cho các file
chmod 755 /etc/named.conf
CLB người cao tuổi
Page 4
QTHT Linux 3
chmod 755 /var/named/fw.thuan
chmod 755 /var/named/rev.nghich
chown named:named /var/named/fw.thuan
chown named:named /var/named/rev.nghich
Bước 4: Khởi động dịch vụ DNS
chkconfig --level 123456 named on
systemctl enable named
systemctl start named
firewall-cmd --permanent --add-port=53/tcp
firewall-cmd --permanent --add-port=53/udp
firewall-cmd --reload
Bước 5: Thêm DNS server vào file cấu hình card mạng
Bước 6: Thêm địa chỉ IP cho nameserver vào file
#vi /etc/resolv.conf
CLB người cao tuổi
Page 5
QTHT Linux 3
Bước 7: Lưu lại file cấu hình và khởi động lại dịch vụ
#systemctl restart network
Bước 8 :Chạy dòng lệnh sau:
#dig linux3.vn
III.
Cấu hình cấu hình Web1 và Web2 chạy trang Index.html với nội dung
tùy ý
Cấu hình web1
Bước 1: cài đặt web dùng lệnh:
#yum install httpd –y
Bước 3: Khởi động dịch vụ dùng câu lệnh như sau:
CLB người cao tuổi
Page 6
QTHT Linux 3
# systemctl start httpd.service
Bước 4: Kiểm tra dịch vụ đã bật chưa :
# systemctl status httpd.service
Bước 5: Cấu hình nội dung file index.html
#vi /var/www/html/index.html
Cấu hình Web 2 tương tự như Web 1
• Cấu hình proxy Load balancing cho web 1 và web 2
• Cấu hình load balancing:
Bước 1 : Tắt selinux dùng lệnh :
#vi /etc/selinux/config
• Sửa: SELINUX = disabled
Bước 2 : Cài đặt dịch vụ load balancing dùng câu lệnh
#yum install haproxy –y
CLB người cao tuổi
Page 7
QTHT Linux 3
Bước 3: Mở port firewall của OS cho haproxy
# firewall-cmd --permanent --add-port=80/tcp
# firewall-cmd --permanent --add-port=8080/tcp
# firewall-cmd –reload
• Đổi port hoạt động của Apache qua web1 và web 2 chạy lệnh:
# sed -i 's/Listen 80/Listen 8080/' /etc/httpd/conf/httpd.conf
Bước 4: Sau khi cài gói haproxy vào đường dẫn /etc/haproxy xóa th ư mục
haproxy.cfg mặc định đi :
#rm /etc/haproxy/haproxy.cfg
Bước 5 : Tạo lại một file haproxy.cfg khác trong đường dẫn /etc/haproxy/ và cấu hình
file haproxy.cfg đó :
#touch /etc/haproxy/haproxy.cfg
CLB người cao tuổi
Page 8
QTHT Linux 3
Bước 6 : Sau tạo lại một file haproxy.cfg khác trong đường dẫn /etc/haproxy/ ta vào cấu
hình file haproxy.cfg đó :
#vi /etc/haproxy/haproxy.cfg
# create new
global
# for logging section
log
127.0.0.1 local2 info
chroot
/var/lib/haproxy
pidfile
/var/run/haproxy.pid
# max per-process number of connections
maxconn
256
# process' user and group
user
group
haproxy
haproxy
# makes the process fork into background
daemon
defaults
# running mode
mode
http
# use global settings
log
global
CLB người cao tuổi
Page 9
QTHT Linux 3
# get HTTP request log
option
httplog
# timeout if backends do not reply
timeout connect 10s
# timeout on client side
timeout client
30s
# timeout on server side
timeout server
30s
# define frontend ( set any name for "http-in" section )
frontend http-in
# listen 80
bind *:80
# set default backend
default_backend backend_servers
# send X-Forwarded-For header
option
forwardfor
# define backend
backend backend_servers
# balance with roundrobin
balance
roundrobin
CLB người cao tuổi
Page 10
QTHT Linux 3
# define backend servers
server
web1 192.168.2.100:80 check
server
web2 192.168.2.200:80 check
• Lưu lại File cấu hình
Bước 7: Khởi động lại haproxy
#systemctl enable haproxy
#systemctl start haproxy
Bước 8: Cấu hình quyền admin cho haproxy:
#vi /etc/haproxy/haproxy.cfg
CLB người cao tuổi
Page 11
QTHT Linux 3
• Cấu hình haproxy có quyền admin:tdc@123
frontend http-in
bind *:8080
# enable statistics reports
stats enable
# auth info for statistics site
stats auth admin:adminpassword
# hide version of HAProxy
stats hide-version
# display HAProxy hostname
stats show-node
# refresh time
stats refresh 60s
# statistics reports' URI
stats uri /haproxy?stats
• Chú ý:
Ta có đổi thay đổi adminpassword = tdc@123
Hostname được đổi tên theo máy chủ Haproxy
• Cách đổi tên:
#hostnamect set-hostname linux3.vn
Bước 9: Cách kiểm tra qua win7 gõ: 192.168.2.1:8080/haproxy?stats
CLB người cao tuổi
Page 12
QTHT Linux 3
Đăng nhập:
username:admin
password: tdc@123
• Khi 2 web đăng chạy:
• Khi tắt web 1:
CLB người cao tuổi
Page 13
QTHT Linux 3
• Test hoạt động load balancing với địa chỉ ip 192.168.2.1
• Ta nhấn F5:
• Test hoạt động load balancing với tên miền linux3.vn
CLB người cao tuổi
Page 14
QTHT Linux 3
-------Hết------
CLB người cao tuổi
Page 15