日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java双机调度_Haproxy+keepalive-群集架构实验

發布時間:2024/9/30 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java双机调度_Haproxy+keepalive-群集架构实验 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

實驗案例拓補圖:

要求:如圖所示,有兩臺haproxy調度器,但是所有的流量全部由主調度器獲取,由主調度器可以正常調度web節點。

環境:

調度器(雙機熱備)

IP地址:192.168.100.11(主)+ 漂移地址:virtual-ip:192.168.100.200 +Haproxy服務器

IP地址:192.168.100.12(備)+漂移地址:virtual-ip:192.168.100.200 +Haproxy服務器

Web服務器兩臺:

IP地址:192.168.100.2(Web1)

IP地址:192.168.100.3(Web2)

NFS共享服務器:

IP地址:192.168.100.4

客戶端一臺:用于測試驗證

IP地址:192.168.100.5(client)

NFS共享服務器: 192.168.100.4

mkdir /web1

mkdir /web2

echo "

nginx1

" > /web1/index.html '設置共享目錄'

echo "

nginx2

" > /web2/index.html '設置共享目錄'

vi /etx/exports

/web1 192.168.100.2/32 (ro)

/web2 192.168.100.3/32 (ro)

systemctl restart nfs

systemctl restart rpcbind

Nginx服務器1:192.168.100.2

tar xzvf nginx-1.13.7.tar.gz '先解壓'

yum -y install gcc gcc-c++ make pcre-devel zlib-devel

useradd -M -s /sbin/nologin nginx

mount 192.168.100.4:/web1 /var/www/html/ 'nfs共享目錄掛載到/var/www/html'

nginx '開啟nginx服務'

curl http://localhost

nginx1

'效果'

//LVS+Keepalived高可用群集

vi web1.sh

#!/bin/bash

# lvs web1

ifconfig lo:0 192.168.100.200 broadcast 192.168.100.200 netmask 255.255.255.255 up '添加虛擬地址的虛接口'

route add -host 192.168.100.200 dev lo:0 '給lo:0添加路由'

echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore

echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore

echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce

echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce

sysctl -p &> /dev/null

sh web1.sh

ifconfig

lo:0: flags=73 mtu 65536 '添加的虛擬地址'

inet 192.168.100.200 netmask 255.255.255.255

loop txqueuelen 1 (Local Loopback)

route -n

192.168.100.200 0.0.0.0 255.255.255.255 UH 0 0 0 lo

Nginx服務器2:192.168.100.3

tar xzvf nginx-1.13.7.tar.gz '先解壓'

yum -y install gcc gcc-c++ make pcre-devel zlib-devel

useradd -M -s /sbin/nologin nginx

mount 192.168.100.4:/web2 /var/www/html/ 'nfs共享目錄掛載到/var/www/html'

nginx '開啟nginx服務'

curl http://localhost

nginx2

'效果'

//LVS+Keepalived高可用群集

vi web2.sh

#!/bin/bash

# lvs web2

ifconfig lo:0 192.168.100.200 broadcast 192.168.100.200 netmask 255.255.255.255 up '添加虛擬地址的虛接口'

route add -host 192.168.100.200 dev lo:0 '給lo:0添加路由'

echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore

echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore

echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce

echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce

sysctl -p &> /dev/null

sh web2.sh

ifconfig

lo:0: flags=73 mtu 65536 '添加的虛擬地址'

inet 192.168.100.200 netmask 255.255.255.255

loop txqueuelen 1 (Local Loopback)

route -n

192.168.100.200 0.0.0.0 255.255.255.255 UH 0 0 0 lo

IP地址:192.168.100.11(主)+ 漂移地址:virtual-ip:192.168.100.200 +Haproxy服務器

Keepalived搭建雙機主

tar zxvf keepalived-2.0.13.tar.gz '解壓'

yum -y insatll ipvsadm

yum -y install gcc gcc-c++ make popt-devel kernel-devel openssl-devel

cd keepalived-2.0.13/

./configure --prefix=/ '配置'

make && make install '編譯安裝'

modprobe ip_vs

cat /proc/net/ip_vs '以下是效果'

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port Forward Weight ActiveConn InActConn

systemctl enable keepalived '開機自啟'

cp keepalived/etc/init.d/keepalived /etc/init.d/ '方便編輯'

配置keepalived.conf

'先把里面東西刪掉'

主配置keepalived

! Configuration File for keepalived

global_defs {

router_id lvs_1

}

vrrp_instance vi_1 {

state MASTER

interface ens33

virtual_router_id 51

priority 150

advert_int 1

authentication {

auth_type PASS

auth_pass 6666

}

virtual_ipaddress {

192.168.100.200

}

}

virtual_server 192.168.100.200 80 { '虛擬地址'

delay_loop 6

lb_algo rr

lb_kind DR

persistence_timeout 6

protocol TCP

real_server 192.168.100.2 80 { '節點地址'

weight 1

TCP_CHECK {

connect_port 80

connect_timeout 3

nb_get_retry 3

delay_before_retry 3

}

}

real_server 192.168.100.3 80 { '節點地址'

weight 1

TCP_CHECK {

connect_port 80

connect_timeout 3

nb_get_retry 3

delay_before_retry 3

}

}

}

systemctl restart keepalived.service '開啟keepalived服務'

ip addr '代表是主會添加虛擬地址'

ens33: mtu 1500 qdisc pfifo_fast state UP qlen 1000

link/ether 00:0c:29:02:b2:9b brd ff:ff:ff:ff:ff:ff

inet 192.168.100.11/24 brd 192.168.100.255 scope global ens33

valid_lft forever preferred_lft forever

inet 192.168.100.200/32 scope global ens33

valid_lft forever preferred_lft forever

inet6 fe80::20c:29ff:fe02:b29b/64 scope link

valid_lft forever preferred_lft forever

ipvsadm -Ln

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port Forward Weight ActiveConn InActConn

TCP 192.168.100.200:80 rr persistent 6

-> 192.168.100.2:80 Route 1 0 1

-> 192.168.100.3:80 Route 1 0 4

tail -f /var/log/messages '如下面這個結果'

Dec 11 00:26:38 localhost Keepalived_healthcheckers[70323]: TCP connection to [192.168.100.2]:tcp:80 success.

Haproxy服務器:192.168.100.11

tar xzvf haproxy-1.4.24.tar.gz '解壓'

yum -y install gcc gcc-c++ make pcre-devel zlib-devel

mkdir /etc/haproxy

cd haproxy-1.4.24/

make TARGET=linux26

make install

cp examples/haproxy.cfg /etc/haproxy/

vi /etc/haproxy/haproxy.cfg

#chroot /usr/share/haproxy '注釋掉'

#redispatch

'刪除所有listen,留下global defaults 加入下面這段'

listen webcluster 0.0.0.0:80

option httpchk GET /index.html

balance roundrobin

server web1 192.168.100.2:80 check inter 2000 fall 3 'web1服務器ip'

server web2 192.168.100.3:80 check inter 2000 fall 3 'web2服務器ip'

//設置開機自啟haproxy

cd haproxy-1.4.24/

cp examples/haproxy.init /etc/init.d/haproxy

vi /etc/init.d/haproxy

# chkconfig: 35 85 15 '默認是- 改為35'

chkconfig --add haproxy

chkconfig --list

haproxy 0:關 1:關 2:關 3:開 4:關 5:開 6:關

cd /etc/init.d/

chmod +x haproxy '授予權限'

chkconfig --add haproxy

ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy

systemctl enable haproxy

systemctl start haproxy '開啟haproxy服務'

Keepalived搭建雙機備

Haproxy服務器:192.168.100.12 跟 Haproxy服務器:192.168.100.11一樣,copy上面的就好。

注:Keepalived備份服務器的配置與master的配置有三個選項不同。

vi /etc/keepalived/keepalived.conf

router_id:設為自有名稱

state:設為BACKUP

priority:值低于主服務器 145

其他選項與master相同

谷歌瀏覽器訪問漂移地址:192.168.100.200

這是Web2節點的頁面

等幾分鐘,清空瀏覽器記錄訪問漂移地址:192.168.100.200

這是Web1節點的頁面

客戶機

關閉 192.168.100.11主 然后在訪問漂移地址:192.168.100.200

再次訪問 192.168.100.200 效果一樣 會有兩個節點頁面。

ip addr可以查看漂移地址產生沒有。

本文地址:https://blog.csdn.net/weixin_50344807/article/details/111031093

如您對本文有疑問或者有任何想說的,請點擊進行留言回復,萬千網友為您解惑!

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的java双机调度_Haproxy+keepalive-群集架构实验的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。