moosefs mysql_moosefs搭建与应用
moosefs搭建與應用
MooseFS簡介:
MooseFS是一個具備冗余容錯功能的分布式網絡文件系統,它將數據分別存放在多個物理服務器單獨磁盤或分區上,確保一份數據有多個備份副本。因此MooseFS是一中很好的分布式存儲。接下來我們通過搭建moosefs,并了解的使用。
環境主機-centos7:搭建moosefs需要五臺主機
node1 ?172.25.0.29 ?mfsmaster
node2 ?172.25.0.30 ?Metalogger
node3 ?172.25.0.31 ?check servers
node4 ?172.25.0.32 ?check servers
node5 ?172.25.0.33 ?掛載客戶端
一、mfsmaster的安裝:
node1上
1、下載3.0包[root@node1?src]#yum?install?zlib-devel?-y##下載環境包
[root@node1?src]#?wget?https://github.com/moosefs/moosefs/archive/v3.0.96.tar.gz
2、安裝master:[root@node1?moosefs-3.0.96]#?useradd?mfs
[root@node1?src]#?tar?-xf?v3.0.96.tar.gz
[root@node1?src]#?cd?moosefs-3.0.96/
[root@node1?moosefs-3.0.96]#?./configure?--prefix=/usr/local/mfs?--with-default-user=mfs?--with-default-group=mfs?--disable-mfschunkserver?--disable-mfsmount
[root@node1?src]#make?&&?make?install
[root@node1?moosefs-3.0.96]#?ls?/usr/local/mfs/
bin??etc??sbin??share??var
注:etc和var目錄里面存放的是配置文件和MFS的數據結構信息,因此請及時做好備份,防止災難損毀。后面做了 Master Server雙機之后,就可以解決這個問題。
3、配置master[root@node1?mfs]#?pwd
/usr/local/mfs/etc/mfs
[root@node1?mfs]#?ls
mfsexports.cfg.sample??mfsmaster.cfg.sample??mfsmetalogger.cfg.sample??mfstopology.cfg.sample
##要把需要的重命名成.cfg文件:[root@node1?mfs]#?cp?mfsexports.cfg.sample?mfsexports.cfg
[root@node1?mfs]#?cp?mfsmaster.cfg.sample??mfsmaster.cfg
4、修改控制文件:[root@node1?mfs]#vim?mfsexports.cfg
*????????????/?????????rw,alldirs,mapall=mfs:mfs,password=xiaoluo
*????????????.??????????rw
注:##mfsexports.cfg 文件中,每一個條目就是一個配置規則,而每一個條目又分為三個部分,其中第一部分是mfs客戶端的ip地址或地址范圍,第二部分是被掛載的目錄,第三個部分用來設置mfs客戶端可以擁有的訪問權限。
5、開啟元數據文件默認是empty文件[root@node1?mfs]#cp?/usr/local/mfs/var/mfs/metadata.mfs.empty?/usr/local/mfs/var/mfs/metadata.mfs
6、啟動master:[root@node1?mfs]#?/usr/local/mfs/sbin/mfsmaster?start
open?files?limit?has?been?set?to:?16384
working?directory:?/usr/local/mfs/var/mfs
lockfile?created?and?locked
initializing?mfsmaster?modules?...
exports?file?has?been?loaded
mfstopology?configuration?file?(/usr/local/mfs/etc/mfstopology.cfg)?not?found?-?using?defaults
loading?metadata?...
metadata?file?has?been?loaded
no?charts?data?file?-?initializing?empty?charts
master??metaloggers?module:?listen?on?*:9419
master??chunkservers?module:?listen?on?*:9420
main?master?server?module:?listen?on?*:9421
mfsmaster?daemon?initialized?properly
7、檢查進程是否啟動:[root@node1?mfs]#?ps?-ef?|?grep?mfs
mfs????????8109??????1??5?18:40??????????00:00:02?/usr/local/mfs/sbin/mfsmaster?start
root???????8123???1307??0?18:41?pts/0????00:00:00?grep?--color=auto?mfs
8、查看端口:[root@node1?mfs]#?netstat?-ntlp
Active?Internet?connections?(only?servers)
Proto?Recv-Q?Send-Q?Local?Address???????????Foreign?Address?????????State???????PID/Program?name
tcp????????0??????0?0.0.0.0:9419????????????0.0.0.0:*???????????????LISTEN??????8109/mfsmaster
tcp????????0??????0?0.0.0.0:9420????????????0.0.0.0:*???????????????LISTEN??????8109/mfsmaster
tcp????????0??????0?0.0.0.0:9421????????????0.0.0.0:*???????????????LISTEN??????8109/mfsmaster
二、安裝Metalogger Server:
前面已經介紹了,Metalogger Server 是 Master Server 的備份服務器。因此,Metalogger Server 的安裝步驟和 Master Server 的安裝步驟相同。并且,最好使用和 Master Server 配置一樣的服務器來做 Metalogger Server。這樣,一旦主服務器master宕機失效,我們只要導入備份信息changelogs到元數據文件,備份服務器可直接接替故障的master繼續提供服務。
1、從master把包copy過來:[root@node1?mfs]#?scp?/usr/local/src/v3.0.96.tar.gz?node2:/usr/local/src/
v3.0.96.tar.gz[root@node2?moosefs-3.0.96]#?tar?zxvf?v3.0.96.tar.gz
[root@node2?moosefs-3.0.96]#?useradd?mfs
[root@node2?moosefs-3.0.96]#?yum?install?zlib-devel?-y
[root@node2?moosefs-3.0.96]#?./configure?--prefix=/usr/local/mfs?--with-default-user=mfs?--with-default-group=mfs??--disable-mfschunkserver?--disable-mfsmount
[root@node2?moosefs-3.0.96]#?make?&&?make?install
2、配置Metalogger Server:[root@node2?moosefs-3.0.96]#?cd?/usr/local/mfs/etc/mfs/
[root@node2?mfs]#?ls
mfsexports.cfg.sample??mfsmaster.cfg.sample??mfsmetalogger.cfg.sample??mfstopology.cfg.sample
[root@node2?mfs]#cp?mfsmetalogger.cfg.sample?mfsmetalogger.cfg
[root@node2?mfs]#vim?mfsmetalogger.cfg
MASTER_HOST?=?172.25.0.29
3、啟動Metalogger Server:[root@node2?mfs]#/usr/local/mfs/sbin/mfsmetalogger?start
open?files?limit?has?been?set?to:?4096
working?directory:?/usr/local/mfs/var/mfs
lockfile?created?and?locked
initializing?mfsmetalogger?modules?...
mfsmetalogger?daemon?initialized?properly[root@node2?mfs]#?netstat?-lantp|grep?metalogger
tcp????????0??????0?172.25.0.30:45620???172.25.0.29:9419????ESTABLISHED?1751/mfsmetalogger
4、查看一下生成的日志文件:[root@node2?mfs]#?ls?/usr/local/mfs/var/mfs/
changelog_ml_back.0.mfs??changelog_ml_back.1.mfs??metadata.mfs.empty??metadata_ml.mfs.back
三、安裝check servers:
在node3和node4上操作,我這里在node3上演示:
1、從master把包copy過來:[root@node1?mfs]#?scp?/usr/local/src/v3.0.96.tar.gz?node3:/usr/local/src/
v3.0.96.tar.gz[root@node3?~]#?useradd?mfs
[root@node3?~]#?yum?install?zlib-devel?-y
[root@node3?~]#?cd?/usr/local/src/
[root@node3?src]#?tar?zxvf?v3.0.96.tar.gz
[root@node3?moosefs-3.0.96]#?./configure?--prefix=/usr/local/mfs?--with-default-user=mfs?--with-default-group=mfs??--disable-mfsmaster?--disable-mfsmount
[root@node3?moosefs-3.0.96]#?make?&&?make?install
2、配置check server:[root@node3?moosefs-3.0.96]#?cd?/usr/local/mfs/etc/mfs/
You?have?new?mail?in?/var/spool/mail/root
[root@node3?mfs]#?cp?mfschunkserver.cfg.sample?mfschunkserver.cfg
[root@node3?mfs]#?vim?mfschunkserver.cfg
MASTER_HOST?=?172.25.0.29
3、配置mfshdd.cfg主配置文件
mfshdd.cfg該文件用來設置你將 Chunk Server 的哪個目錄共享出去給 Master Server進行管理。當然,雖然這里填寫的是共享的目錄,但是這個目錄后面最好是一個單獨的分區。[root@node3?mfs]#?cp?/usr/local/mfs/etc/mfs/mfshdd.cfg.sample?/usr/local/mfs/etc/mfs/mfshdd.cfg
You?have?new?mail?in?/var/spool/mail/root
[root@node3?mfs]#?vim?/usr/local/mfs/etc/mfs/mfshdd.cfg
/mfsdata
4、啟動check Server:[root@node3?mfs]#?mkdir?/mfsdata
[root@node3?mfs]#?chown?mfs:mfs?/mfsdata/
You?have?new?mail?in?/var/spool/mail/root
[root@node3?mfs]#?/usr/local/mfs/sbin/mfschunkserver?start
open?files?limit?has?been?set?to:?16384
working?directory:?/usr/local/mfs/var/mfs
lockfile?created?and?locked
setting?glibc?malloc?arena?max?to?4
setting?glibc?malloc?arena?test?to?4
initializing?mfschunkserver?modules?...
hdd?space?manager:?path?to?scan:?/mfsdata/
hdd?space?manager:?start?background?hdd?scanning?(searching?for?available?chunks)
main?server?module:?listen?on?*:9422
no?charts?data?file?-?initializing?empty?charts
mfschunkserver?daemon?initialized?properly
###檢查監聽端口:[root@node3?mfs]#?netstat?-lantp|grep?9420
tcp????????0??????0?172.25.0.31:45904???172.25.0.29:9420????ESTABLISHED?9896/mfschunkserver
四、客戶端掛載文件安裝:
node5上
1、安裝FUSE:[root@node5?mfs]#?lsmod|grep?fuse
[root@node5?mfs]#?yum?install?fuse?fuse-devel??-y
[root@node5?~]#?modprobe?fuse
[root@node5?~]#?lsmod?|grep?fuse
fuse???????????????????91874??0
2、安裝掛載客戶端[root@node5?~]#?yum?install?zlib-devel?-y
[root@node5?~]#?useradd?mfs
[root@node5?src]#?tar?-zxvf?v3.0.96.tar.gz
[root@node5?src]#?cd?moosefs-3.0.96/
[root@node5?moosefs-3.0.96]#?./configure?--prefix=/usr/local/mfs?--with-default-user=mfs?--with-default-group=mfs?--disable-mfsmaster?--disable-mfschunkserver?--enable-mfsmount
[root@node5?moosefs-3.0.96]#?make?&&?make?install
3、在客戶端上掛載文件系統,先創建掛載目錄:[root@node5?moosefs-3.0.96]#?mkdir?/mfsdata
[root@node5?moosefs-3.0.96]#?chown?-R?mfs:mfs?/mfsdata/
[root@node5?moosefs-3.0.96]#?/usr/local/mfs/bin/mfsmount?/mfsdata?-H?172.25.0.29?-p
MFS?Password:
mfsmaster?accepted?connection?with?parameters:?read-write,restricted_ip,map_all?;?root?mapped?to?mfs:mfs?;?users?mapped?to?mfs:mfs[root@node5?~]#?df?-h
Filesystem???????????Size??Used?Avail?Use%?Mounted?on
/dev/mapper/cl-root???18G??1.9G???17G??11%?/
devtmpfs?????????????226M?????0??226M???0%?/dev
tmpfs????????????????237M?????0??237M???0%?/dev/shm
tmpfs????????????????237M??4.6M??232M???2%?/run
tmpfs????????????????237M?????0??237M???0%?/sys/fs/cgroup
/dev/sda1???????????1014M??139M??876M??14%?/boot
tmpfs?????????????????48M?????0???48M???0%?/run/user/0
172.25.0.29:9421?????36G??4.2G???32G??12%?/mfsdata
4、我們寫入本地文件測試一下:[root@node5?moosefs-3.0.96]#?cd?/mfsdata/
[root@node5?mfsdata]#?touch?xiaozhang.txt
[root@node5?mfsdata]#?echo?"test"?>?xiaozhang.txt
[root@node5?mfsdata]#cat??xiaozhang.txt
test
發現可以寫入成功。也證明我們的mfs已經搭建完成的。
總結:現在我們我可以發現,mfs的master只有一臺,很明顯得單點缺陷,因此為了解決這個問題,我也查閱了很多資料,終于解決了這個單點的問題,詳細可以參考文章:https://blog.51cto.com/xiaozhagn/1977052
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的moosefs mysql_moosefs搭建与应用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql中逗号前的字符串_MySql逗
- 下一篇: mysql数据库迁徙_mysql数据迁徙