1. 程式人生 > >redhat6.5 基於GUI虛擬化集群

redhat6.5 基於GUI虛擬化集群

必須 data inux tin 節點 仲裁 本機 最好 discover

由於種種原因,不能做實驗,這裏簡述下GUI的虛擬化集群


nat:宿主機要打開ip_forward功能,這樣才能與外網通信。
進入/etc/libvirt/qemu/network/default.xml
cp default.xml net1.xml
vim net1.xml
修改的地方name=net1,uuid,bridge name,mac,ip address真機的ip,range虛擬機的ip分配範圍
cd autostart目錄下ln -s ../net1.xml ./
service libvirtd restart
進入虛擬機對應的xml文件,修改網絡部分即可

橋接:1.關閉NetworkManager

2.cp ifcfg-eth0 ifcfg-br0
3.vim ifcfg-br0
DEVICE=br0
TYPE=Bridge
4.vim ifcfg=eth0
IPADDR,NETMASK,GATEWAY,DNS全部刪掉先
添加:BRIDGE=br0
5.service network restart
進入虛擬機對應的文件,修改網絡部分即可
*(修改虛擬機文件是需先關閉虛擬機)

基於GUI的虛擬集群

selinux和iptables關閉,然後做下ntp時間同步

1.yum install -y luci ricci(第二個節點只需要安裝ricci)
   或者yum groupinstall -y "High Availablity"(兩個節點都做)

2.service luci start(luci是圖形化管理)

3.service ricci start(兩個節點都設密碼)

4./etc/cluster/cluster.conf(主配置文件)
  或者訪問https://你機器的ip:8084
    你機器的用戶和密碼
接下來全是在GUI裏配置,鼠標點點   
5.create (創建集群)
   cluster name---集群名稱
     node name 節點名
     選擇download packages自動裝包

6.clustat(查看集群狀態)

7.fence devices(創建兩個虛擬fence設備與真機相關聯)
   fence virt

8.點擊節點名稱進入設置,添加一個虛擬fence,取名選擇之前創建好的fence(兩節點都做)

9.添加failover domain(失效域)
  name 
    restricted(勾選上)
    兩個節點勾選上

10.resources(資源)
    ip address x.x.x.100 (VIP)
        netmask 24
    再添加一個script
        name  httpd
        full path /etc/init.d/httpd 

11.service groups
    service name 
        automatically start this service (勾選上)
        failover domain
        recovery policy 選擇一種操作即可

        add child resource
        VIP
        http (節點上要先裝好包)

12 打開網頁,訪問x.x.x.100 即可訪問到某一節點的網站
GUI結束

13.故障切換前,要做一個fence驗證(這裏給個鏈接去看下怎麽配置,提醒一點)
    1.必須在你的宿主機做此操作,然後將key文件分別復制到對應節點的路徑下,路徑一定不能錯

14.命令行添加節點
   1.修改/etc/cluster/cluster.conf
      版本號+1
            下面的節點文件增加一個新節點

15.cman_tool version -r(同步版本號)

16.新加節點啟動三個服務,cman rgmanager modclusterd

17.clusvcadm -r web名 -m 新節點(將服務遷移到新節點上)

18新節點將fence設備拉取過來

19.發現問題,當連續關閉兩個節點後,第三臺節點不會向外提供服務,這裏就牽扯到權重問題

20.仲裁盤:
   新開一臺機器,添加一塊磁盤,分區給他100M空間
     yum install -y scsi*

     vim /etc/tgt/targets.conf
     在第38行左右將backing-store的路徑改成你的分區,上下兩行也同時開啟,三行為一個例子。
   service tgtd start
     chkconfig tgtd on

21.node1-3
     安裝iscsi*
     iscsiadm -m discovery -t st -p node4
         iscsiadm -m node -l
         mkqdisk -c /dev/你的新盤 -l 仲裁盤名稱

22.service luci stop
     rm -f /var/lib/luci/data/luci.db
         service luci start

GUI
23.直接add一個集群,然後點擊最後的configure
     qdisk 添加使用quorum disk
         by device label--仲裁盤名稱

         heuristics
         /bin/ping 宿主機ip -c 1  
         interval 10 (每10秒ping一次)
         score  1  (ping通加一分)
         tko  2 (ping兩次ping不通就廢掉他)

         minimum total score 1 (最小值為1)

24.共享存儲
    1.每個節點都去掛接nfs,給對應的用戶權限
    2.哪個節點對外提供服務就掛接nfs
       在GUI裏,點解resources,添加nfs/cifs mount
             name --起個名
             mount point---掛接本地那?
             host  ---nfs服務器ip(走內網最好)
             nfs export directory name or cifs share(nfs服務器的哪個文件?)

25.service groups添加resources的nfs名稱即可

26.高可用已完成,然而怎麽保證高可用的基礎上實現負載均衡呢?硬件的負載均衡排除,在linux系統上做lvs也可以做負載均衡,實現成本降低。

27.lvs是基於內核工作,在編譯內核時將lvs功能加進去,可以以文件的形式存在,也可以使用模塊的方式加載起立使用。軟件是用來定義規則,內核用來定義功能。

28.lvs-nat(兩個節點都要做)
     vim /etc/sysctl.conf
         net.ipv4.ip_forward = 1

         sysctl -p

         yum groupinstall -y "Load Balancer"(如果沒有該組包,自己找yum源)

         piranha-passed(設密碼)

         service piranha-gui start

29.打開網頁ip:3636訪問
        GLOBAL SETTINGS
        公網ip
        內網ip
        模式--nat
        router ip 內網ip最後一位改成254
        device eth1:1

        REDUNDANCY
        另一臺機器的公網內網ip

VIRTUAL SERVERS
添加規則,打開規則,編輯規則

name
port
protocol
VIP
device eth0:1(子接口)

REAL SERVER
添加兩個內網網口

MONITORING SCRIPTS
第一個   /bin/ceshi %h
第三個  yes
在本機
yum install -y links(兩臺都裝)
vim /bin/ceshi
#!/bin/bash
/usr/bin/links -dump 1 $1 > /dev/null 2>&1
if [ 0 -eq $? ] ; then
   echo yes
else
     echo no
     fi

chmod +x ceshi

scp /etc/sysconfig/ha/lvs.cf 另一臺機器
scp /bin/ceshi 另一臺機器

service pulse start(兩臺都起)

通過eth1登錄到機器(兩臺機器一樣)
ifdown eth0

route add default gw x.x.x.1
route add default gw x.x.x.254

service httpd start

fence使用

redhat6.5 基於GUI虛擬化集群