linux怎么查看本机内存大小
288
2022-11-12
群集架构篇 ——nginx反向代理+keepalived双机热备+tomcat服务器池+后端数据库
首先准备好两台nginx,两台tomcat,一台mysql数据库,如下NginxIP地址:192.168.20.39(lvs01)192.168.20.40(lvs02)漂移地址:192.168.20.66TomcatIP地址:192.168.20.41(TM01)192.168.20.42(TM02)MysqlIP地址:192.168.20.50
=====================192.168.20.39(lvs01)=======================vi /usr/local/nginx/conf/nginx.conf
在 mime.types;default_type application/octet-stream;下,去除#
log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$''"$"$on下增加 include /usr/local/nginx/conf/conf.d/*.conf; #指向子配置文件
cd /usr/local/nginx/conf/mkdir conf.d #创建子配置文件夹cd conf.d/
vi lvs01.conf
server {listen 80;server_name lvs01 192.168.20.39; index index.html index.jsp;root /usr/local/nginx/html;access_log /usr/local/nginx/logs/tomcat.aa.com_access.log main;location / {proxy_set_header HOST $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header Client-IP $remote_addr;proxy_set_header X-For $proxy_add_x_forwarded_for;proxy_pass #将所有文件给tomcat服务器处理}}
vi pool.conf
upstream center_pool { server 192.168.20.41:8080; server 192.168.20.42:8080;ip_hash; #稳定ip会话}
启动脚本vi /etc/init.d/nginx
#!/bin/bashPROG="/usr/local/nginx/sbin/nginx"PIDF="/usr/local/nginx/logs/nginx.pid"case "$1" instart)$PROG;;stop)kill -s QUIT $(cat $PIDF);;restart)$0 stop$0 start;;reload)kill -s HUP $(cat $PIDF);;*)echo "Usage: $0 {start|stop|restart|reload}"exit 1esacexit 0
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/chmod +x /etc/init.d/nginxchkconfig --add nginx
tar xvf keepalived-1.4.2.tar.gzcd keepalived-1.4.2./configure --prefix=/make && make install cp keepalived/etc/init.d/keepalived /etc/init.d/systemctl enable keepalivedcd /etc/keepalived/vi keepalived.conf
! Configuration File for keepalivedglobal_defs {route_id NGINX-01}vrrp_script nginx {script "/opt/nginx.sh"interval 2weight -10}vrrp_instance VI_1 {state MASTER #状态是masterinterface ens33virtual_router_id 51priority 150 #优先级为150 advert_int 1authentication {auth_type PASSauth_pass 1111}track_script {nginx}virtual_ipaddress {192.168.20.66 #漂移地址ip}}
vi /opt/nginx.sh #将nginx和keepalived同时开启关闭的脚本
#!/bin/bash #Filename:nginx.shA=$(ps -ef | grep keepalived | grep -v grep | wc -l)if [ $A -gt 0 ]; then/etc/init.d/nginx startelse/etc/init.d/nginx stopfi
chmod +x /opt/nginx.shsystemctl start keepalived
---------------------------测试---------------------------------systemctl stop keepalivedkillall -9 nginx (yum install psmisc -y)netstat -anpt | grep 80
======================192.168.20.40(lvs02)===========================主配置文件和主服务器一样vi /usr/local/nginx/conf/nginx.conf
在 mime.types;default_type application/octet-stream;下
log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$''"$"$on下增加 include /usr/local/nginx/conf/conf.d/*.conf; #指向子配置文件
cd /usr/local/nginx/conf/mkdir conf.dcd conf.d/vi lvs02.conf
server {listen 80;server_name lvs01 192.168.20.40; index index.html index.jsp;root /usr/local/nginx/html;access_log /usr/local/nginx/logs/tomcat.aa.com_access.log main;location / {proxy_set_header HOST $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header Client-IP $remote_addr;proxy_set_header X-For $proxy_add_x_forwarded_for;proxy_pass pool.conf
upstream center_pool { server 192.168.20.41:8080;server 192.168.20.42:8080;ip_hash;}
vi /etc/init.d/nginx
#!/bin/bash
PROG="/usr/local/nginx/sbin/nginx"PIDF="/usr/local/nginx/logs/nginx.pid"case "$1" instart)$PROG;;stop)kill -s QUIT $(cat $PIDF);;restart)$0 stop$0 start;;reload)kill -s HUP $(cat $PIDF);;*)echo "Usage: $0 {start|stop|restart|reload}"exit 1esacexit 0
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/chmod +x /etc/init.d/nginxchkconfig --add nginxnginx -tservice nginx startnetstat -anpt | grep 80
------------------------部署keepalived------------------------yum -y install popt-devel \kernel-devel \openssl-devel
tar xvf keepalived-1.4.2.tar.gzcd keepalived-1.4.2./configure --prefix=/make && make installcp keepalived/etc/init.d/keepalived /etc/init.d/systemctl enable keepalived cd /etc/keepalived/vi keepalived.conf
! Configuration File for keepalivedglobal_defs {route_id NGINX-02}vrrp_script nginx {script "/opt/nginx.sh"interval 2weight -10}vrrp_instance VI_1 {state BACKUP #状态为backupinterface ens33virtual_router_id 51priority 100 #优先级为100,由此看出是备advert_int 1authentication {auth_type PASSauth_pass 1111}track_script {nginx}virtual_ipaddress {192.168.20.66}}
vi /opt/nginx.sh
#!/bin/bash#Filename:nginx.shA=$(ip addr | grep 192.168.20.66/32 | grep -v grep | wc -l)if [ $A -gt 0 ]; then/etc/init.d/nginx startelse/etc/init.d/nginx stopfi
chmod +x /opt/nginx.shsystemctl start keepalived
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~