真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

實(shí)驗(yàn)keepalived+nginx+apache+mysql如何實(shí)現(xiàn)高可用負(fù)載均衡第二篇

下文給大家?guī)韺?shí)驗(yàn)keepalived+nginx+apache+MySQL如何實(shí)現(xiàn)高可用負(fù)載均衡第二篇,希望能夠給大家在實(shí)際運(yùn)用中帶來一定的幫助,負(fù)載均衡涉及的東西比較多,理論也不多,網(wǎng)上有很多書籍,今天我們就用創(chuàng)新互聯(lián)在行業(yè)內(nèi)累計(jì)的經(jīng)驗(yàn)來做一個(gè)解答。

成都創(chuàng)新互聯(lián)長期為數(shù)千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為文水企業(yè)提供專業(yè)的成都網(wǎng)站建設(shè)、做網(wǎng)站,文水網(wǎng)站改版等技術(shù)服務(wù)。擁有10年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。

一環(huán)境介紹

主機(jī)名ip安裝軟件
nginx_mysql_m192.168.255.67keepalived+nginx
nginx_mysql_s192.168.255.66keepalived+nginx
mysql1192.168.255.52mysql、mysql-server
mysql2192.168.255.57mysql、mysql-server

實(shí)驗(yàn)keepalived+nginx+apache+mysql如何實(shí)現(xiàn)高可用負(fù)載均衡第二篇

二、keepalived配置
keepalived的配置和上一篇的類似

vim /etc/keepalived/keepalived.conf

! Configuration File for keepalived

global_defs {
notification_email {
root@localhost
}
notification_email_from keepalived@localhost
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id nginx_mysql_s
vrrp_skip_check_adv_addr
#vrrp_strict
vrrp_garp_interval 0
vrrp_gna_interval 0
}

vrrp_script chk_nginx {
script "/etc/keepalived/nginx_check.sh" # 檢查nginx狀態(tài)的腳本
interval 2
weight 3
}

vrrp_instance VI_1 {
state BACKUP
interface ens160
virtual_router_id 66
priority 100 #backup這里要比100小
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.255.200
}
track_script {
chk_nginx
}
}

三、nginx的配置
因?yàn)檫@里nginx監(jiān)聽的是3306的端口,不需要web服務(wù)所以配置文件較簡單,但是需要用到stream模塊

在配置的時(shí)候需要添加上--with--stream

/configure --add-module=../ngx_cache_purge-2.3 --prefix=/usr/local/nginx --with-http_ssl_module --with-stream --with-pcre=../pcre-8.41 --with-zlib=../zlib-1.2.11 --with-openssl=../openssl-1.0.2o

其他和上一篇的安裝方法一樣
修改nginx配置文件

#user nobody;
worker_processes 1;

#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid    logs/nginx.pid;

events {
worker_connections 1024;
}

stream {
upstream mysql {

            server 192.168.255.52:3306 weight=5 max_fails=3 fail_timeout=30s;
            server 192.168.255.57:3306 weight=5 max_fails=3 fail_timeout=30s;
   }

    server {

            listen 3306;
            proxy_connect_timeout 1s;
            proxy_timeout 3s;
            proxy_pass mysql;
}

}

啟動nginx

/usr/local/nginx/sbin/nginx
netstat -napt

實(shí)驗(yàn)keepalived+nginx+apache+mysql如何實(shí)現(xiàn)高可用負(fù)載均衡第二篇

發(fā)現(xiàn)nginx已經(jīng)被成功監(jiān)聽
backup的nginx配置相同
四、mysql數(shù)據(jù)庫配置
接下來是重頭戲,mysql主主配置
1 mysql安裝

wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
mv  http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm /etc/yum.repo/
rpm -ivh http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
yum install -y mysql&&yum install mysql-server -y
systemctl start mysql

首先我們配置mysql雙主模型,讓其數(shù)據(jù)同步

vim /etc.my.cnf
server-id=1
log-bin=mysql-bin
binlog_format=mixed
relay-log=relay-bin
relay-log-index=slave-relay-bin.index
auto-increment-increment=2
auto-increment-offset=1
log-slave-updates

實(shí)驗(yàn)keepalived+nginx+apache+mysql如何實(shí)現(xiàn)高可用負(fù)載均衡第二篇
其中紅框歷史需要添加的內(nèi)容
粉框中是兩個(gè)mysql不同的地方
mysql2的粉框處是2
然后重啟mysql

systemctl restart mysql
mysql
mysql> grant all privileges on . to zhangsan@192.168.255.53 identified by '123456';

在mysql2上把ip改成mysql1的

剩下的步驟在上一篇博客mysql數(shù)據(jù)不同步里面有,這里不多說了
我們給web云服務(wù)器授權(quán),讓其可以進(jìn)行所有操作

mysql
mysql> create database db_jd;
mysql> create user web@localhost identified by '123456';
mysql> grant all privileges on *.* to web@localhost;
mysql> create user web@192.168.255.50 identified by '123456';
mysql> create user web@192.168.255.53 identified by '123456';
mysql> grant all privileges on db_jd.* to web@192.168.255.50;
mysql> grant all privileges on db_jd.* to web@192.168.255.53;
mysql> flush privileges;

然后在web服務(wù)器上用php連接一下mysql看是否成功

>cd /var/www/html
vim con.php

瀏覽器訪問wen的ip/con.php
實(shí)驗(yàn)keepalived+nginx+apache+mysql如何實(shí)現(xiàn)高可用負(fù)載均衡第二篇
mysql2同理

然后在數(shù)據(jù)庫db_jd里創(chuàng)建表
mysql > create table tb_goods (id int(11) null, tltle VarChar(40), price Decimal(10), market_price Decimal(10));

然后在web服務(wù)器編寫接口程序連接mysql,并寫一個(gè)能插入數(shù)據(jù)到數(shù)據(jù)庫的表單

vim coon.php

vim index.php



    
    產(chǎn)品添加-JD產(chǎn)品管理系統(tǒng)


    
JD產(chǎn)品管理
   
       圖書名稱:        
       銷售價(jià)格:        
       市場價(jià)格:        
                   

vim deal.php

然后訪問webvip的地址
插入數(shù)據(jù)
實(shí)驗(yàn)keepalived+nginx+apache+mysql如何實(shí)現(xiàn)高可用負(fù)載均衡第二篇
添加成功
實(shí)驗(yàn)keepalived+nginx+apache+mysql如何實(shí)現(xiàn)高可用負(fù)載均衡第二篇

接下來我們給web和mysql的keepalived主機(jī)還有兩臺mysql添加時(shí)間同步,這里舉例兩臺MySQL主機(jī)。

yum -y install ntp

修改npt配置文件,添加下面兩行

vim /etc/ntp.conf
server 127.127.1.0 iburst local clock #添加使用本地時(shí)間 restrict 192.168.255.52 mask 255.255.255.0 nomodify #允許更新的IP地址段

啟動ntp服務(wù),并加入開機(jī)啟動

systemctl start ntpd
systemctl enable ntpd

添加防火墻策略
只允許192.168.255.57訪問ntp服務(wù)。
打開防火墻

systemctl start firewalld
firewalld-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.255.57" port protocol="udp" port="123" accept"
firewalld-cmd --reload

配置 keepalived虛擬路由協(xié)議vrrp通過防火墻

firewall-cmd --direct --permanent --add-rule ipv4 filter INPUT 0 --in-interface ens192 --destination 224.0.0.18 --protocol vrrp -j ACCEPT

配置web80端口通過防火墻

firewall-cmd --zone=public --add-port=80/tcp
firewall-cmd --zone=public --add-interface=ens160
firewall-cmd --reload

配置3306端口通過防火墻

firewall-cmd --zone=public --add-port=3306/tcp
firewall-cmd --zone=public --add-interface=ens160

看了以上關(guān)于,如果大家還有什么地方需要了解的可以在創(chuàng)新互聯(lián)行業(yè)資訊里查找自己感興趣的或者找我們的專業(yè)技術(shù)工程師解答的,創(chuàng)新互聯(lián)技術(shù)工程師在行業(yè)內(nèi)擁有十幾年的經(jīng)驗(yàn)了。

 

 


文章題目:實(shí)驗(yàn)keepalived+nginx+apache+mysql如何實(shí)現(xiàn)高可用負(fù)載均衡第二篇
標(biāo)題路徑:http://weahome.cn/article/jhphjc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部