Glusterfs 分散式儲存安裝部署
Glusterfs 分散式儲存部署 是儲存當中可以選擇的一種 現在很多虛擬化 雲端計算都在用軟體儲存 例如 ceph
Glusterfs 等等 今天我們部署一下Glusterfs環境
GlusterFs安裝
環境資訊:
Glusterfs-01 | 10.20.0.200 |
Glusterfs-02 | 10.20.0.201 |
Glusterfs-03 | 10.20.0.202 |
硬碟各一塊 8G 測試 /dev/sdb
伺服器版本資訊
# cat /etc/redhat-release CentOS release 6.6 (Final)
# uname -r
2.6.32-504.el6.x86_64
軟體下載地址
http://download.gluster.org/pub/gluster/glusterfs/3.4/3.4.6/CentOS/epel-6.6/x86_64
依賴包安裝
直接用Yum安裝 每臺都需要安裝
# yum -y install libibverbs librdmacm xfsprogs nfs-utils rpcbind libaio liblvm2app lvm2-devel
軟體安裝
安裝伺服器端軟體包
glusterfs-3.4.6-1.el6.x86_64.rpm glusterfs-api-3.4.6-1.el6.x86_64.rpm glusterfs-cli-3.4.6-1.el6.x86_64.rpm glusterfs-fuse-3.4.6-1.el6.x86_64.rpm glusterfs-libs-3.4.6-1.el6.x86_64.rpm glusterfs-server-3.4.6-1.el6.x86_64.rpm
安裝客戶端軟體包
glusterfs-3.4.6-1.el6.x86_64.rpm glusterfs-fuse-3.4.6-1.el6.x86_64.rpm glusterfs-libs-3.4.6-1.el6.x86_64.rpm
磁碟配置
磁碟分割槽:
EXT4格式化工具目前最大支援16TB
使用parted進行磁碟分割槽
分割槽格式化
每個伺服器上面都需要至少新增一塊硬碟 我們這邊是用的1塊8G硬碟 現在每臺都格式化
# mkfs.ext4 -L /brick1 /dev/sdb mke2fs 1.41.12 (17-May-2010) /dev/sdb is entire device, not just one partition! Proceed anyway? (y,n) y Filesystem label=/brick1 OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 524288 inodes, 2097152 blocks 104857 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=2147483648 64 block groups 32768 blocks per group, 32768 fragments per group 8192 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632 Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 39 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.
自動掛載分割槽
# vim /etc/fstab LABEL=/brick1 /brick1 ext4 defaults 0 0
mount檔案系統
# mkdir /brick1 # mount -L /brick1 /brick1/ # df -kh Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup-lv_root 47G 759M 44G 2% / tmpfs 491M 0 491M 0% /dev/shm /dev/sda1 477M 28M 425M 6% /boot /dev/sdb 7.8G 18M 7.4G 1% /brick1
基礎測試包安裝 效能測試包
工具軟體
Atop,iperf,sysstat
dd,lozone,fio,postmark
工具安裝
#rpm -ivh http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum install sysstat
Gcc -o postmark postmark-1.52.c
有些可以用yum安裝
安裝GlusterFS軟體包
每臺建立存放軟體的目錄 我們目前安裝的是3.4.6的版本
#mdkir /home/tools/3.4.6 -p #cd /home/tools/3.4.6 # ll total 2164 -rw-r--r-- 1 root root 1027320 Oct 4 11:13 glusterfs-3.4.6-1.el6.x86_64.rpm -rw-r--r-- 1 root root 66680 Oct 4 11:13 glusterfs-api-3.4.6-1.el6.x86_64.rpm -rw-r--r-- 1 root root 108872 Oct 4 11:14 glusterfs-cli-3.4.6-1.el6.x86_64.rpm -rw-r--r-- 1 root root 88452 Oct 4 11:14 glusterfs-fuse-3.4.6-1.el6.x86_64.rpm -rw-r--r-- 1 root root 124288 Oct 4 11:14 glusterfs-geo-replication-3.4.6-1.el6.x86_64.rpm -rw-r--r-- 1 root root 227900 Oct 4 11:14 glusterfs-libs-3.4.6-1.el6.x86_64.rpm -rw-r--r-- 1 root root 50128 Oct 4 11:14 glusterfs-rdma-3.4.6-1.el6.x86_64.rpm -rw-r--r-- 1 root root 504744 Oct 4 11:14 glusterfs-server-3.4.6-1.el6.x86_64.rpm
直接rpm安裝
# rpm -ivh *.rpm warning: glusterfs-3.4.6-1.el6.x86_64.rpm: Header V4 RSA/SHA1 Signature, key ID 4ab22bb3: NOKEY Preparing... ########################################### [100%] 1:glusterfs-libs ########################################### [ 13%] 2:glusterfs ########################################### [ 25%] 3:glusterfs-fuse ########################################### [ 38%] 4:glusterfs-cli ########################################### [ 50%] 5:glusterfs-server ########################################### [ 63%] 6:glusterfs-geo-replicati########################################### [ 75%] 7:glusterfs-api ########################################### [ 88%] 8:glusterfs-rdma ########################################### [100%]
安裝成功啟動GlusterFS
# service glusterd start Starting glusterd: [ OK ] # chkconfig glusterd on
組建叢集擴充套件
在GlusterFS-01伺服器上面操作 選擇10.20.0.200 作為當前叢集節點
新增另外兩臺伺服器
# gluster peer probe 10.20.0.201 peer probe: success # gluster peer probe 10.20.0.202 peer probe: success
GlusterFS-01伺服器檢視新增狀態
# gluster peer status Number of Peers: 2 Hostname: 10.20.0.201 Port: 24007 Uuid: c4d9edfd-d6ae-4628-8ab3-5a9fbb5f18fc State: Peer in Cluster (Connected) Hostname: 10.20.0.202 Port: 24007 Uuid: c0b425bb-a7b4-4dae-bc19-ea6031bf02b9 State: Peer in Cluster (Connected)
GlusterFS-02伺服器檢視新增狀態
# gluster peer status Number of Peers: 2 Hostname: 10.20.0.200 Port: 24007 Uuid: 7ad4db05-ee75-44e6-8213-e58072b62d33 State: Peer in Cluster (Connected) Hostname: 10.20.0.202 Uuid: c0b425bb-a7b4-4dae-bc19-ea6031bf02b9 State: Peer in Cluster (Connected)
GlusterFS-03伺服器檢視新增狀態
# gluster peer status Number of Peers: 2 Hostname: 10.20.0.200 Port: 24007 Uuid: 7ad4db05-ee75-44e6-8213-e58072b62d33 State: Peer in Cluster (Connected) Hostname: 10.20.0.201 Uuid: c4d9edfd-d6ae-4628-8ab3-5a9fbb5f18fc State: Peer in Cluster (Connected)
表示成功
如果新增不成功 排除錯誤:
1,每臺伺服器是否能否Ping通
2,防火牆是否關閉iptables selinux
3,glusterd服務是否啟動成功
建立卷
- 確定建立卷的型別
- 確定建立卷的brick列表
- 確實建立卷的網路型別(TCP/RDMA)
Gluster volume create建立卷
在GlusterFS-01伺服器上面操作 可以任選一臺
# gluster volume create dht-vol1 10.20.0.200:/brick1/b1 10.20.0.201:/brick1/b2 10.20.0.202:/brick1/b 3 volume create: dht-vol1: success: please start the volume to access data
(1)distribute volume:分散式卷,檔案通過hash演算法分佈到brick server上,這種卷是glusterfs的基礎和最大特點;
(2)stripe volume:條帶卷,類似RAID0,條帶數=brick server數量,檔案分成資料塊以Round Robin方式分佈到brick server上,併發粒度是資料塊,大檔案效能高;
(3)replica volume:映象卷,類似RAID1,映象數=brick server數量,所以brick server上檔案資料相同,構成n-way映象,可用性高;
(4)distribute stripe volume:分散式條帶卷,brick server數量是條帶數的倍數,兼具distribute和stripe卷的特點;
(5)distribute replica volume:分散式映象卷,brick server數量是映象數的倍數,兼具distribute和replica卷的特點
檢視卷狀態資訊
# gluster volume info Volume Name: dht-vol1 Type: Distribute Volume ID: 7d947cf1-c743-477e-a28d-7d030572b655 Status: Created Number of Bricks: 3 Transport-type: tcp Bricks: Brick1: 10.20.0.200:/brick1/b1 Brick2: 10.20.0.201:/brick1/b2 Brick3: 10.20.0.202:/brick1/b3
啟動卷
# gluster volume start dht-vol1 volume start: dht-vol1: success
客戶端掛載卷
# mkdir /data # mount -t glusterfs 10.20.0.200:/dth-vol1 /data/ # df -kh Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup-lv_root 47G 1.1G 44G 3% / tmpfs 491M 0 491M 0% /dev/shm /dev/sda1 477M 28M 425M 6% /boot /dev/sdb 7.8G 19M 7.4G 1% /brick1 10.20.0.200:/dth-vol1 24G 55M 22G 1% /data
注:這個預設卷型別 是3塊盤 加起來的容量
測試 建立replic 複製卷
#gluster volume create rep1 replica 3 10.20.0.200:/brick1/b20 10.20.0.201:/brick1/b20 10.20.0.202:/brick1/b20
客戶端掛載
# mkdir /data1 # mount -t glusterfs 10.20.0.200:/rep1 /data1 # df -kh Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup-lv_root 47G 1.1G 44G 3% / tmpfs 491M 0 491M 0% /dev/shm /dev/sda1 477M 28M 425M 6% /boot /dev/sdb 7.8G 19M 7.4G 1% /brick1 10.20.0.200:/dth-vol1 24G 55M 22G 1% /data 10.20.0.200:/rep1 7.8G 19M 7.4G 1% /data1
注:replic型別 是複製模式 相當於raid1 一塊盤的容量
常規命令:
新增磁碟
gluster volume add-brick dht-vol1 10.20.0.200:/brick1/b1 rebalance 同步資料 gluster volume rebalance dht-vol1 start
刪除磁碟
gluster volume remove-brick dht-vol1 10.20.0.200:/brick1/b1 gluster volume rebalance dht-vol1 start
刪除卷
先停止 在刪除
# gluster volume stop dht-vol1 Stopping volume will make its data inaccessible. Do you want to continue? (y/n) y volume stop: dht-vol1: success # gluster volume delete dht-vol1 Deleting volume will erase all information about the volume. Do you want to continue? (y/n) y volume delete: dht-vol1: success # gluster volume info No volumes present
叢集擴充套件
增加節點
gluster peer probe IP/主機名
刪除節點
gluster peer detach IP/主機名
節點狀態
gluster peer status
GlusterFS典型故障處理:
1,恢復節點配置資訊
故障現象:其中一個節點配置資訊不正確
故障模擬:
刪除server2部分配置資訊
配置資訊位置:/var/lib/glusterd/
修復方法
觸發自修復:通過Gluster工具同步配置資訊
gluster volume sync server1 all
2,複製卷資料不一致
故障現象:雙副本卷資料出現不一致
故障模擬:刪除其中一個brick資料
修復方法
新mount一下
3 複製卷的目錄刪除了
如何解決
修復方法:
先替換brick
#gluster volume replace-brick bbs_img 10.20.0.201:/brick1/share2 10.20.0.201:/brick1/share start
#gluster volume replace-brick bbs_img 10.20.0.201:/brick1/share2 10.20.0.201:/brick1/share commit
還原的時候注意會報錯
解決辦法
rm -rf /data/share2/.glusterfs
setfattr -x trusted.glusterfs.volume-id /data/share2
setfattr -x trusted.gfid /data/share2
相關推薦
Glusterfs 分散式儲存安裝部署
Glusterfs 分散式儲存部署 是儲存當中可以選擇的一種 現在很多虛擬化 雲端計算都在用軟體儲存 例如 ceph Glusterfs 等等 今天我們部署一下Glusterfs環境 GlusterFs安裝 環境資訊: Gluster
glusterfs(分散式儲存)部署
glusterfs(分散式儲存)是企業中的主流部署形式 準備: 將所有節點寫入: 192.168.1.21 server1 192.168.1.111 server2, 將節點的hostname名字改成對應的server glusterfs資料盤需要和系統盤隔
大資料分散式儲存的部署模式:分離式or超融合
大資料分散式儲存的部署模式:分離式or超融合 資料中心內部系統的核心要求是“穩定可靠”,一是指系統在執行過程中有能力提供連續可靠的服務,長時間無故障執行;二是指當故障發生之後,有能力快速定位,及時排查,故障範圍不蔓延。 分離式部署的方式,使得系統與雲平臺系統相獨立,避免了計算和儲存爭搶CPU
持續整合系列(6)------分散式儲存ceph部署
持續整合系列(6)------k8s結合ceph實現動態申請pv 目標 預設情況下,pod使用的儲存需要先手動建立pv,再通過pvc申請已建立的pv,步驟繁瑣;利用kubernetes的新特性allows storage volumes to be cre
GlusterFS分散式儲存系統
一,分散式檔案系統理論基礎 1.1 分散式檔案系統出現 計算機通過檔案系統管理,儲存資料,而現在資料資訊爆炸的時代中人們可以獲取的資料成指數倍的增長,單純通過增加硬碟個數來擴充套件計算機檔案系統的儲存容量的方式,已經不能滿足目前的需求。 分散式檔案系統可以有效解決資料的儲存和管理難題,將固定於某
關於 Kubernetes 中的 Volume 與 GlusterFS 分散式儲存
容器中持久化的檔案生命週期是短暫的,如果容器中程式崩潰宕機,kubelet 就會重新啟動,容器中的檔案將會丟失,所以對於有狀態的應用容器中持久化儲存是至關重要的一個環節;另外很多時候一個 Pod 中可能包含多個 Docker 映象,在 Pod 內資料也需要相互共享,Kubernetes 中 Pod 也可以增
Glusterfs 分散式儲存系統配置
在伺服器叢集中,為了同步更新APP內容,利用Glusterfs分散式儲存功達到相同的APP只更新一次,其他機器同步更新試驗環境:Vmware Fusion3.1.1 CentOS 5.51.安裝#yum -y install glusterfs-cluster gluster
GlusterFS 分散式儲存
一、GlusterFS概述; 概述:GlusterFS(Google File System)是一個開源的分散式檔案系統,Gluster 藉助 TCP/IP 網 絡將儲存資源分散儲存在網路的不同節點,在通過匯聚為客戶端提供統一的資源訪問,在存 儲方面具有很強大的橫向擴充套件
HBase 1.2.6 完全分散式叢集安裝部署詳細過程
Apache HBase 是一個高可靠性、高效能、面向列、可伸縮的分散式儲存系統,是NoSQL資料庫,基於Google Bigtable思想的開源實現,可在廉價的PC Server上搭建大規模結構化儲存叢集,利用Hadoop HDFS作為其檔案儲存系統,利用Hadoo
ceph儲存 安裝部署Ceph Calamari經典示例
### salt-master # iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 4505 -j ACCEPT # iptables -A INPUT -m state --state NEW -m tcp -p tcp --dpor
分散式儲存系統GlusterFS最新版本安裝
GlusterFS已經被Red Hat收購了,成為其企業級解決方案的一部分。GlusterFS最近釋出了多個新版本,尤其是建立了新的GlusterD 2架構,開始原廠支援Kubernetes,不過目前還沒有達到Heketi的可用性。GlusterFS也升級到了版本5。因為Ubuntu 18.04內建
CentOS 7.3 分散式儲存Glusterfs部署使用(二)
Glusterfs_Client: 一、配置hosts cat <<EOF> /etc/hosts 127.0.0.1 localhost localhost.localdom
Hadoop的偽分散式的安裝及部署
文章目錄 需要的軟體及原始碼包 安裝JDK Hadoop的部署安裝 Hadoop的配置 Hadoop的使用 做Hadoop的偽分散式我們分為一下幾個步驟 需要的軟體及原始碼包 FileZil
kubernetes分散式安裝部署-簡介
環境說明:3臺1C1G(我自己這樣的配置,有條件的可以調整大點)虛擬機器且操作是系統centos7系統,三臺虛擬機器IP地址為: 1)192.168.56.11 主機名字:linux-node1.example.com 2)192.168.56.12 主機名字:linux-no
hadoop 3.1.1 分散式安裝部署 ubuntu16.04
參考連結:https://blog.didiyun.com/index.php/2018/11/20/hadoop3-1-1/ 其中需要注意的幾個點包括 hosts節點中刪除原來的127.0.0.1 localhost和127.0.0.1 master兩行。 hadoop使
ProxmoxVE安裝簡單叢集(非分散式儲存)
上面左邊是我的個人微信,如需進一步溝通,請加微信。 右邊是我的公眾號“Openstack私有云”,如有興趣,請關注。 公司有兩臺測試伺服器,是華為的RH2288 V3 ,配置64G記憶體,2顆16核CPU ,4塊1T
【Fastdfs】Fastdfs分散式檔案系統的安裝部署使用,以及fastdfs連線池connectionpool編寫使用
環境:centos 7.X 預編譯安裝元件 yum install gcc gcc-c++ automake pcre pcre-devel zlip zlib-devel openssl openssl-devel libevent-dev git -y 以上安裝完,後續的各
【Fastdfs】Fastdfs分散式檔案系統的安裝部署使用,結合nginx訪問圖片,fastdfs連線池connectionpool編寫使用,文末有github連結
環境:centos 7.X 預編譯安裝元件 yum install gcc gcc-c++ automake pcre pcre-devel zlip zlib-devel openssl openssl-devel libevent-dev git -y 以上安裝
helm部署ceph在k8s上做分散式儲存
先在k8s上機器上拉取映象 docker pull docker.io/ceph/daemon:tag-build-master-luminous-ubuntu-16.04 docker pull docker.io/kolla/ubuntu-source-kubernetes-en
012 基於以太訪的本地檔案hash儲存查詢Dapp例項(合約安裝部署)
文章是我一邊學習區塊鏈技術,一邊記錄下來的內容,所有內容都經過測試,其實是我為了給自己留的參考文件,呵呵 下面開始進行一個Dapp的開發,請使用root使用者操作。 1、學習總結 要開發一個Dapp需要做的準備工作已經基本完成,那麼下面說一下都需要哪些內容,然後