亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        高可用反向代理服務(wù)體系應(yīng)用與優(yōu)化

        2019-08-15 01:29:00陳國(guó)良巫園芬
        中國(guó)教育網(wǎng)絡(luò) 2019年7期
        關(guān)鍵詞:代理服務(wù)器端口代理

        文/陳國(guó)良 巫園芬

        在高校,信息化和數(shù)字化早已滲透到學(xué)校教學(xué)、科研、管理等各方面,數(shù)字化校園成為學(xué)校教學(xué)和科研的有力支持?;旧厦總€(gè)二級(jí)單位都建設(shè)了數(shù)個(gè)信息系統(tǒng),如果為眾多信息系統(tǒng)提供互聯(lián)網(wǎng)服務(wù)對(duì)高校網(wǎng)絡(luò)中心而言將是巨大的挑戰(zhàn)。

        高校通常自建校園網(wǎng)及IDC,所有校內(nèi)的信息系統(tǒng)都運(yùn)行在IDC 中。在單一互聯(lián)網(wǎng)出口的網(wǎng)絡(luò)架構(gòu)中,由于路由簡(jiǎn)單,問(wèn)題的焦點(diǎn)落于IP 地址匱乏上;在多個(gè)互聯(lián)網(wǎng)出口的網(wǎng)絡(luò)架構(gòu)中,除匱乏的IP 地址,還將存在復(fù)雜路由、源進(jìn)源出、智能DNS 等問(wèn)題。

        復(fù)雜路由和源進(jìn)源出可通過(guò)路由設(shè)備解決,智能DNS 則可通過(guò)配置view zone 解決多運(yùn)營(yíng)商互聯(lián)網(wǎng)出口用戶訪問(wèn)優(yōu)化問(wèn)題,但匱乏的IP 地址致使無(wú)法為每個(gè)信息系統(tǒng)配備公網(wǎng)IP,虛擬主機(jī)、反向代理技術(shù)可以較好地解決IP 地址匱乏問(wèn)題。

        技術(shù)架構(gòu)

        主機(jī)技術(shù)

        信息系統(tǒng)提供互聯(lián)網(wǎng)服務(wù)無(wú)非為實(shí)例主機(jī)或虛擬主機(jī)。實(shí)例主機(jī)即每個(gè)信息系統(tǒng)對(duì)應(yīng)一個(gè)公網(wǎng)IP,對(duì)于IPv4 地址已經(jīng)分配完畢但仍未過(guò)渡到IPv6 網(wǎng)絡(luò)期間,顯然會(huì)占用過(guò)多的IPv4 地址。在多出口校園網(wǎng)環(huán)境中非主要出口所分配到的IPv4 地址通常只有64 個(gè)甚至更少。實(shí)例主機(jī)方式顯然不適合。

        暨南大學(xué)

        虛擬主機(jī)的技術(shù)實(shí)現(xiàn)則有兩種方式。第一,使用同一IP 地址但不同端口,由此,每個(gè)IP 地址可以支持超過(guò)6 萬(wàn)個(gè)虛擬主機(jī)即運(yùn)行超過(guò)6 萬(wàn)個(gè)信息系統(tǒng)。在數(shù)量上確實(shí)能滿足為高校信息系統(tǒng)提供互聯(lián)網(wǎng)服務(wù),但信息系統(tǒng)的承載是http 或https 協(xié)議,這兩者都有其默認(rèn)服務(wù)端口80 和443。使用同一IP 地址但不同端口做虛擬主機(jī)服務(wù)意味著需要改變服務(wù)端口,即用戶訪問(wèn)該信息系統(tǒng)時(shí)需要在域名或IP 地址后面加上端口號(hào)以便映射到相應(yīng)的信息系統(tǒng),大大降低了用戶友好度。

        第二,使用同一IP 地址同一端口,根據(jù)不同主機(jī)名即域名來(lái)區(qū)分信息系統(tǒng)。如此,每個(gè)IP 地址可以支持趨近無(wú)限個(gè)信息系統(tǒng),且用戶只需輸入域名作為信息系統(tǒng)的識(shí)別即可訪問(wèn)到相應(yīng)的信息系統(tǒng),大大提高了用戶友好度。

        中間件技術(shù)

        采用主機(jī)名虛擬主機(jī)方式可實(shí)現(xiàn)區(qū)分無(wú)限個(gè)信息系統(tǒng),但一臺(tái)物理主機(jī)的性能終歸是有限的,而且信息系統(tǒng)的編程語(yǔ)言不一、技術(shù)架構(gòu)參差不齊,亦不可能運(yùn)行在同一臺(tái)服務(wù)器中。因此,中間件和負(fù)載均衡是不得不考慮的問(wèn)題。

        業(yè)界解決此類問(wèn)題的方案不少,考慮到在實(shí)際的網(wǎng)絡(luò)環(huán)境中,部分二級(jí)單位的服務(wù)器并非統(tǒng)一托管到網(wǎng)絡(luò)中心機(jī)房,因此選用反向代理的方案。

        對(duì)用戶而言,反向代理服務(wù)器就是信息系統(tǒng),用戶訪問(wèn)反向代理服務(wù)器,反向代理服務(wù)器接收到用戶的請(qǐng)求,接著向真實(shí)服務(wù)器請(qǐng)求相應(yīng)的數(shù)據(jù),收到真實(shí)服務(wù)器返回的數(shù)據(jù)后再將數(shù)據(jù)返回給用戶。反向代理服務(wù)器終止了用戶的TCP 連接,所以用戶不必與真實(shí)服務(wù)器跟帖可達(dá),用戶只需能訪問(wèn)反向代理服務(wù)器即可,代理服務(wù)器可以通過(guò)私有網(wǎng)絡(luò)向真實(shí)服務(wù)器請(qǐng)求數(shù)據(jù)。此架構(gòu)可節(jié)省公網(wǎng)IP 地址,保護(hù)真實(shí)服務(wù)器不受互聯(lián)網(wǎng)攻擊,信息系統(tǒng)數(shù)量不受服務(wù)器性能限制,優(yōu)點(diǎn)顯著,如圖1 所示。

        在反向代理軟件的選擇上,主要考慮三款主流的開(kāi)源軟件,Squid、Varnish 和Nginx。

        圖1 反向代理原理

        Squid,有一定歷史的反向代理軟件,其功能有傳統(tǒng)代理、身份驗(yàn)證、URL 過(guò)濾、連接管理等。目前廣泛應(yīng)用于各CDN 上做反向緩存代理服務(wù)器。

        Varnish 則較為年輕,設(shè)計(jì)簡(jiǎn)單,數(shù)據(jù)主要緩存在內(nèi)存上,響應(yīng)更快,更符合目前高速交付的需求,但重啟后數(shù)據(jù)將消失,更適合做網(wǎng)絡(luò)加速用途。

        Nginx 具有高并發(fā)的優(yōu)點(diǎn),支持http、https、pop、smtp、imap 等多種協(xié)議,廣泛應(yīng)用于各大型網(wǎng)站中。

        近年來(lái),信息安全事件頻出,隨著信息安全形勢(shì)日益嚴(yán)峻,全網(wǎng)使用ssl 安全連接被提上了日程,全網(wǎng)使用https 協(xié)議也即將實(shí)現(xiàn),支持反向代理部署的全網(wǎng)https 協(xié)議方案必然要求反向代理軟件支持SNI,SNI 即服務(wù)器名稱指示(Server Name Indication),是TLS 協(xié)議的擴(kuò)展,用于指示和哪些主機(jī)名服務(wù)端來(lái)握手連接。這使得一臺(tái)服務(wù)器上相同的IP 地址和端口允許使用多張證書,從而允許多個(gè)安全的站點(diǎn)(https 站點(diǎn))在相同的IP 地址上,不需要使用相同的SSL 證書。這相當(dāng)于允許虛擬主機(jī)用于https。Nginx 較其他軟件更好地支持SNI,能夠更好地滿足需求。

        負(fù)載均衡

        Nginx 除了能實(shí)現(xiàn)反向代理功能外,其實(shí)還是一款優(yōu)質(zhì)的負(fù)載均衡軟件,它可以做應(yīng)用層的負(fù)載均衡,支持熱備、輪詢等模式并可靈活配置真實(shí)服務(wù)器檢活機(jī)制。然而僅使用Nginx 來(lái)實(shí)現(xiàn)負(fù)載均衡容易出現(xiàn)單點(diǎn)故障,同時(shí)單臺(tái)服務(wù)器性能有限,無(wú)法很好支持逐年增長(zhǎng)的龐大數(shù)量的信息系統(tǒng)。

        LVS+HA+Ldirectord 可以很好地解決單點(diǎn)故障,從網(wǎng)絡(luò)層進(jìn)行負(fù)載均衡,具體功能實(shí)現(xiàn)如下:

        LVS 提供虛擬IP 接收業(yè)務(wù)請(qǐng)求,并將請(qǐng)求按設(shè)定算法調(diào)度到真實(shí)服務(wù)器,工作在OSI 四層以下,通過(guò)IP、端口處理業(yè)務(wù)流量。

        HA 是雙機(jī)高可用,即協(xié)商兩臺(tái)服務(wù)器,在其中一臺(tái)服務(wù)器上運(yùn)行LVS,若該服務(wù)器出現(xiàn)故障無(wú)法運(yùn)行LVS 則會(huì)切換到另一臺(tái)服務(wù)器運(yùn)行LVS,實(shí)現(xiàn)虛擬IP 高可用。

        Ldirectord 主要用于檢測(cè)后端服務(wù)器的服務(wù)狀態(tài),一旦檢測(cè)到后端服務(wù)器下線,則把該服務(wù)器從LVS 服務(wù)器列表中剔除,避免LVS 把用戶請(qǐng)求轉(zhuǎn)發(fā)到故障服務(wù)器中。

        如圖2 所示,用戶請(qǐng)求www、news、net 等站點(diǎn),LVS 將用戶請(qǐng)求調(diào)度到各反向代理服務(wù)器,反向代理服務(wù)器再根據(jù)用戶請(qǐng)求連接到真實(shí)服務(wù)器。

        圖2 反向代理負(fù)載均衡原理

        顯而易見(jiàn),信息系統(tǒng)服務(wù)器將存在單點(diǎn)故障風(fēng)險(xiǎn),部分重點(diǎn)服務(wù)器無(wú)法得到保障。在此情況下,Nginx 的應(yīng)用負(fù)載均衡則可以很好地補(bǔ)充反向代理對(duì)真實(shí)服務(wù)器的負(fù)載均衡,實(shí)現(xiàn)反向代理負(fù)載均衡體系的高可用,如圖3 所示。

        應(yīng)用與優(yōu)化

        LVS 部署與優(yōu)化

        1.安裝

        采用內(nèi)核版本為2.6.x 的Linux 操作系統(tǒng),以更好地支持LVS。采用源碼方式安裝ipvsadm-1.26、Heartbeat-3、ClusterLabsresource-agents 和Reusable-Cluster-Components-glue。

        圖3 高可用反向代理負(fù)載均衡原理

        2.配置

        ha.cf 指定雙機(jī)均衡對(duì)端,關(guān)鍵配置如下:

        ucast eth0 192.168.0.121

        auto_failback off

        node lvsweb48a lvsweb48b

        authkeys 配置使用md5 加密驗(yàn)證方法:

        auth 3

        3 md5 lvsweb48

        haresources 配置運(yùn)行的資源:

        lvsweb48b lvsadm ldirectord

        ldirectord.cf 關(guān)鍵配置:

        virtual=192.168.0.48:80

        real=192.168.0.106:80 gate

        ……

        fallback=192.168.0.100:80

        service=http

        scheduler=lc

        lvsadm 配置LVS 初始運(yùn)行:

        #!/bin/bash

        RWEBCACHE11=192.168.0.102

        ……

        VWEBCACHE1=192.168.0.48

        ogateway=192.168.0.123

        ……

        VHWaddr0=00:CA:74:00:30:00

        ……

        VIPaddr0=192.168.0.48

        RIPaddr0=192.168.0.122

        # 以下為優(yōu)化內(nèi)容一

        /sbin/ifconfig eth0 down

        /sbin/ifconfig eth0 hw ether $VHWaddr0

        /sbin/ifconfig eth0 up

        /sbin/ifconfig eth1 down

        /sbin/ifconfig eth1 hw ether $VHWaddr1

        /sbin/ifconfig eth1 up

        ……

        # 以下為優(yōu)化內(nèi)容二

        ping -c 3 -i 1 $ogateway

        ping -c 3 -i 1 $igateway

        ping -c 3 -i 1 $vogateway1

        ping -c 3 -i 1 $vogateway2

        #以下省略正常配置

        #Clear IPVS table

        #Set LVS

        #Run LVS

        3. 優(yōu)化

        上述LVS+HA+Ldirectord 體系配置是經(jīng)優(yōu)化后的最終配置,主要體現(xiàn)在:

        (1)自編程初始配置,其中將VIP 的MAC 地址統(tǒng)一為雙機(jī)一致,即LVS 雙機(jī)進(jìn)行故障切換時(shí),保持網(wǎng)關(guān)設(shè)備的arp 表不變,將切換控制在2~3 個(gè)ping 包內(nèi)。若不對(duì)此進(jìn)行優(yōu)化,剛故障切換時(shí)網(wǎng)絡(luò)中斷時(shí)間更長(zhǎng),或者需要網(wǎng)關(guān)設(shè)備調(diào)整arp 老化時(shí)間,從而影響設(shè)備性能。

        (2)切換時(shí)增加ping 網(wǎng)關(guān)等操作,進(jìn)一步提升網(wǎng)絡(luò)自愈能力。

        (3)使用雙網(wǎng)卡路由配置可自由區(qū)分內(nèi)外網(wǎng)流量。

        4.增強(qiáng)自愈能力

        通過(guò)配置監(jiān)控腳本,實(shí)現(xiàn)雙活、雙宕機(jī)等異常情況的自愈。主要原理為通過(guò)ping 測(cè)LVS 真實(shí)IP 與虛擬IP 監(jiān)控LVS 是否存活,如雙宕機(jī)則相繼重啟服務(wù)器。設(shè)置監(jiān)控網(wǎng)卡,LVS 生效與失效會(huì)改變監(jiān)控網(wǎng)卡的MAC,通過(guò)ping 測(cè)監(jiān)控網(wǎng)卡,分析MAC是生效前或后的值即可判斷LVS 是否存在雙活異常,如是則相繼重啟服務(wù)器。腳本關(guān)鍵內(nèi)容如下:

        system ("ping -c 4 $virtual_ip > $status_file") &&

        printf "Can not run ping command! ";

        open(pid_f,$status_file) || die ("Could not open file");

        while ($line=){

        chomp $line;

        $cmd_line = $line;

        if ( index($cmd_line,$cmd_v) > 0 ) {

        $run_v=0;

        }

        }

        close(pid_f);

        ……

        if ( $run_v > 0 ) {

        system ("echo $time restart no service>> $fail_

        log");

        system ("init 6 ") && die "Can not run SH! ";

        }

        elsif ( $arp_r == $arp_l ) {

        system ("echo $time restart both service>> $fail_

        log");

        system ("init 6 ") && die "Can not run SH! ";

        }

        exit;

        效果較顯著,能確保LVS 正常服務(wù),見(jiàn)

        日志記錄:

        201905132015 restart both service

        201905190533 restart no service

        201905200533 restart both service

        ……

        格式為“日期 操作 原因”,其中“both service”為雙活異常,“no service”為宕服務(wù)異常。從日志可看出監(jiān)控腳本可有效維持LVS 正常服務(wù)。

        Nginx 部署與優(yōu)化

        1.安裝

        采用Freebsd 操作系統(tǒng),源碼方式安裝nginx-1.10.2。

        2.配置

        配置nginx.conf 實(shí)現(xiàn)反向代理功能,關(guān)鍵配置如下:

        server {

        listen 80;

        server_name *.test.edu.cn;

        location / {

        proxy_pass http://$host;

        proxy_set_header Host $host;

        proxy_redirect off;

        proxy_set_header X-Real-IP $remote_addr;

        proxy_set_header X-Forwarded-For $proxy_add_

        x_forwarded_for;

        proxy_buffering off;

        }

        }

        server {

        listen 443 ssl;

        server_name *.test.edu.cn;

        ssl_certificate test.edu.cn.crt;

        ssl_certificate_key test.edu.cn.key;

        ssl_session_cache shared:SSL:1m;

        ssl_session_timeout 5m;

        ssl_ciphers HIGH:!aNULL:!MD5;

        ssl_prefer_server_ciphers on;

        location / {

        proxy_pass http://$host;

        proxy_set_header Host $host;

        proxy_redirect off;

        proxy_set_header X-Real-IP $remote_addr;

        proxy_set_header X-Forwarded-For $proxy_add_

        x_forwarded_for;

        proxy_buffering off;

        }

        }

        }

        include upstream.conf;

        include server80.conf;

        include server443.conf;

        3.優(yōu)化

        上述配置為Nginx 的主配置,做了幾點(diǎn)優(yōu)化,主要體現(xiàn)在:

        (1)優(yōu)化日志記錄格式,既考慮到更詳盡地記錄訪問(wèn)日志,又兼顧安全部門溯源的需要。詳盡的日志記錄,可以通過(guò)分析各響應(yīng)時(shí)間,得出不同站點(diǎn)不同節(jié)點(diǎn)的訪問(wèn)時(shí)延,進(jìn)一步有針對(duì)性地優(yōu)化。

        (2)主配置與站點(diǎn)個(gè)性化配置分離,以便更好地管理,站點(diǎn)個(gè)性化配置通過(guò)include 方式加載。

        (3)對(duì)部分重要信息系統(tǒng)需要應(yīng)用層負(fù)載均衡的,通過(guò)“include upstream.conf;”,設(shè)置upstream 服務(wù)器即可實(shí)現(xiàn)。

        經(jīng)實(shí)驗(yàn)驗(yàn)證并在生產(chǎn)環(huán)境穩(wěn)定運(yùn)行數(shù)年,高可用反向代理體系運(yùn)行情況良好。實(shí)現(xiàn)了校園網(wǎng)的信息系統(tǒng)統(tǒng)一向各互聯(lián)網(wǎng)出口提供服務(wù),解決了校園網(wǎng)信息系統(tǒng)數(shù)量多而各互聯(lián)網(wǎng)出口IP 不足的問(wèn)題,減輕了網(wǎng)絡(luò)管理員的管理工作。通過(guò)優(yōu)化,極大提升了反向代理體系的高可用性。

        隨著信息技術(shù)的發(fā)展,信息系統(tǒng)基礎(chǔ)重點(diǎn)從簡(jiǎn)單提供服務(wù)到規(guī)范代碼編寫、從簡(jiǎn)單網(wǎng)絡(luò)連通到網(wǎng)絡(luò)安全、從信息發(fā)布到信息安全轉(zhuǎn)變,反向代理體系從提供服務(wù)的角度解決了高可用,但無(wú)法阻擋惡意攻擊、無(wú)法很好地解決安全問(wèn)題,這需要進(jìn)一步的研究與探索。

        猜你喜歡
        代理服務(wù)器端口代理
        一種端口故障的解決方案
        地鐵信號(hào)系統(tǒng)中代理服務(wù)器的設(shè)計(jì)與實(shí)現(xiàn)
        代理圣誕老人
        代理手金寶 生意特別好
        IP地址隱藏器
        端口阻塞與優(yōu)先級(jí)
        復(fù)仇代理烏龜君
        初識(shí)電腦端口
        電腦迷(2015年6期)2015-05-30 08:52:42
        生成樹(shù)協(xié)議實(shí)例探討
        一個(gè)村有二十六位代理家長(zhǎng)
        亚洲色偷偷综合亚洲avyp| 国产免费破外女真实出血视频 | 论理视频二区三区四区在线观看 | 久久久免费看少妇高潮| 狂猛欧美激情性xxxx大豆行情| 免费观看a级毛片| 亚洲avav天堂av在线网毛片| 少妇做爰免费视频网站| 最近中文字幕完整版| 欧美a级在线现免费观看| 亚洲AV无码成人精品区天堂| 尤物蜜芽福利国产污在线观看| 亚洲精品中文字幕乱码二区 | 亚洲av日韩av无码av| 国产成人九九精品二区三区 | 亚洲AV无码资源在线观看 | 日本乱人伦在线观看| 亚洲毛片αv无线播放一区| 美女高潮流白浆视频在线观看| 久久久久久国产福利网站| 青青草手机成人自拍视频| 中文字幕精品久久一区二区三区| 国产亚洲av综合人人澡精品| 亚洲一区二区三区日本久久九| 日本亚洲视频一区二区三区| 97久久婷婷五月综合色d啪蜜芽| 国产精品亚洲lv粉色| 97人妻碰碰视频免费上线| 久久不见久久见免费视频7| 亚洲AⅤ无码片一区二区三区| 国产剧情无码中文字幕在线观看不卡视频 | 日韩av一区二区三区精品| 亚洲女同高清精品一区二区99| 顶级高清嫩模一区二区| 一区二区三区美女免费视频| 国产专区一线二线三线码| 精品成人av一区二区三区| 欧美亚洲精品一区二区| 在线观看亚洲你懂得| 女同av免费在线播放| 人人妻人人澡人人爽曰本|