国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > 綜合 > 正文

Linux上的集群及其配置實例

2024-07-21 02:38:26
字體:
供稿:網(wǎng)友

  作者:宿寶臣
  
  一集群和linux上的集群解決方案
  集群系統(tǒng)(Cluster)主要解決下面幾個問題:
  
  高可靠性(HA)。利用集群治理軟件,當主服務器故障時,備份服務器能夠自動接管主服務器的工作,并及時切換過去,以實現(xiàn)對用戶的不間斷服務。
  高性能計算(HP)。即充分利用集群中的每一臺計算機的資源,實現(xiàn)復雜運算的并行處理,通常用于科學計算領(lǐng)域,比如基因分析,化學分析等。
  負載平衡。即把負載壓力根據(jù)某種算法合理分配到集群中的每一臺計算機上,以減輕主服務器的壓力,降低對主服務器的硬件和軟件要求。
  基于Linux的集群解決方案可謂百花齊放,具體請參見(Linux 集群大全--哪種群集適合您?)。
  
  在實際應用中,最常見的情況是利用集群解決負載平衡問題,比如用于提供WWW服務。在這里主要展示如何使用LVS(Linux Virtial Server)來實現(xiàn)實用的WWW負載平衡集群系統(tǒng)。
  
  二 LVS簡介
  
  LVS是章文嵩博士發(fā)起和領(lǐng)導的優(yōu)秀的集群解決方案,許多商業(yè)的集群產(chǎn)品,比如RedHat的Piranha,TurboLinux公司的Turbo Cluster等,都是基于LVS的核心代碼的。在現(xiàn)實的應用中,LVS得到了大量的部署,請參考http://www.linuxvirtualserver.org/deployment.Html
  
  關(guān)于Linux LVS的工作原理和更具體的信息,請參考http://www.linuxvirtualserver.org。
  
  三 LVS配置實例
  
  通過Linux LVS,實現(xiàn)WWW,Telnet服務的負載平衡。這里實現(xiàn)Telnet集群服務僅為了測試上的方便。
  
  LVS有三種負載平衡方式,NAT(Network Address Translation),DR(Direct Routing),ip Tunneling。其中,最為常用的是DR方式,因此這里只說明DR(Direct Routing)方式的LVS負載平衡。
  
  1。網(wǎng)絡(luò)拓撲結(jié)構(gòu)。
  Linux上的集群及其配置實例
點擊查看大圖

  如圖1所示,為測試方便,4臺機器處于同一網(wǎng)段內(nèi),通過一交換機或者集線器相連。實際的應用中,最好能夠?qū)⑻摂M服務器vs1和真實服務器rs1, rs2置于于不同的網(wǎng)段上,即提高了性能,也加強了整個集群系統(tǒng)的安全性。
  
  2。服務器的軟硬件配置
  首先說明,雖然本文的測試環(huán)境中用的是3臺相同配置的服務器,但LVS并不要求集群中的服務器規(guī)格劃一,相反,可以根據(jù)服務器的不同配置和負載情況,調(diào)整負載分配策略,充分利用集群環(huán)境中的每一臺服務器。
  
  這3臺服務器中,vs1作為虛擬服務器(即負載平衡服務器),負責將用戶的訪問請求轉(zhuǎn)發(fā)到集群內(nèi)部的rs1,rs2,然后由rs1,rs2分別處理。
  
  client為客戶端測試機器,可以為任意操作系統(tǒng)。
  
  4臺服務器的操作系統(tǒng)和網(wǎng)絡(luò)配置分別為:
  
  vs1: RedHat 6.2, Kernel 2.2.19
  vs1: eth0 192.168.0.1
  vs1: eth0:101 192.168.0.101
  
  rs1: RedHat 6.2, Kernel 2.2.14
  rs1: eth0 192.168.0.3
  rs1: dummy0 192.168.0.101
  
  rs2: RedHat 6.2, Kernel 2.2.14
  rs2: eth0 192.168.0.4
  rs2: dummy0 192.168.0.101
  
  client: windows 2000
  client: eth0 192.168.0.200
  
  其中,192.168.0.101是答應用戶訪問的IP。
  
  虛擬服務器的集群配置
  大部分的集群配置工作都在虛擬服務器vs1上面,需要下面的幾個步驟:
  
  重新編譯內(nèi)核。
  首先,下載最新的Linux內(nèi)核,版本號為2.2.19,下載地址為:http://www.kernel.org/,解壓縮后置于/usr/src/linux目錄下。

  
  其次需要下載LVS的內(nèi)核補丁,地址為:http://www.linuxvirtualserver.org/software/ipvs-1.0.6-2.2.19.tar.gz。這里注重,假如你用的Linux內(nèi)核不是2.2.19版本的,請下載相應版本的LVS內(nèi)核補丁。將ipvs-1.0.6-2.2.19.tar.gz解壓縮后置于/usr/src/linux目錄下。
  
  然后,對內(nèi)核打補丁,如下操作:
  [root@vs2 /root]# cd /usr/src/linux
  [root@vs2 linux]# patch -p1 < ipvs-1.0.6-2.2.19/ipvs-1.0.6-2.2.19.patch
  
  下面就是重新配置和編譯Linux的內(nèi)核。非凡注重以下選項:
  1 Code maturity level options--->
  
  
  *      [*]PRompt for development and/or incomplete code/drivers
  
  
  2 Networking部分:
     [*] Kernel/User netlink socket
      [*] Routing messages
      <*> Netlink device emulation
  *     [*] Network firewalls
      [*] Socket Filtering
      <*> Unix domain sockets
  *     [*] TCP/IP networking
      [*] IP: multicasting
      [*] IP: advanced router
      [ ] IP: policy routing
      [ ] IP: equal cost multipath
      [ ] IP: use TOS value as routing key
      [ ] IP: verbose route monitoring
      [ ] IP: large routing tables
      [ ] IP: kernel level autoconfiguration
  *     [*] IP: firewalling
      [ ] IP: firewall packet netlink device
  *     [*] IP: transparent proxy support
  *     [*] IP: masquerading
      --- Protocol-specific masquerading support will be built as modules.
  *     [*] IP: ICMP masquerading
      --- Protocol-specific masquerading support will be built as modules.
  *     [*] IP: masquerading special modules support
  *      IP: ipautofw masq support (EXPERIMENTAL)(NEW)
  *      IP: ipportfw masq support (EXPERIMENTAL)(NEW)
  *      IP: ip fwmark masq-forwarding support (EXPERIMENTAL)(NEW)
  *     [*] IP: masquerading virtual server support (EXPERIMENTAL)(NEW)
      [*] IP Virtual Server debugging (NEW) <--最好選擇此項,以便觀察LVS的調(diào)試信息
  *     (12) IP masquerading VS table size (the Nth power of 2) (NEW)
  *      IPVS: round-robin scheduling (NEW)
  *      IPVS: weighted round-robin scheduling (NEW)
  *      IPVS: least-connection scheduling (NEW)
  *      IPVS: weighted least-connection scheduling (NEW)
  *      IPVS: locality-based least-connection scheduling (NEW)
  *      IPVS: locality-based least-connection with replication scheduling (NEW)
  *     [*] IP: optimize as router not host
  *      IP: tunneling
      IP: GRE tunnels over IP
      [*] IP: broadcast GRE over IP
      [*] IP: multicast routing
      [*] IP: PIM-SM version 1 support
      [*] IP: PIM-SM version 2 support
  *     [*] IP: aliasing support
      [ ] IP: ARP daemon support (EXPERIMENTAL)
  *     [*] IP: TCP syncookie support (not enabled per default)
      --- (it is safe to leave these untoUChed)
      < > IP: Reverse ARP
      [*] IP: Allow large windows (not recommended if <16Mb of memory)
      < > The IPv6 protocol (EXPERIMENTAL)
  
   上面,帶*號的為必選項。

  然后就是常規(guī)的編譯內(nèi)核過程,不再贅述,請參考編譯 Linux 教程
  
  在這里要注重一點:假如你使用的是RedHat自帶的內(nèi)核或者從RedHat下載的內(nèi)核版本,已經(jīng)預先打好了LVS的補丁。這可以通過查看/usr/src/linux/net/目錄下有沒有幾個ipvs開頭的文件來判定:假如有,則說明已經(jīng)打過補丁。
  
  編寫LVS配置文件,實例中的配置文件如下: #lvs_dr.conf (C) Joseph Mack mack@ncifcrf.gov
  LVS_TYPE=VS_DR
  INITIAL_STATE=on
  VIP=eth0:101 192.168.0.101 255.255.255.0 192.168.0.0
  Director_INSIDEIP=eth0 192.168.0.1 192.168.0.0 255.255.255.0 192.168.0.255
  SERVICE=t telnet rr rs1:telnet rs2:telnet
  SERVICE=t www rr rs1:www rs2:www
  SERVER_VIP_DEVICE=dummy0
  SERVER_NET_DEVICE=eth0
  #----------end lvs_dr.conf------------------------------------
  
  將該文件置于/etc/lvs目錄下。
  
  使用LVS的配置腳本產(chǎn)生lvs.conf文件。該配置腳本可以從http://www.linuxvirtualserver.org/Joseph.Mack/configure-lvs_0.8.tar.gz 單獨下載,在ipvs-1.0.6-2.2.19.tar.gz包中也有包含。
  腳本configure的使用方法:
  
  [root@vs2 lvs]# configure lvs.conf
  
  這樣會產(chǎn)生幾個配置文件,這里我們只使用其中的rc.lvs_dr文件。
  
  修改/etc/rc.d/init.d/rc.local,增加如下幾行:
  echo 1 > /proc/sys/net/ipv4/ip_forward
  echo 1 > /proc/sys/net/ipv4/ip_always_defrag
  # 顯示最多調(diào)試信息
  echo 10 > /proc/sys/net/ipv4/vs/debug_level
  
  配置NFS服務。這一步僅僅是為了方便治理,不是必須的步驟。
  假設(shè)配置文件l

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 赣州市| 富裕县| 儋州市| 鄂州市| 睢宁县| 滦南县| 子长县| 朔州市| 确山县| 肇源县| 伊川县| 南丹县| 阿克陶县| 广德县| 延庆县| 石景山区| 寿光市| 开原市| 民勤县| 泰安市| 临夏市| 宁城县| 边坝县| 峨边| 南乐县| 博白县| 荃湾区| 额济纳旗| 新民市| 伊春市| 岐山县| 田林县| 朝阳市| 泸西县| 阿拉善右旗| 江川县| 临夏县| 元阳县| 元阳县| 新蔡县| 福建省|