欧美成人午夜免费全部完,亚洲午夜福利精品久久,а√最新版在线天堂,另类亚洲综合区图片小说区,亚洲欧美日韩精品色xxx

扣丁學(xué)堂淺談如何在Linux用DNS實現(xiàn)簡單負載均衡呢

2018-08-16 14:05:30 974瀏覽

今天扣丁學(xué)堂Linux培訓(xùn)老師給大家介紹一下關(guān)于如何在Linux上用DNS實現(xiàn)負載均衡的詳細介紹,首先DNS輪詢將多個服務(wù)器映射到同一個主機名,如果你的后端服務(wù)器是由多臺服務(wù)器構(gòu)成的,比如集群化或者鏡像的Web或者文件服務(wù)器,通過負載均衡器提供了單一的入口點。業(yè)務(wù)繁忙的大型電商在高端負載均衡器上花費了大量的資金,用它來執(zhí)行各種各樣的任務(wù):代理、緩存、狀況檢查、SSL處理、可配置的優(yōu)先級、流量整形等很多任務(wù)。



但是你并不需要做那么多工作的負載均衡器。你需要的是一個跨服務(wù)器分發(fā)負載的簡單方法,它能夠提供故障切換,并且不太在意它是否高效和完美。DNS輪詢和使用輪詢的子域委派是實現(xiàn)這個目標(biāo)的兩種簡單方法。

DNS輪詢是將多臺服務(wù)器映射到同一個主機名上,當(dāng)用戶訪問foo.example.com時多臺服務(wù)器都可用于處理它們的請求,使用的就是這種方式。

當(dāng)你有多個子域或者你的服務(wù)器在地理上比較分散時,使用輪詢的子域委派就比較有用。你有一個主域名服務(wù)器,而子域有它們自己的域名服務(wù)器。你的主域名服務(wù)器將所有的到子域的請求指向到它們自己的域名服務(wù)器上。這將提升響應(yīng)時間,因為DNS協(xié)議會自動查找最快的鏈路。

DNS輪詢

輪詢和旅鶇鳥robins沒有任何關(guān)系,據(jù)我相熟的圖書管理員說,它最初是一個法語短語,rubanrond、或者roundribbon。很久以前,法國政府官員以不分級的圓形、波浪線、或者直線形狀來在請愿書上簽字,以蓋住原來的發(fā)起人。

DNS輪詢也是不分級的,簡單配置一個服務(wù)器列表,然后將請求轉(zhuǎn)到每個服務(wù)器上。它并不做真正的負載均衡,因為它根本就不測量負載,也沒有狀況檢查,因此如果一個服務(wù)器宕機,請求仍然會發(fā)送到那個宕機的服務(wù)器上。它的優(yōu)點就是簡單。如果你有一個小的文件或者Web服務(wù)器集群,想通過一個簡單的方法在它們之間分散負載,那么DNS輪詢很適合你。

你所做的全部配置就是創(chuàng)建多條A或者AAAA記錄,映射多臺服務(wù)器到單個的主機名。這個BIND示例同時使用了IPv4和IPv6私有地址類:

fileserv.example.com. IN A 172.16.10.10
fileserv.example.com. IN A 172.16.10.11
fileserv.example.com. IN A 172.16.10.12
fileserv.example.com. IN AAAA fd02:faea:f561:8fa0:1::10
fileserv.example.com. IN AAAA fd02:faea:f561:8fa0:1::11
fileserv.example.com. IN AAAA fd02:faea:f561:8fa0:1::12

Dnsmasq在/etc/hosts文件中保存A和AAAA記錄:

172.16.1.10 fileserv fileserv.example.com
172.16.1.11 fileserv fileserv.example.com
172.16.1.12 fileserv fileserv.example.com
fd02:faea:f561:8fa0:1::10 fileserv fileserv.example.com
fd02:faea:f561:8fa0:1::11 fileserv fileserv.example.com
fd02:faea:f561:8fa0:1::12 fileserv fileserv.example.com

請注意這些示例都是很簡化的,解析完全合格域名有多種方法,因此,關(guān)于如何配置DNS請自行學(xué)習(xí)。

使用dig命令去檢查你的配置能否按預(yù)期工作。將ns.example.com替換為你的域名服務(wù)器:

$ dig @ns.example.com fileserv A fileserv AAA

它將同時顯示出IPv4和IPv6的輪詢記錄。

子域委派和輪詢

子域委派結(jié)合輪詢要做的配置會更多,但是這樣有一些好處。當(dāng)你有多個子域或者地理位置比較分散的服務(wù)器時,就應(yīng)該去使用它。它的響應(yīng)時間更快,并且宕機的服務(wù)器不會去響應(yīng),因此客戶端不會因為等待回復(fù)而被掛住。一個短的TTL,比如60秒,就能幫你做到。

這種方法需要多臺域名服務(wù)器。在最簡化的場景中,你需要一臺主域名服務(wù)器和兩個子域,每個子域都有它們自己的域名服務(wù)器。在子域服務(wù)器上配置你的輪詢記錄,然后在你的主域名服務(wù)器上配置委派。

在主域名服務(wù)器上的BIND中,你至少需要兩個額外的配置,一個區(qū)聲明以及在區(qū)數(shù)據(jù)文件中的A/AAAA記錄。主域名服務(wù)器中的委派應(yīng)該像如下的內(nèi)容:

ns1.sub.example.com. IN A 172.16.1.20
ns1.sub.example.com. IN AAAA fd02:faea:f561:8fa0:1::20
ns2.sub.example.com. IN A 172.16.1.21
ns2.sub.example.com. IN AAA fd02:faea:f561:8fa0:1::21
sub.example.com. IN NS ns1.sub.example.com.
sub.example.com. IN NS ns2.sub.example.com.

接下來的每臺子域服務(wù)器上有它們自己的區(qū)文件。在這里它的關(guān)鍵點是每個服務(wù)器去返回它自己的IP地址。在named.conf中的區(qū)聲明,所有的服務(wù)上都是一樣的:

zone "sub.example.com" {
    type master;
    file "db.sub.example.com";
};

然后數(shù)據(jù)文件也是相同的,除了那個A/AAAA記錄使用的是各個服務(wù)器自己的IP地址。SOA記錄都指向到主域名服務(wù)器:

; first subdomain name server
$ORIGIN sub.example.com.
$TTL 60
sub.example.com  IN SOA ns1.example.com. admin.example.com. (
        2018123456      ; serial
        3H              ; refresh
        15              ; retry
        3600000         ; expire
)
sub.example.com. IN NS ns1.sub.example.com.
sub.example.com. IN A  172.16.1.20
ns1.sub.example.com.  IN AAAA  fd02:faea:f561:8fa0:1::20
; second subdomain name server
$ORIGIN sub.example.com.
$TTL 60
sub.example.com  IN SOA ns1.example.com. admin.example.com. (
        2018234567      ; serial
        3H              ; refresh
        15              ; retry
        3600000         ; expire
)
sub.example.com. IN NS ns1.sub.example.com.
sub.example.com. IN A  172.16.1.21
ns2.sub.example.com.  IN AAAA  fd02:faea:f561:8fa0:1::21

接下來生成子域服務(wù)器上的輪詢記錄,方法和前面一樣?,F(xiàn)在你已經(jīng)有了多個域名服務(wù)器來處理到你的子域的請求。再說一次,BIND是很復(fù)雜的,做同一件事情它有多種方法,因此,給你留的家庭作業(yè)是找出適合你使用的最佳配置方法。

在Dnsmasq中做子域委派很容易。在你的主域名服務(wù)器上的dnsmasq.conf文件中添加如下的行,去指向到子域的域名服務(wù)器:

server=/sub.example.com/172.16.1.20
server=/sub.example.com/172.16.1.21
server=/sub.example.com/fd02:faea:f561:8fa0:1::20
server=/sub.example.com/fd02:faea:f561:8fa0:1::21

然后在子域的域名服務(wù)器上的/etc/hosts中配置輪詢,希望對同學(xué)們有所幫助,想要了解更多關(guān)于Linux開發(fā)方面內(nèi)容的小伙伴可以登錄扣丁學(xué)堂官網(wǎng)咨詢??鄱W(xué)堂有大量的Linux視頻教程讓學(xué)員免費觀看學(xué)習(xí),想要快速學(xué)習(xí)Linux開發(fā)就到由專業(yè)老師授課的扣丁學(xué)堂學(xué)習(xí)吧??鄱W(xué)堂Linux技術(shù)交流群:422345477。 

扣丁學(xué)堂微信公眾號


【關(guān)注微信公眾號獲取更多學(xué)習(xí)資料】



查看更多關(guān)于“Linux培訓(xùn)資訊”的相關(guān)文章>>


標(biāo)簽: Linux培訓(xùn) Linux視頻教程 紅帽Linux視頻 Linux學(xué)習(xí)視頻 Linux入門視頻

熱門專區(qū)

暫無熱門資訊

課程推薦

微信
微博
15311698296

全國免費咨詢熱線

郵箱:codingke@1000phone.com

官方群:148715490

北京千鋒互聯(lián)科技有限公司版權(quán)所有   北京市海淀區(qū)寶盛北里西區(qū)28號中關(guān)村智誠科創(chuàng)大廈4層
京ICP備2021002079號-2   Copyright ? 2017 - 2022
返回頂部 返回頂部