MFS Sistema de archivos distribuido
MFS lo que?
Es una red tolerante a fallos del sistema de archivos distribuido, sistema de archivos distribuido es que algunos archivos compartidos a través de la carpeta de varios equipos, el tiempo establecido en una carpeta compartida, los usuarios quieren acceder a estas carpetas, sólo una abierta carpeta, se puede ver todos los archivos compartidos dentro de una carpeta enlace a esta carpeta
marco MFS de los miembros constituyentes
servidor de metadatos (Master): responsable de la gestión del sistema de archivos en todo el sistema, mantener los metadatos, actualmente no soporta alta disponibilidad
Metadatos servidor de registro (MetaLogger): cambio de los archivos de registro del servidor de respaldo Maestro, cuando el servidor principal está dañado, se puede obtener la recuperación del servidor de archivos de registro
Almacenamiento de datos de servidor (Chunk): servidor de datos de tienda real
Client (Cliente): puede ser tan NFS montar el mismo sistema de archivos de montaje MFS
A continuación se muestra un diagrama de configuración de un entorno MFS
MFS acumulación
servidor principal de ajuste
1. Instalar dependencias
yum -y install gcc gcc-c ++ zlib-devel
2. Establecer la gestión de usuarios
useradd -s / sbin / nologin MFS
3. extraer el paquete fuente para compilar e instalar
toma zxf MFS 1.6.27-5.tar.gz
cd MFS-1.6.27
./configure --prefix = / usr / local / mfs --con-default-user = mfs --con-default-grupo = mfs --disable-mfschunkserver --disable-mfsmount
make && make install
4. Copiar la plantilla para crear un archivo de configuración (servidor maestro necesita mfsexports, mfsmaster, mfsmetalogger estos tres archivos)
cd / usr / local / MFS / etc / MFS /
cp mfsexports.cfg.dist mfsexports.cfg
cp mfsmaster.cfg.dist mfsmaster.cfg
cp mfsmetalogger.cfg.dist mfsmetalogger.cfg
cd / usr / local / MFS / var / MFS /
metadata.mfs cp metadata.mfs.empty
5. es propietario de un grupo, y el directorio de archivos de MFS
chown -R mfs.mfs / usr / MFS / locales
6.Master servidor requiere mfsmaster.cfg (archivo de configuración global) y mfsexports.cfg (el monte permisos de directorios y archivos de configuración) , no hay necesidad de modificar aquí
mfsmaster.cfg (perfil principal)
#WORKING_USER = mfs \\运行masterserver的用户
#WORKING_GROUP = mfs \\运行masterserver的组
#SYSLOG_IDENT = mfsmaster \\在syslog中表示是mfsmaster产生的日志
#LOCK_MEMORY = 0 \\是否执行mlockall(),以避免mfsmaster进程溢出(默认为0)
#NICE_LEVEL = -19 \\运行的优先级(如果可以,默认是-19;注意:进程必须用root启动)
#EXPORTS_FILENAME = /usr/local/mfs/etc/mfs/mfsexports.cfg \\被挂载目录及其权限控制文件的存放位置
#TOPOLOGY_FILENAME = /usr/local/mfs/etc/mfs/mfstopology.cfg
#DATA_PATH = /usr/local/mfs/var/mfs \\数据存放路径
#BACK_LOGS = 50 \\metadata改变的log文件数目(默认是50)
#BACK_META_KEEP_PREVIOUS = 1
#REPLICATIONS_DELAY_INIT = 300
#REPLICATIONS_DELAY_DISCONNECT = 3600
#MATOML_LISTEN_HOST = \\metalogger监听的IP地址(默认是,代表任何IP)
#MATOML_LISTEN_PORT = 9419 \\metalogger监听的端口地址(默认是9419)
#MATOML_LOG_PRESERVE_SECONDS = 600
#MATOCS_LISTEN_HOST = \\用于chunkserver连接的IP地址(默认是,代表任何IP)
#MATOCS_LISTEN_PORT = 9420 \\用于chunkserver连接的端口地址(默认是9420)
#MATOCL_LISTEN_HOST = \\用于客户端挂接连接的IP地址(默认是,代表任何IP)
#MATOCL_LISTEN_PORT = 9421 \\用于客户端挂接连接的端口地址(默认是4921)
#CHUNKS_LOOP_MAX_CPS = 100000
#CHUNKS_LOOP_MIN_TIME = 300 \\chunk的回环频率(默认是300秒)
#CHUNKS_SOFT_DEL_LIMIT = 10
#CHUNKS_HARD_DEL_LIMIT = 25
#CHUNKS_WRITE_REP_LIMIT = 2 \\在一个循环里复制到一个chunkserver的最大chunk数
#CHUNKS_READ_REP_LIMIT = 10 \\在一个循环里从一个chunkserver复制的最大chunk数
#ACCEPTABLE_DIFFERENCE = 0.1
#SESSION_SUSTAIN_TIME = 86400
#REJECT_OLD_CLIENTS = 0
#deprecated:
#CHUNKS_DEL_LIMIT - use CHUNKS_SOFT_DEL_LIMIT instead
#LOCK_FILE - lock system has been changed, and this option is used only to search for old lockfile
mfsexports.cfg (el monte permisos de directorios y archivos de configuración)
#Allow everything but "meta".
/ rw,alldirs,maproot=0
#Allow "meta".
. rw
#第一部分:客户端的IP地址
#*表示所有IP地址
#单个IP地址
#IP地址/子网掩码
#IP地址网段
#第二部分:被挂接的目录
#/标识MFS根 .表示MFSMETA文件系统
#第三部分:客户端拥有的权限
#ro——只读模式共享
#rw——读写的方式共享
#alldirs——允许挂载任何指定的子目录
#admin——管理员权限
#maproot——映射为root,还是指定的用户
#Password——指定客户端密码
7. Puesta en servicio y ver si el éxito de abierto
/ Usr / local / MFS / sbin / inicio mfsmaster
ps-ef | MFS agarre
conjunto de servidores hasta Metalogge
1. Instalar dependencias
yum -y install gcc gcc-c ++ zlib-devel
2. Crear un usuario administrativo
useradd -s / sbin / nologin MFS
3. Extraer el paquete de instalación para instalar y compilación
toma zxf MFS 1.6.27-5.tar.gz
cd MFS-1.6.27
./configure --prefix = / usr / local / mfs --con-default-user = mfs --con-default-grupo = mfs --disable-mfschunkserver --disable-mfsmount
make && make install
4. Copiar la plantilla del archivo de configuración (este servidor basta con abrir el archivo de registro)
cd / usr / local / MFS / etc / MFS /
cp mfsmetalogger.cfg.dist mfsmetalogger.cfg
5. Editar el archivo de configuración de registro para agregar la dirección IP del servidor maestro
vim mfsmetalogger.cfg
MASTER_HOST = 192.168.199.129
6. es propietario del grupo, y el archivo se modifica MFS
chown -R mfs.mfs / usr / MFS / locales /
7. Encienda el servicio metalog y empezar a ver el éxito
/ Usr / local / MFS / sbin / inicio mfsmetalogger
ps-ef | MFS agarre
servidor trozo de construcción (dos pasos para construir la misma)
1. Instalar dependencias
yum -y install gcc gcc-c ++ zlib-devel
2. Establecer la gestión de usuarios
useradd -s / sbin / nologin MFS
3. extraer el paquete fuente para compilar e instalar
toma zxf MFS 1.6.27-5.tar.gz
cd MFS-1.6.27
./configure --prefix = / usr / local / mfs --con-default-user = mfs --con-default-grupo = mfs --disable-mfsmaster --disable-mfsmount
make && make install
4. Copiar la configuración de la plantilla abierta mfschunkserver y mfshdd dos archivos
cd / usr / local / MFS / etc / MFS /
cp mfschunkserver.cfg.dist mfschunkserver.cfg
cp mfshdd.cfg.dist mfshdd.cfg
5. Editar mfschunkserver.cfg archivo de configuración para añadir la dirección IP del servidor maestro
vim mfschunkserver.cfg
MASTER_HOST = 192.168.0.101
6. Modificar el archivo mfshdd.cfg, añadir la parte local necesario para montar un directorio o disco de este tipo, las condiciones de vida es mejor usar una partición o disco independiente para montar este directorio
vim mfshdd.cfg
/prueba
7. Cree un directorio de montaje
mkdir / test
mfs.mfs chown -R / datos
8. posibilidad de servicio abierto para iniciar el servicio y la vista del éxito
/ Usr / local / MFS / sbin / mfschunkserver empezar
ps-ef | MFS agarre
Construir cliente
1. Instalar dependencias
yum install gcc gcc-c ++ zlib-devel Fusible-devel -y
2. En el directorio / etc / profile y por último añadir la variable de entorno y ejecutar el archivo
vim / etc / profile
PKG_CONFIG_PATH exportación = / usr / local / lib / pkgconfig: $ PKG_CONFIG_PATH
source / etc / profile
3. Crear una gestión de procesos de usuario
useradd -s / sbin / nologin MFS
4. extraer el paquete de instalación, instalación del compilador
toma zxf MFS 1.6.27-5.tar.gz
cd MFS-1.6.27 /
./configure --prefix = / usr / local / mfs --con-default-user = mfs --con-default-grupo = mfs --disable-mfsmaster --disable-mfschunkserver --enable-mfsmount
make && make install
El módulo de fusibles está cargado en el núcleo
modprobe fuse
6. Crear un punto de montaje y montar MFS
mkdir / MFS
/ Usr / local / mfs / bin / mfsmount / mfs -H 192.168.0.101
7. Comprobar el montaje casos: df -HT
8. Crear un archivo de prueba prueba
: Se ha añadido la optimización de ruta de comandos
ln -s / usr / local / MFS / bin / * / usr / bin /
ln -s / usr / local / MFS / sbin / * / usr / sbin /
Utilice este comando no se puede entrar en un camino tan largo
Abra la interfaz de administración gráfica principal (véase más adelante)
/ Usr / local / MFS / sbin / mfscgiserv
acceso directo al puerto 9425 en la línea de