?
1 安裝
1.1 準備環境
三臺主機(主機數應為副本數的倍數),主機名為xhw380,xhw381,xhw382.每臺主機上用root用戶進行操作。
1.2 安裝
在物理機上使用rpm包安裝,rpm包下載源
https://buildlogs.centos.org/centos/7/storage/x86_64/gluster-3.8/

2 操作
2.1 開啟服務
`systemctl start glusterd.service`
2.2 查看服務
`systemctl status glusterd.service`
2.3 添加節點到集群
不需要添加執行操作的機器,例如在xhw380上操作時,只需要執行:
~~~
gluster peer probe xhw381
gluster peer probe xhw382
~~~
2.4 從集群中刪除節點
`gluster peer detach nodename`
2.5 查看節點狀態
可以看到除自己之外的所有節點
`gluster peer status`

2.6 配置volume
GlusterFS中的volume的模式有很多中,包括以下幾種:+
1) 分布卷(默認模式):即DHT, 也叫 分布卷: 將文件已hash算法隨機分布到 一臺服務器節點中存儲。
2) 復制模式:即AFR, 創建volume 時帶 replica x 數量: 將文件復制到 replica x 個節點中。
3) 條帶模式:即Striped, 創建volume 時帶 stripe x 數量: 將文件切割成數據塊,分別存儲到 stripe x 個節點中 ( 類似raid 0 )。在大文件讀取上有優勢。
4) 注:條帶化有個最小限制:128KB。即當文件大小小于這個參數時,不進行分隔。其他儲存單元中,存在同名文件,但是大小為0.
5) 分布式條帶模式:是DHT 與 Striped 的組合型。
6) 分布式復制模式:是DHT 與 AFR 的組合型。
7) 條帶復制卷模式:是 Striped 與 AFR 的組合型。
8) 三種模式混合
根據業務需求,我們創建復制數為3的復制卷
~~~
xhw380: mkdir /data01/gfs
xhw381: mkdir /data01/gfs
xhw382: mkdir /data01/gfs
~~~
在任意一臺主機上創建復制卷:
`gluster volume create cbbs replica 3 xhw{380,381,382}:/data01/gfs`
注:節點數一定要是復制數的倍數。
~~~
啟動卷:gluster volume start cbbs
查看卷信息:gluster volume info
掛載客戶端(每臺主機執行):
mount.glusterfs xhw380:/cbbs /cbbs/gfs
停止卷:gluster volume stop cbbs
刪除卷:gluster volume delete cbbs
~~~
3 優化
具體選項:
~~~
Auth_allow #IP訪問授權;缺省值(*.allow all);合法值:Ip地址
Cluster.min-free-disk #剩余磁盤空間閥值;缺省值(10%);合法值:百分比
Cluster.stripe-block-size #條帶大小;缺省值(128KB);合法值:字節
Network.frame-timeout #請求等待時間;缺省值(1800s);合法值:1-1800
Network.ping-timeout #客戶端等待時間;缺省值(42s);合法值:0-42
Nfs.disabled #關閉NFS服務;缺省值(Off);合法值:Off|on
Performance.io-thread-count #IO線程數;缺省值(16);合法值:0-65
Performance.cache-refresh-timeout #緩存校驗時間;缺省值(1s);合法值:0-61
Performance.cache-size #讀緩存大小;缺省值(32MB);合法值:字節
Performance.quick-read: #優化讀取小文件的性能
Performance.read-ahead: #用預讀的方式提高讀取的性能,有利于應用頻繁持續性的訪問文件,當應用完成當前數據塊讀取的時候,下一個數據塊就已經準備好了。
Performance.write-behind:先寫入緩存內,在寫入硬盤,以提高寫入的性能。
Performance.io-cache:緩存已經被讀過的。
~~~
3.1 開啟指定volume的配額
`gluster volume quota cbbs enable`
3.2 限制指定volume的配額
`gluster volume quota cbbs limit-usage / 100GB`
3.3 打開預讀方式訪問存儲
`gluster volume set cbbs performance.read-ahead on`
3.4 設置cache大小,默認32MB
`gluster volume set cbbs performance.cache-size 4GB`
3.5 設置 io 線程, 太大會導致進程崩潰
`gluster volume set cbbs performance.io-thread-count 16`
3.6 設置網絡檢測時間
`gluster volume set cbbs network.ping-timeout 10`
3.7 設置寫緩沖區的大小, 默認1M
`gluster volume set cbbs performance.write-behind-window-size 1024MB`
4 監控及維護
4.1 查看卷狀態
`gluster volume status cbbs`
4.2 查看配額
`gluster volume quota cbbs list`
4.3 I/O信息查看
Profile Command 提供接口查看一個卷中的每一個brick的IO信息。
啟動profiling,之后則可以進行IO信息查看:
` gluster volume profile cbbs start`
4.3.1 查看I/O信息:
` gluster volume profile cbbs info`
4.3.2 查看后關閉profiling功能
4.4 TOP監控
Top command 允許你查看bricks的性能例如:read, write, file open calls, file read calls, file write calls, directory open calls, and directory real calls
所有的查看都可以設置top數,默認100
4.4.1 查看當前打開的文件數及最大打開的文件數
`gluster volume top VOLNAME open [brick BRICK-NAME] [list-cnt cnt]`

4.4.2 查看讀頻率最高的文件
`gluster volume top VOLNAME read [brick BRICK-NAME] [list-cnt cnt]`

4.4.3 查看寫頻率最高的文件
`gluster volume top VOLNAME write [brick BRICK-NAME] [list-cnt cnt]`

4.4.4 查看打開頻率最高的目錄
`gluster volume top VOLNAME opendir [brick BRICK-NAME] [list-cnt cnt]`
4.4.5 查看讀寫頻率最高的目錄
`gluster volume top VOLNAME readdir [brick BRICK-NAME] [list-cnt cnt]`
4.4.6 查看每個Brick的讀性能
~~~
gluster volume top VOLNAME read-perf [bs blk-size count count] [brick BRICK-NAME] [list-cnt cnt]
~~~

4.4.7 查看每個Brick的寫性能
~~~
gluster volume top VOLNAME write-perf [bs blk-size count count] [brick BRICK-NAME] [list-cnt cnt]
~~~

- 一、日常運維腳本
- 1.1 批量創建用戶并賦予sudo權限
- 1.2 批量主機建立互信
- 1.3create_images.sh
- 1.4monitor.sh
- 1.5ftp腳本
- 1.6格式化分區
- 1.7簡單的遠程執行腳本
- 二、常用服務使用
- 1 ceph (分布式文件系統)
- 1.1 ceph 簡介
- 1.2 準備環境
- 1.3 開始部署
- 1.4 cephfs掛載
- 1.5 RBD塊存儲
- 1.6 object 對象存儲
- 1.7 集群擴展
- 1.7.1 增加刪除MON
- 1.7.2 增加刪除OSD
- 1.7.3 刪除MDS
- 注意事項
- 遇到的問題
- 1.8ceph查找數據文件
- 1.9卸載并清理環境
- 2、mysql (數據庫)
- 2.1 搭建
- 2.2 使用教程
- 2.2.1 mysql基礎配置
- 2.2.1.1 用戶權限管理
- 2.2.1.2用戶資源限制
- 2.2.1.3 密碼管理
- 2.2.1.4用戶lock
- 2.2.2mysql語法詳解
- 2.2.1建庫、表語句
- 2.2.2.2 插入 insert
- 2.2.2.3更新 update
- 2.2.2.4刪除 delete
- 2.2.2.5查詢 select
- 2.2.6視圖 索引 view index
- 2.2.7 修改 alert
- 2.2.2.8清理 truncate drop
- 2.2.9重命名 rename
- 示例語句
- 2.2.3mysql常用函數
- 2.3.1 對比操作符統概
- 2.3.2對比操作符詳解
- 2.3.3邏輯操作符
- 2.2.4分配操作符
- 2.2.5流程控制函數
- 2.2.6字符串函數
- 2.2.7字符串對比函數
- 2.2.8數字函數
- 2.2.9日期和時間函數
- 2.2.10聚合/格式轉換函數
- 2.2.11 子查詢
- 示例語句
- 2.2.4 mysql 高級應用
- 2.2.4.1 存儲過程 函數
- 2.2.4.2流程控制
- 2.2.4.3游標
- 2.2.4.4觸發器
- 課堂練習
- 2.2.2.5 數據庫設計
- 2.2.5.1 數據類型
- 2.2.5.2存儲引擎
- 2.2.6Innodb內核
- 1、innodb事務和多版本控制
- 2、體系結構
- 3、InnoDB配置
- 4、buffer pool設置
- 5、其他配置
- innodb限制
- 2.7 字符集
- 2.8鎖機制和事務
- 2.8.1鎖機制
- 2.8.2事務
- 2.9分區
- 2.9.1 自動分區
- 2.10復制
- 2.11mysql搬移數據目錄
- 2.12組復制 GR
- 簡介
- 搭建
- 2.3日常運維
- 2.3.1定時任務
- 2.4mycat
- 2.4.1 報錯分析
- 2.4.2 修改字符集
- 2.11 mycat使用
- 2.5遇到問題
- 2.5.1 表名庫名忽略大小寫
- 3、PAAS平臺搭建
- 問題匯總
- 1、docker
- 2、日常運維
- 3.1 Kubernetes
- 3.1 kubernetes 高版本搭建
- 4、GlusterFS搭建
- 5、MooseFS搭建
- 5.1搭建
- 5.2運維
- 5.2.1 mfs日志解析
- 5.2.2清理mfs的垃圾數據
- 5.2.3元數據故障恢復
- 5.2.4 MFS優化
- 5.2.5 配置機架感知
- 5.2.6 客戶端工具集
- 6、集群切換命令
- 7、ntp服務
- 8、monggoDB
- 8.1搭建單機
- 2、搭建集群及分片
- 9、MariaDB Galera Cluster
- 9.1源碼安裝MariaDB
- 9.2galera cluster 優劣
- 9.3 rpm安裝mariadb
- 10 HAproxy1.7搭建
- 11、sysbench 搭建使用
- 0.5版本
- 12 percona-xtradb-cluster
- 13http服務相關
- 13.1 http狀態碼解析
- 14 zookeeper
- 14.1 zookeeper日志查看
- 14.2 配置解析
- 14.3 優化
- 15搭建私有pip源
- 16/var/log的日志文件解釋
- 15 ansible的搭建及使用
- 15.1 搭建
- 15.2 使用說明
- 16. 搭建本地yum源
- zookeeper
- 優化
- 四、開發語言
- 1、GO語言
- 1.1go簡介
- 1.1.1hello_world初識GO
- 1.1.2并發介紹
- 1.1.3 chan介紹
- 1.1.4多返回值
- 1.2go基礎
- 1.2.1數據類型
- 1.2.2 go基礎結構
- 1.2.3 const及變量介紹
- 1.2.3os和time介紹
- 1.2.4 字符串
- 1.2.5條件判斷
- 1.2.6 homework
- go--help
- 1.3 go基礎2
- 1.3.1 數組 array
- 1.3.2切片 slice
- 1.3.3 時間和日期
- 1.3.4指針類型
- 1.3.5函數
- 1.3.6可變參數
- 1.3.7 defer
- 1.3.8遞歸
- 1.9閉包
- 1.10 map
- 1.11 sort
- 1.12 struct 結構體
- 2.perl語言
- 2.1 安裝lib包
- 3 python
- 1.語言基礎
- 2、編程教學
- 2.1變量和序列
- 2.2 條件語句