隨筆 - 67  文章 - 79  trackbacks - 0
          <2025年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          常用鏈接

          留言簿(1)

          隨筆檔案

          文章檔案

          相冊

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          使用CentOS 5.3 系統(tǒng)搭建兩點集群和防火墻

          Author: zarra <zarraxx@gmail.com>
          Version: 0.1
          Revision: &LastChangedRevision&

          1   說明

          為了防病毒和網(wǎng)絡(luò)安全的要求,需要將各放射科工作站同PACS服務(wù)器的連接方式:由原來的直接連接改為通過防火墻的連接。為了保證系統(tǒng)的穩(wěn)定性和安全性,決定采用雙Linux服務(wù)器來架設(shè)一集群系統(tǒng),來達(dá)到高可用性要求。

          2   CentOS 5.3下的集群搭建

          2.1   CentOS的安裝

          最新的CentOS 5.3版本已經(jīng)可以自動加載Dell R200的Raid卡驅(qū)動,所以不需要Dell提供的引導(dǎo)盤也可以直接安裝。安裝過程很簡單,依照提示進(jìn)行即可。

          2.2   Dell R200服務(wù)器IPMI設(shè)備的設(shè)置

          CentOS是RedHat的社區(qū)編譯版,所以也就采用了RedHat ES 中的集群套件:RHCS。在RHCS架構(gòu)中,F(xiàn)ence設(shè)備十分重要,關(guān)系到故障恢復(fù)和數(shù)據(jù)一致性。在這里,我們使用服務(wù)器上主板提供的IPMI設(shè)備來實現(xiàn)Fence的功能。

          IPMI是一種遠(yuǎn)程查詢和控制服務(wù)器基本狀態(tài)的協(xié)議,目前的主流服務(wù)器產(chǎn)品基本都提供了這種協(xié)議的實現(xiàn)。在Linux中可以使用OpenIPMI軟件包來設(shè)置和使用IPMI。

          2.2.1   IPMI的配置:

          啟動IPMI服務(wù):

          [zarra@node1 ~]$ sudo service ipmi start
          Starting ipmi drivers: [確定]

          設(shè)置IPMI接口網(wǎng)絡(luò)地址、掩碼、默認(rèn)網(wǎng)關(guān):

          [zarra@node1 ~]$sudo ipmitool lan set 1 ipsrc static
          [zarra@node1 ~]$sudo ipmitool lan set 1 ipaddr 10.0.0.10
          [zarra@node1 ~]$sudo ipmitool lan set 1 netmask 255.255.255.0
          [zarra@node1 ~]$sudo ipmitool lan set 1 arp respond on
          [zarra@node1 ~]$sudo ipmitool lan set 1 arp gernerate on
          [zarra@node1 ~]$sudo ipmitool lan set 1 arp interval 5

          設(shè)置IPMI用戶和口令:

          [zarra@node1 ~]$sudo ipmitool lan set 1 user
          [zarra@node1 ~]$sudo ipmitool lan set 1 access on
          [zarra@node1 ~]$sudo ipmitool user list
          ID Name Callin Link Auth IPMI Msg Channel Priv Limit
          2 root true true true ADMINISTRATOR
          [zarra@node1 ~]$sudo ipmitool user set password 2
          Password for user 2: Enter your password
          Password for user 2: Enter your password

          2.2.2   檢查IPMI設(shè)置

          設(shè)置好IPMI地址和用戶后,可以使用命令來檢查服務(wù)器的基本狀態(tài),例如:

          [zarra@node1 ~]$sudo ipmitool -H 10.0.0.1 -I lan -U root -P password power status

          IPMI的設(shè)置基本就是如上過程,兩臺服務(wù)其的IPMI 具體參數(shù)如下:

          [zarra@node1 ~]$ sudo ipmitool lan print 1
          Set in Progress : Set Complete
          Auth Type Support : NONE MD2 MD5 PASSWORD
          Auth Type Enable : Callback : MD2 MD5
          : User : MD2 MD5
          : Operator : MD2 MD5
          : Admin : MD2 MD5
          : OEM : MD2 MD5
          IP Address Source : Static Address
          IP Address : 10.0.0.10
          Subnet Mask : 255.255.255.0
          MAC Address : 00:22:19:d6:05:38
          SNMP Community String : public
          IP Header : TTL=0x40 Flags=0x40 Precedence=0x00 TOS=0x10
          Default Gateway IP : 10.10.71.240
          Default Gateway MAC : 00:00:00:00:00:00
          Backup Gateway IP : 0.0.0.0
          Backup Gateway MAC : 00:00:00:00:00:00
          802.1q VLAN ID : Disabled
          802.1q VLAN Priority : 0
          Cipher Suite Priv Max : Not Available
          [zarra@node2 ~]$ sudo ipmitool lan print 1
          Set in Progress : Set Complete
          Auth Type Support : NONE MD2 MD5 PASSWORD
          Auth Type Enable : Callback : MD2 MD5
          : User : MD2 MD5
          : Operator : MD2 MD5
          : Admin : MD2 MD5
          : OEM : MD2 MD5
          IP Address Source : Static Address
          IP Address : 10.0.0.11
          Subnet Mask : 255.255.255.0
          MAC Address : 00:22:19:d5:f4:61
          SNMP Community String : public
          IP Header : TTL=0x40 Flags=0x40 Precedence=0x00 TOS=0x10
          Default Gateway IP : 10.10.71.240
          Default Gateway MAC : 00:00:00:00:00:00
          Backup Gateway IP : 0.0.0.0
          Backup Gateway MAC : 00:00:00:00:00:00
          802.1q VLAN ID : Disabled
          802.1q VLAN Priority : 0
          Cipher Suite Priv Max : Not Available

          2.3   各節(jié)點網(wǎng)絡(luò)地址的設(shè)置

          修改兩節(jié)點服務(wù)器上的 /etc/hosts 文件,內(nèi)容如下:

          [zarra@node1 ~]$ cat /etc/hosts
          # Do not remove the following line, or various programs
          # that require network functionality will fail.
          127.0.0.1 localhost.localdomain localhost
          10.0.0.1 node1.test.com node1
          10.0.0.2 node2.test.com node2
          10.10.71.42 cluster.test.com cluster

          節(jié)點一服務(wù)器上的網(wǎng)絡(luò)設(shè)置:

          [zarra@node1 ~]$ cat /etc/sysconfig/network
          NETWORKING=yes
          NETWORKING_IPV6=no
          HOSTNAME=localhost.localdomain
          GATEWAY=10.10.71.240
          [zarra@node1 ~]$ cat /etc/sysconfig/network-scripts/ifcfg-eth0
          # Broadcom Corporation NetXtreme BCM5721 Gigabit Ethernet PCI Express
          DEVICE=eth0
          BOOTPROTO=static
          HWADDR=00:22:19:D6:05:36
          ONBOOT=yes
          NETMASK=255.255.255.0
          IPADDR=10.0.0.1
          TYPE=Ethernet
          USERCTL=no
          IPV6INIT=no
          [zarra@node1 ~]$ cat /etc/sysconfig/network-scripts/ifcfg-eth1
          # Broadcom Corporation NetXtreme BCM5721 Gigabit Ethernet PCI Express
          DEVICE=eth1
          BOOTPROTO=static
          HWADDR=00:22:19:D6:05:37
          ONBOOT=yes
          IPADDR=10.10.71.40
          NETMASK=255.255.255.0
          TYPE=Ethernet

          節(jié)點二服務(wù)器上的網(wǎng)絡(luò)設(shè)置:

          [zarra@node2 ~]$ cat /etc/sysconfig/network
          NETWORKING=yes
          NETWORKING_IPV6=no
          HOSTNAME=localhost.localdomain
          GATEWAY=10.10.71.240
          [zarra@node2 ~]$ cat /etc/sysconfig/network-scripts/ifcfg-eth0
          # Broadcom Corporation NetXtreme BCM5721 Gigabit Ethernet PCI Express
          DEVICE=eth0
          BOOTPROTO=none
          HWADDR=00:22:19:D5:F4:5F
          ONBOOT=yes
          IPADDR=10.0.0.2
          NETMASK=255.255.255.0
          TYPE=Ethernet
          USERCTL=no
          IPV6INIT=no
          [zarra@node2 ~]$ cat /etc/sysconfig/network-scripts/ifcfg-eth1
          # Broadcom Corporation NetXtreme BCM5721 Gigabit Ethernet PCI Express
          DEVICE=eth1
          BOOTPROTO=static
          HWADDR=00:22:19:D5:F4:60
          IPADDR=10.10.71.41
          NETMASK=255.255.255.0
          ONBOOT=yes
          TYPE=Ethernet

          2.4   集群套件的安裝和設(shè)置

          2.4.1   安裝RHCS集群套件:

          2.4.1.1   節(jié)點服務(wù)器上的安裝

          如果在系統(tǒng)安裝是選擇了Clustering支持,那么就會自動安裝RHCS集群套件。如果想手動安裝,可以執(zhí)行如下命令:

          [zarra@node1 ~]$ sudo yum groupinstall clustering

          安裝完成后,檢查 ricci 服務(wù)狀態(tài),應(yīng)該如下所示:

          [zarra@node1 ~]$ chkconfig ricci --list
          ricci 0:關(guān)閉 1:關(guān)閉 2:啟用 3:啟用 4:啟用 5:啟用 6:關(guān)閉

          如果沒有設(shè)為啟動,執(zhí)行如下命令:

          [zarra@node1 ~]$ sudo chkconfig ricci on

          然后啟動 ricci 服務(wù):

          [zarra@node1 ~]$ sudo service ricci start

          在node2 上執(zhí)行同樣的操作,以完成集群套件的安裝。

          2.4.1.2   Conga服務(wù)器的安裝

          在 RedHat ES 5.0 系統(tǒng)中提供了Conga這一Web界面的集群設(shè)置工具,方便了集群設(shè)置。Conga工具最好是安裝在集群外的一臺服務(wù)器上。在準(zhǔn)備安裝Conga的服務(wù)器上執(zhí)行:

          [zarra@localhost ~]$ sudo yum install luci

          安裝完成后設(shè)置Luci的admin用戶口令,執(zhí)行命令:

          [zarra@localhost ~]$ sudo luci_admin init

          然后依據(jù)提示設(shè)置口令。完成后即可開啟luci服務(wù):

          [zarra@localhost ~]$ sudo chkconfig luci on
          [zarra@localhost ~]$ sudo service luci start
          Starting luci: [確定]
          Point your web browser to https://node1.test.com:8084 to access luci

          依據(jù)提示登陸 https://node1.test.com:8084 進(jìn)行集群設(shè)置。

          2.4.2   RHCS集群的設(shè)置:

          打開Web瀏覽器登陸Conga服務(wù)器,如圖所示:

          images/image1.png

          進(jìn)入“Cluster”標(biāo)簽,點擊 “Create a New Cluster” 按鈕,進(jìn)行建立集群操作,如圖所示:

          images/image2.png

          點擊 “Add a Failover Domain”按鈕,建立實效域,如圖

          images/image3.png

          點擊 “Add a Resource” 按鈕,建立兩個IP地址資源,完成后Resource頁面如圖所示:

          images/image4.png

          點擊 “Add a Service”按鈕,建立iptables服務(wù),完成后應(yīng)如圖所示:

          images/image5.png

          依次配置各節(jié)點服務(wù)器的Fence設(shè)備,完成后如圖所示:

          Node1

          images/image6.png

          Node2

          images/image7.png

          設(shè)置完成后 cluster.conf 應(yīng)該如下所示:

          [zarra@node1 ~]$ sudo cat /etc/cluster/cluster.conf
          <?xml version="1.0"?>
          <cluster alias="cluster_test" config_version="17" name="cluster_test">
          <fence_daemon clean_start="0" post_fail_delay="0" post_join_delay="3"/>
          <clusternodes>
          <clusternode name="node1.test.com" nodeid="1" votes="1">
          <fence>
          <method name="1">
          <device name="node1_ipmi"/>
          </method>
          </fence>
          </clusternode>
          <clusternode name="node2.test.com" nodeid="2" votes="1">
          <fence>
          <method name="1">
          <device name="node2_ipmi"/>
          </method>
          </fence>
          </clusternode>
          </clusternodes>
          <cman expected_votes="1" two_node="1"/>
          <fencedevices>
          <fencedevice agent="fence_ipmilan" ipaddr="10.0.0.11" login="root" name="node2_ipmi" passwd="adaptor"/>
          <fencedevice agent="fence_ipmilan" ipaddr="10.0.0.10" login="root" name="node1_ipmi" passwd="adaptor"/>
          </fencedevices>
          <rm>
          <failoverdomains>
          <failoverdomain name="firewall" nofailback="0" ordered="1" restricted="1">
          <failoverdomainnode name="node1.test.com" priority="1"/>
          <failoverdomainnode name="node2.test.com" priority="10"/>
          </failoverdomain>
          </failoverdomains>
          <resources>
          <ip address="10.10.71.42" monitor_link="1"/>
          <ip address="10.0.0.4" monitor_link="1"/>
          </resources>
          <service autostart="1" domain="firewall" exclusive="0" name="iptables" recovery="relocate">
          <ip ref="10.10.71.42"/>
          <ip ref="10.0.0.4"/>
          </service>
          </rm>
          </cluster>

          3   集群系統(tǒng)中可切換故障及不可切換故障的說明和分析

          搭建集群的目的是為了獲得高可用(HA)系統(tǒng),也就是說在此系統(tǒng)上需要遵守以下兩個原則:

          • 集群的故障率要小于原來的單機環(huán)境
          • 在集群環(huán)境中發(fā)生的故障所產(chǎn)生破壞性,不能超過原來的單機環(huán)境
          posted on 2009-07-03 11:05 zarra 閱讀(1345) 評論(1)  編輯  收藏

          FeedBack:
          # re: [未完成]使用CentOS 5.3 系統(tǒng)搭建兩點集群和防火墻[未登錄] 2009-07-04 18:34 apple
          這么短的時間竟然研究出這么多東西~~厲害的~~  回復(fù)  更多評論
            

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 荔浦县| 磴口县| 河间市| 上犹县| 开江县| 建瓯市| 凤城市| 彭州市| 循化| 宜都市| 白玉县| 镇巴县| 绥化市| 都江堰市| 根河市| 勃利县| 聊城市| 泌阳县| 浠水县| 永城市| 枣庄市| 永新县| 甘南县| 河北区| 景东| 拜城县| 浏阳市| 社旗县| 克拉玛依市| 延吉市| 满洲里市| 中超| 富平县| 抚顺市| 榆中县| 宁河县| 讷河市| 宁乡县| 乐至县| 读书| 古交市|