MFS 분산 파일 시스템 설치 배포
Moose File System 은 내결함성을 갖춘 네트워크 분산 파일 시스템으로 데이터를 네트워크의 서로 다른 서버에 분포한다
관리 서버(managing server)
각 데이터 저장 서버의 관리, 파일 읽기와 쓰기 스케줄링, 파일 공간 회수와 복구를 책임진다.다중 노드 복제
메타데이터 로그 서버(Metalogger server)
마스터 서버의 변경 로그 파일을 백업합니다. 파일 형식은changelog_ml.*.mfs,master 서버에 문제가 생겼을 때 대신 작업을 진행할 수 있도록 합니다
데이터 저장 서버(data servers)
관리 서버에 연결하고 관리 서버의 스케줄링에 따라 저장 공간을 제공하며 고객에게 데이터 전송을 제공한다.
클라이언트 마운트 사용(client computers)
fuse 핵 인터페이스를 통해 원격 관리 서버에서 관리하는 데이터 저장 서버를 연결합니다.공유되어 보이는 파일 시스템은 로컬 유닉스 파일 시스템과 같은 효과를 사용합니다.
1 서버 환경 설명
호스트 이름
IP
설치된 소프트웨어
실행 중인 프로세스
MASTER
192.169.20.188
Zlib libpcap fuse mfs
mfsmaster
METALOGGER
192.168.20.185
Zlib libpcap fuse mfs
mfsmetalogger
CHUNK
192.168.20.193
Zlib libpcap fuse mfs
Mfschunk
CHUNK2
192.168.20.156
Zlib libpcap fuse mfs
Mfschunk
CLIENT
192.168.20.*
Zlib libpcap fuse mfs
mfsmount
1 mfs 시스템 설치
1.1 다운로드
현재 버전: MooseFS 3.0.55
안정 버전: MooseFS 2.0.77
https://moosefs.com/download/sources.html안정판 선택
1.2 패키지 해제
# tar zxf moosefs-2.0.77-1.tar.gz
1.3 사용자 mfs 만들기
# useraddmfs -M -s /sbin/nologin
# id mfs
uid=501(mfs) gid=501(mfs) =501(mfs)
1.4 zliblibpcap과fuse 의존 패키지 설치 (client단이fuse를 필요로 하는 것을 제외하고는 설치하지 않을 수 있음)
zlib
http://www.zlib.net/ # zlib
# tar zxf zlib-1.2.8.tar.gz
# cd zlib-1.2.8
# ./configure && make && make install
pcap
http://www.tcpdump.org/#latest-release # pcap
# tar zxf libpcap-1.7.4.tar.gz
# cd libpcap-1.7.4
# ./configure && make && make install
fuse:
http://sourceforge.net/projects/fuse/files/fuse-2.X/ # fuse
# cd fuse-2.9.4
# ./configure --prefix=/usr # prefix , /usr , fuse /usr/lib,
make && make install
1.5 컴파일 설치 moosefs
# ./configure \
--prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs
# make && make install
2 master 구성
사용된 파일 etc의 mfsmaster.cfg, 사용되는 도구 sbin 아래의 mfsmaster.
2.1 구성 파일 만들기
#cp /usr/local/mfs/etc/mfs/mfsmaster.cfg.dist /usr/local/mfs/etc/mfs/mfsmaster.cfg
:
MATOCS_LISTEN_HOST =172.20.1.61
# cp /usr/local/mfs/etc/mfs/mfsexports.cfg.dist /usr/local/mfs/etc/mfs/mfsexports.cfg
# cp /usr/local/mfs/etc/mfs/mfstopology.cfg.dist /usr/local/mfs/etc/mfs/mfstopology.cfg
# cpmetadata.mfs.emptymetadata.mfs
2.2 부팅 성공
# /usr/local/mfs/sbin/mfsmaster start
open files limit has been set to: 4096
working directory: /usr/local/mfs/var/mfs
lockfile created and locked
initializing mfsmaster modules ...
exports file has been loaded
topology file has been loaded
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 192.168.20.188:9420
main master server module: listen on *:9421
mfsmaster daemon initialized properly
# /usr/local/mfs/sbin/mfscgiserv start # WEB
http://ip:9425 mfs
이.
3 마스터 명령 브로셔
usage:
/usr/local/mfs/sbin/mfsmaster
[-vfun] [-tlocktimeout] [-c cfgfile] [-i] [-a] [-e] [-x [-x]]
[start|stop|restart|reload|info|test|kill]
-v
print version number and exit 버전 표시 또는 종료
-f
run in foreground 프론트에서 실행
-u
log undefined config variables 정의되지 않은 사용 가능한 설정 기록
-n
코어 덤프 크기의 제한을 늘리려고 시도하지 마십시오. 핵심 덤프 크기 제한을 늘리지 마십시오.
-t
locktimeout: lockfilelockfile 대기 시간
-c
cfgfile:use given config file 지정한 프로필 사용하기
-i
ignore some metadata structure errors (attach orphans to root, ignore names without inode 등) 메타데이터 구조 오류 무시
-a
변경 로그에서 메타데이터 자동 복원 변경 로그에서 메타데이터 복원
-e
start without metadata (download all from leader) 는 메타데이터에서 시작하지 않으며, 모든leader에서 다운로드합니다
-xx
even more verbose output 더 자세한 출력
-x
produce more verbose output 더 자세한 출력 생성
3 chunkserver 구성
3.1 zlib, pcap,fuse 설치 컴파일
http://www.zlib.net/ # zlib
# tar zxf zlib-1.2.8.tar.gz
# cd zlib-1.2.8
# ./configure && make && make install
http://www.tcpdump.org/#latest-release # pcap
# tar zxf libpcap-1.7.4.tar.gz
# cd libpcap-1.7.4
# ./configure && make && make install
http://sourceforge.net/projects/fuse/files/fuse-2.X/ # fuse
# cd fuse-2.9.4
# ./configure --prefix=/usr
make && make install
3.2 mfs 사용자 만들기
# useradd mfs -M -s /sbin/nologin
3.3 컴파일 설치 moosefs
# ./configure \
--prefix=/usr/local/mfs
--with-default-user=mfs
--with-default-group=mfs
# make && make install
3.4 moosefs 구성
사용된 파일 etc의 mfschunkserver.cfg와 mfshdd.cfg,
사용된 도구 sbin 아래 mfschunkserver
# cpmfschunkserver.cfg.dist mfschunkserver.cfg
# cp /usr/local/mfs/etc/mfs/mfshdd.cfg.dist /usr/local/mfs/etc/mfs/mfshdd.cfg
# vi etc/mfs/mfschunkserver.cfg
MASTER_HOST = 192.168.20.188
3.5 하드 드라이브 추가
# Echo “ - - -” > /sys/class/scsi_host/host0/scan
# Fdisk �Cl /dev/sdb
Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
3.6 lvm 파티션 만들기
# fdisk -c /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0xa3e03970.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
WARNING: cylinders as display units are deprecated. Use command 'u' to
change units to sectors.
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-1305, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-1305, default 1305):
Using default value 1305
Command (m for help): t
Selected partition 1
Hex code (type L to list codes): 8e
Changed system type of partition 1 to 8e (Linux LVM)
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
3.7 볼륨 그룹 생성
# vgcreate mfs /dev/sdb1
Physical volume "/dev/sdb1" successfully created
Volume group "mfs" successfully created
3.8 논리 볼륨 생성
# lvcreate -L 8G -n lvmfs mfs
# vgs
VG #PV #LV #SN Attr VSize VFree
mfs 1 1 0 wz--n- 9.99g 1.99g
# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
lvmfs mfs -wi-a----- 8.00g
3.9 파티션 포맷 및 마운트
# mkfs.ext4 /dev/mapper/mfs-lvmfs
# mount /dev/mapper/mfs-lvmfs /data/
# df -h /data #
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/mfs-lvmfs
7.8G 18M 7.4G 1% /data
3.10 자동 마운트 설정
# Vi /etc/fstab
UUID=71628bae-bc06-434c-9f1f-e01929ffd164 /data ext4 defaults 0 0
# Umount /data #
# df -h /data #
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg-root 19G 5.7G 12G 33% /
# mount �Ca #
# df -h /data
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/mfs-lvmfs 7.8G 18M 7.4G 1% /data
3.11 공유 디렉토리 설정
# vi etc/mfs/mfshdd.cfg
/data
# chown -R mfs.mfs /data
3.12 환경 변수 설정
vi /etc/profile
PATH=$PATH:/usr/local/mfs:/usr/local/mfs/sbin
source /etc/profile
3.13 mfschunk 시작
# 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 8
setting glibc malloc arena test to 1
initializing mfschunkserver modules ...
hdd space manager: path to scan: /data/
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
두 대의 chunkserver가 같은 설정을 합니다.
4 Client 구성
4.1 컴파일 설치 zlib pcapfuse
http://www.zlib.net/ # zlib
# tar zxf zlib-1.2.8.tar.gz
# cd zlib-1.2.8
# ./configure && make && make install
http://www.tcpdump.org/#latest-release # pcap
# tar zxf libpcap-1.7.4.tar.gz
# cd libpcap-1.7.4
# ./configure && make && make install
http://sourceforge.net/projects/fuse/files/fuse-2.X/ # fuse
# cd fuse-2.9.4
# ./configure --prefix=/usr
make && make install
4.2 mfs 사용자 만들기
useradd mfs -M -s /sbin/nologin
4.3 컴파일 설치 moosefs
# ./configure \
--prefix=/usr/local/mfs
--with-default-user=mfs
--with-default-group=mfs
--enable-mfsmount
# make && make install
4.4 폴더 만들기
mkdir /mfs
4.5 마운트
mfsmount /mnt �CH 192.168.20.188
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
LVS---5. 단일 노드 LVS 활성화 - LVS 배포 성공 여부 확인keepalived는 업무 서버와 두 대의 물리기에 속한다 앞에 설정한 IP와 같은 네트워크 접근 요청을 만듭니다 우리가 방문이 성공하지 못한 것을 발견했을 때, 오류 정보를 보십시오 해결 방법: 같은 네트워크 구간...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.