rhcs集群套件—紅帽6的高可用

含義及理解:

RHCS是Red Hat Cluster Suite的縮寫,也就是紅帽子集群套件,RHCS是一個能夠提供高可用性、高可靠性、負載均衡、存儲共享且經濟廉價的集群工具集合,,它將集群系統中三大集群架構(高可用性集群、負載均衡集群、存儲集群)融合一體,可以給web應用、數據庫應用等提供安全、穩定的運行環境。

主要功能:
1 . 高可用集群是RHCS的核心功能。當正使用的節點出現故障時,RHCS提供的高可用管理組件自動、快速的將應用使用的當前服務節點切換到另一個節點,保證應用的正常進行,而且節點轉移功能對客戶來說是透明的,所以也能實現應用持續、不間斷的對外提供服務!
2 . 負載均衡集群是RHCS通過使用LVS(Linux Virtual Server)實現的。LVS是 一個開源的且功能強大的基于IP的負載均衡技術,LVS 由調度器和服務器節點組成,通過LVS的負載調度功能,可以將客戶端請求平均的分配到各服務器節點上,當然,還可以自定義多種負載均衡策略,當客戶請求進來時,調度器根據負載均衡策略來判斷應該將請求分配到哪個服務器節點上,然后由分配的服務器節點去響應客戶請求。不僅如此,LVS 還提供了服務節點故障轉移功能,簡單來說就是當某個服務節點出故障后,LVS 會自動屏蔽這個節點,并將它從集群踢除,同時將新來此節點的請求平滑的轉移到其它正常節點上,當故障節點恢復正常后,LVS 又會自動將此節點加入集群中。這所有操作對客戶而言都是透明的,從而保證了服務的不間斷,穩定運行!
3 . 儲存集群功能是由GFS文件系統實現的。GFS(Global File System)是一個分布式文件系統,通過鎖管理機制,來協調和管理多個服務節點對同一文件系統的讀寫操作,允許多個服務同時去讀寫一個單一的共享文件系統;儲存集群通過將共享數據放到一個共享文件系統中,從而消除了在應用程序間同步的麻煩。

集群套件的作用:

1 . 集群中luci的作用:luci是用來配置和管理集群,監聽在8084上。
2 . 集群中ricci的作用:ricci是安裝在每個后端的每個節點上的,luci管理集群上的各個節點就是通過和節點上的ricci進行通信,ricci監聽在11111上。
3 . 集群中fence的作用:當意外原因導致主機異常或者宕機時,備機會首先調用FENCE設備,然后通過FENCE設備將異常主機重啟或者從網絡隔離,當FENCE操作成功執行后,返回信息給備機,備機在接到FENCE成功的信息后,開始接管主機的服務和資源。

實驗搭建:

準備三臺虛擬機6.5版本的,關火墻,selinux狀態為disabled

server1 :管理節點和HA節點 :172.25.11.1
server2 :HA節點 :172.25.11.2
server3 :作為iscsi共享磁盤 :172.25.11.3

給三臺虛擬機配置高可用yum源,

[rhel6.5]
name=rhel6.5
baseurl=http://172.25.11.250/rhel6.5
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release[HighAvailability]
name=HighAvailability
baseurl=http://172.25.11.250/rhel6.5/HighAvailability
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release[LoadBalancer]
name=LoadBalancer
baseurl=http://172.25.11.250/rhel6.5/LoadBalancer
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release[ResilientStorage]
name=ResilientStorage
baseurl=http://172.25.11.250/rhel6.5/ResilientStorage
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release[ScalableFileSystem]
name=ScalableFileSystem
baseurl=http://172.25.11.250/rhel6.5/ScalableFileSystem
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

配好之后yum repolist 查看一下
scp 拷給server2和server3

在server1上安裝ricci、luci:

yum install ricci luci -y    下載軟件
id ricci      會生成這個用戶
passwd ricci      給個密碼/etc/init.d/ricci start      開啟服務
/etc/init.d/luci start
chkconfig ricci on      開機自啟
chkconfig luci on

在server2上安裝ricci:

yum install ricci -y
id ricci
passwd ricci/etc/init.d/ricci start
chkconfig ricci on

測試:
真機打開瀏覽器輸入https://172.25.11.1:8084
注意要添加安全證書

在這里插入圖片描述
再將server1, server2添加到集群

在這里插入圖片描述

查看是否添加成功和集群狀態

cat /etc/cluster/cluster.conf
clustat

為RHCS高可用添加fence(柵)

首先配置好fence

yum install -y fence-virtd.x86_64 fence-virtd-libvirt.x86_64 fence-virtd-multicast.x86_64
Interface [virbr0]: br0		##設備選擇br0,其他用默認
mkdir /etc/cluster
dd if=/dev/urandom of=/etc/cluster/fence_xvm.key bs=128 count=1
scp fence_xvm.key root@server1:/etc/cluster/
scp fence_xvm.key root@server2:/etc/cluster/
systemctl start fence_virtd.service

在web里添加fence
Fence Devices---->Add---->submit

在這里插入圖片描述
分別為server1和server2添加fence,Domain為虛擬機的MAC地址,可在虛擬機管理器查看
在這里插入圖片描述
測試:
在server1上使用fence關掉server2
發現server2被重啟

fence_node server2
netstat -antulp | grep 1229 ##udp 1229端口

添加httpd資源
添加失敗回切和優先級:
Failover --> Add --> webfail --> Prioritized --> Restricted --> No Failback(此選項選中,failover的主機在再次正常時會按優先級大小回切,否則不會)
server2優先級為1,server5優先級為10,數字越小,優先級越高。

在這里插入圖片描述

添加vip資源:
Resources --> Add --> IP Address
172.25.11.100
24
Monitor Link(選中)
Number of … 5
在這里插入圖片描述
再添加服務
Resources --> Add --> Script
Name : httpd
Full Path to Script File : /etc/init.d/httpd
兩個節點都安裝并啟動httpd,寫默認發布頁面

在這里插入圖片描述
添加服務組到集群:
Service Groups --> Add
Service Name : apache
Automatically Start This Service : 選中
Run Exclusive : 運行獨占(先選中)
Failover Domain : webfail

在這里插入圖片描述
然后添加資源

Add Resource --> 172.25.0.100/24 --> Script —>submit ##添加IP和啟動腳本

添加好以后
測試:
勾選apache并點擊上方start

在真機crul 172.25.11.100
發現默認訪問到server2

使server2腦裂,測試fence:

echo c > /proc/sysrq-trigger
ip link set dowm eth0 (使網絡掛掉)

發現服務器由于server被重啟暫時回到server1上

在這里插入圖片描述

在web頁面點擊左邊第一個按鈕即start
在這里插入圖片描述

添加iscsi網絡共享磁盤

給server3在添加一塊虛擬磁盤

fdisk -l
fdisk /dev/vda
p 1 回車 回車 wqyum install -y scsi-*

配置server3的存儲:

vim /etc/tgt/targets.conf
38 <target iqn.2019-06.com.example:server.target1>
39     backing-store /dev/vda1 initiator-address 172.25.11.1initiator-address 172.25.11.2
40 </target>/etc/init.d/tgtd starttgt-admin -s		##查看存儲信息
ps ax			##看到有2個tgtd進程(如果有4個,就是錯誤的)

在server1和server2兩個ha節點上:
安裝客戶端

yum install iscsi-*  -y

在HA節點上發現并登陸共享存儲:

iscsiadm -m discovery -t st -p 172.25.11.3
iscsiadm -m node -l
fdisk -l 
fdisk -cu /dev/sdb   ##只分一個區,方便在分區表被破壞的時候恢復
pratprobe
fdisk /dev/sdb

同步過后在server2查看進程

partprobe
cat /proc/partitions

該文件格式在把分區改一下

mkfs.ext4 /dev/sdb1
fdisk /dev/sdb
t 8e wq
partprobe

在server1創建邏輯卷

pvcreate /dev/sdb1
vgcreate vg /dev/sdb1
lvcreate -L 4G -n lv vg
partprobe

在server2同步并查看

partprobe
lvs
pvs
vgs
mkfs.ext4 /dev/vg/lv

在web添加webdata(文件系統)
現在server1server2關閉apache

clusvcadm -d apache

點擊Service Groups,刪除原來的添加,重新配置,這次的添加順序是IP

Address —-> Filesystem —-> Script(因為服務開啟的順序就是先分配VIP,然后開啟存儲,然后再是服務)

測試:
啟動集群服務,發現server2自動掛載
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/542049.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/542049.shtml
英文地址,請注明出處:http://en.pswp.cn/news/542049.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

MapReduce二次排序

2019獨角獸企業重金招聘Python工程師標準>>> 默認情況下&#xff0c;Map輸出的結果會對Key進行默認的排序&#xff0c;但是有時候需要對Key排序的同時還需要對Value進行排序&#xff0c;這時候就要用到二次排序了。下面我們來說說二次排序 1、二次排序原理 我們把二…

數據有序_詳解數據庫插入性能優化:合并+事務+有序數據進行INSERT操作

概述對于一些數據量較大的系統&#xff0c;數據庫面臨的問題除了查詢效率低下&#xff0c;還有就是數據入庫時間長。特別像報表系統&#xff0c;每天花費在數據導入上的時間可能會長達幾個小時或十幾個小時之久。因此&#xff0c;優化數據庫插入性能是很有意義的。其實最有效的…

Java ProcessBuilder environment()方法與示例

ProcessBuilder類的environment()方法 (ProcessBuilder Class environment() method) environment() method is available in java.lang package. environment()方法在java.lang包中可用。 environment() method is used to return Map interfaces of this process builder env…

容器內應用日志收集方案

容器化應用日志收集挑戰 應用日志的收集、分析和監控是日常運維工作重要的部分&#xff0c;妥善地處理應用日志收集往往是應用容器化重要的一個課題。 Docker處理日志的方法是通過docker engine捕捉每一個容器進程的STDOUT和STDERR&#xff0c;通過為contrainer制定不同log dri…

python統計行號_利用Python進行數據分析(第三篇上)

上一篇文章我記錄了自己在入門 Python 學習的一些基礎內容以及實際操作代碼時所碰到的一些問題。這篇我將會記錄我在學習和運用 Python 進行數據分析的過程&#xff1a;介紹 Numpy 和 Pandas 兩個包運用 Numpy 和 Pandas 分析一維、二維數據數據分析的基本過程實戰項目【用 Pyt…

lnmp架構搭建—源碼編譯(nginx、mysql、php)

含義及理解&#xff1a; LNMP LinuxNginxMysqlPHP&#xff1a;LNMP是指一組通常一起使用來運行動態網站或者服務器的自由軟件名稱首字母縮寫。L指Linux&#xff0c;N指Nginx&#xff0c;M一般指MySQL&#xff0c;也可以指MariaDB&#xff0c;P一般指PHP&#xff0c;也可以指P…

Java PipedInputStream available()方法與示例

PipedInputStream類的available()方法 (PipedInputStream Class available() method) available() method is available in java.io package. available()方法在java.io包中可用。 available() method is used to return the number of available bytes left that can be read …

解析xml_Mybatis中mapper的xml解析詳解

上一篇文章分析了mapper注解關鍵類MapperAnnotationBuilder&#xff0c;今天來看mapper的項目了解析關鍵類XMLMapperBuilder。基礎介紹回顧下之前是在分析configuration的初始化過程&#xff0c;已經進行到了最后一步mapperElement(root.evalNode("mappers"))&#x…

lnmp—MemCache的作用

含義及理解&#xff1a; 1 . memcache是一個高性能的分布式的內存對象緩存系統&#xff0c;用于動態web應用以減輕數據庫負擔。通過在內存里維護一個統一的巨大的hash表&#xff0c;來存儲經常被讀寫的一些數組與文件&#xff0c;從而極大的提高網站的運行效率。 memcache是一…

Java ListResourceBundle getKeys()方法與示例

ListResourceBundle類的getContents()方法 (ListResourceBundle Class getContents() method) getContents() method is available in java.util package. getContents()方法在java.util包中可用。 getContents() method is used to return an enumeration of all the keys tha…

orale用戶密碼過期處理

使用具有管理權限的用戶登錄1、查看用戶的proifle是哪個&#xff0c;一般是default&#xff1a;SELECT username,PROFILE FROM dba_users;2、查看指定概要文件&#xff08;如default&#xff09;的密碼有效期設置&#xff1a;sql>SELECT * FROM dba_profiles s WHERE s.prof…

python字典怎么設置_在python中設置字典中的屬性

在python中設置字典中的屬性是否可以在python中從字典創建一個對象&#xff0c;使每個鍵都是該對象的屬性&#xff1f;像這樣的東西&#xff1a;d { name: Oscar, lastName: Reyes, age:32 }e Employee(d)print e.name # Oscarprint e.age 10 # 42我認為這幾乎與這個問題相反…

Java ObjectInputStream readByte()方法與示例

ObjectInputStream類readByte()方法 (ObjectInputStream Class readByte() method) readByte() method is available in java.io package. readByte()方法在java.io包中可用。 readByte() method is used to read a byte (i.e. 8 bit) of data from this ObjectInputStream. re…

openresty—實現緩存前移

含義及理解&#xff1a; OpenResty(又稱&#xff1a;ngx_openresty) 是一個基于 NGINX 的可伸縮的 Web 平臺&#xff0c;由中國人章亦春發起&#xff0c;提供了很多高質量的第三方模塊。 其目標是讓Web服務直接跑在Nginx服務內部&#xff0c;充分利用Nginx的非阻塞I/O模型&am…

Nginx+Keepalived+Tomcat之動靜分離的web集群

NginxKeepalivedTomcat之動靜分離的web集群 博客分類&#xff1a; webserverNginxKeepalivedTomcat之動靜分離的web集群為小公司提供大概一天持續在100萬/日之間訪問的高性能、高可用、高并發訪問及動靜分離的web集群方案NginxKeepalived 高可用、反向代理NginxPHP …

安裝完成后的配置_cent os7 默認安裝后的一般配置

在安裝cent os7后&#xff0c;進入系統會出現一些命令無法執行。這是因為最小化沒有安裝包含的軟件包。這時候先要配置一下基本的IP參數&#xff0c;(包括動態&#xff0c;靜態&#xff0c;或者是雙網卡綁定)。我們在虛擬機中模擬操作一下&#xff0c;配置文件在/etc/sysconfig…

Java Integer類lowerOneBit()方法與示例

整數類lowerOneBit()方法 (Integer class lowestOneBit() method) lowestOneBit() method is available in java.lang package. minimumOneBit()方法在java.lang包中可用。 lowestOneBit() method is used to find at most only single 1’s bit from the rightmost side one b…

lnmp構架——對tomcat詳解

tomcat的安裝部署 安裝jdk和tomcat tar zxf jdk-7u79-linux-x64.tar.gz -C /usr/local/ tar zxf apache-tomcat-7.0.37.tar.gz -C /usr/local/做好軟連接便于訪問 cd /usr/local ln -s jdk1.7.0_79/ java ln -s apache-tomcat-7.0.37/ tomcat配置環境變量 vim /etc/profile…

Linux 查找文件

find 查找目錄 -name "文件名"find / -name "php.ini"locate 文件名locate php.ini 一&#xff1a;locate命令 locate命令用于查找文件&#xff0c;它比find命令的搜索速度快&#xff0c;它需要一個數據庫&#xff0c;這個數據庫由每天的例行工作&#xff…

Java GregorianCalendar hashCode()方法與示例

GregorianCalendar類的hashCode()方法 (GregorianCalendar Class hashCode() method) hashCode() method is available in java.util package. hashCode()方法在java.util包中可用。 hashCode() method is used to returns the hash code for this GregorianCalendar. hashCode…