Pasiuna sa GlusterFS (File System) ug Pag-install sa RHEL/CentOS ug Fedora


Nagpuyo kita sa usa ka kalibutan diin ang datos nga nagtubo sa usa ka dili matag-an nga paagi ug kini ang atong kinahanglan nga tipigan kini nga datos, bisan kung kini istruktura o wala’y istruktura, sa usa ka episyente nga paagi. Ang giapod-apod nga mga sistema sa kompyuter nagtanyag usa ka halapad nga daghang mga bentaha kaysa sa sentralisado nga mga sistema sa kompyuter. Dinhi ang datos gitipigan sa usa ka paagi nga gipang-apod-apod nga adunay daghang mga node isip mga server.

Ang konsepto sa metadata server dili na kinahanglan sa usa ka distributed file system. Sa gipang-apod-apod nga mga sistema sa file, nagtanyag kini usa ka sagad nga punto sa pagtan-aw sa tanan nga mga file nga gibulag sa lainlaing mga server. Ang mga file/direktoryo niining mga storage server kay ma-access sa normal nga mga paagi.

Pananglitan, ang mga pagtugot alang sa mga file/direktoryo mahimong itakda sama sa naandan nga modelo sa pagtugot sa sistema, i.e. ang tag-iya, grupo ug uban pa. Ang pag-access sa file system batakan nagdepende kung giunsa ang partikular nga protocol gidisenyo aron molihok sa parehas.

Unsa ang GlusterFS?

Ang GlusterFS usa ka distributed file system nga gihubit nga gamiton sa user space, ie File System in User Space (FUSE). Kini usa ka software nga nakabase sa file system nga nag-asoy sa kaugalingon nga bahin sa pagka-flexible.

Tan-awa ang mosunud nga numero nga eskematiko nga nagrepresentar sa posisyon sa GlusterFS sa usa ka hierarchical nga modelo. Pinaagi sa default TCP protocol gamiton sa GlusterFS.

  1. Innovation – Giwagtang niini ang metadata ug makapausbaw sa performance nga makatabang nato sa paghiusa sa datos ug mga butang.
  2. Elasticity – Gipahiangay sa pagtubo ug pagkunhod sa gidak-on sa datos.
  3. Scale Linearly – Kini adunay magamit sa mga petabytes ug labaw pa.
  4. Simplicity – Kini sayon nga pagdumala ug independente gikan sa kernel samtang nagdagan sa user space.

  1. Salable – Ang pagkawala sa metadata server naghatag ug mas paspas nga file system.
  2. Affordable – Nag-deploy kini sa commodity hardware.
  3. Flexible - Sama sa akong giingon sa sayo pa, ang GlusterFS usa ka software lamang nga file system. Dinhi ang datos gitipigan sa lumad nga sistema sa payl sama sa ext4, xfs ug uban pa.
  4. Open Source – Sa pagkakaron ang GlusterFS gimintinar sa Red Hat Inc, usa ka bilyong dolyar nga open source nga kompanya, isip kabahin sa Red Hat Storage.

  1. Brick – Brick mao ang batakan sa bisan unsang direktoryo nga gituyo nga ipaambit sa mga kasaligang storage pool.
  2. Trusted Storage Pool – usa ka koleksyon niining gipaambit nga mga file/direktoryo, nga gibase sa gidisenyo nga protocol.
  3. Block Storage – Sila ang mga himan diin ang data gibalhin sa mga sistema sa porma sa mga block.
  4. Cluster – Sa Red Hat Storage, ang cluster ug trusted storage pool naghatag sa samang kahulogan sa kolaborasyon sa mga storage server base sa gitakdang protocol.
  5. Giapod-apod nga Sistema sa File – Usa ka sistema sa payl diin ang datos gipakaylap sa lainlaing mga node diin ang mga tiggamit maka-access sa file nga wala nahibal-an ang tinuud nga lokasyon sa file. Ang user dili makasinati sa pagbati sa layo nga pag-access.
  6. FUSE – Kini usa ka loadable kernel module nga nagtugot sa mga user sa paghimo og file system ibabaw sa kernel nga walay apil nga kernel code.
  7. glusterd – glusterd mao ang GlusterFS management daemon nga mao ang backbone sa file system nga modagan sa tibuok panahon sa matag higayon nga ang mga server anaa sa aktibong estado.
  8. POSIX – Portable Operating System Interface (POSIX) mao ang pamilya sa mga sumbanan nga gihubit sa IEEE isip solusyon sa pagkaangay tali sa Unix-variants sa porma sa Application Programmable Interface (API).
  9. RAID – Ang Redundant Array of Independent Disks (RAID) maoy usa ka teknolohiya nga naghatag ug dugang nga storage reliability pinaagi sa redundancy.
  10. Subvolume – Usa ka brick human maproseso sa labing menos usa ka tighubad.
  11. Translator – Ang tighubad mao kanang piraso sa code nga nagpahigayon sa mga batakang aksyon nga gisugdan sa user gikan sa mount point. Nagdugtong kini og usa o daghan pang sub volume.
  12. Volume – Ang volume kay usa ka lohikal nga koleksyon sa mga brick. Ang tanan nga mga operasyon gibase sa lain-laing mga matang sa mga volume nga gihimo sa user.

Gitugotan usab ang mga representasyon sa lain-laing klase sa volume ug kombinasyon niining mga batakang tipo sa volume sama sa gipakita sa ubos.

Representasyon sa usa ka giapod-apod-gikopya nga gidaghanon.

Pag-instalar sa GlusterFS sa RHEL/CentOS ug Fedora

Sa kini nga artikulo, among i-install ug i-configure ang GlusterFS sa unang higayon alang sa taas nga pagkaanaa sa pagtipig. Alang niini, nagkuha kami og duha ka mga server aron makahimo og mga volume ug pagkopya sa datos tali kanila.

  1. I-install ang CentOS 6.5 (o bisan unsang ubang OS) sa duha ka node.
  2. Ibutang ang mga hostname nga ginganlan og server1 ug server2.
  3. Usa ka nagtrabaho nga koneksyon sa network.
  4. Storage disk sa duha ka node nga ginganlan og /data/brick.

Sa dili pa i-install ang GlusterFS sa duha nga mga server, kinahanglan namon nga magamit ang mga repositoryo sa EPEL ug GlusterFS aron matagbaw ang mga eksternal nga pagsalig. Gamita ang mosunod nga link aron ma-install ug ma-enable ang epel repository ubos sa duha ka sistema.

  1. Unsaon Pag-enable ang EPEL Repository sa RHEL/CentOS

Sunod, kinahanglan namon nga i-enable ang GlusterFs repository sa duha nga mga server.

# wget -P /etc/yum.repos.d http://download.gluster.org/pub/gluster/glusterfs/LATEST/EPEL.repo/glusterfs-epel.repo

I-install ang software sa duha ka server.

# yum install glusterfs-server

Sugdi ang daemon sa pagdumala sa GlusterFS.

# service glusterd start

Karon susihon ang kahimtang sa daemon.

# service glusterd status
service glusterd start
  service glusterd status
  glusterd.service - LSB: glusterfs server
   	  Loaded: loaded (/etc/rc.d/init.d/glusterd)
  	  Active: active (running) since Mon, 13 Aug 2012 13:02:11 -0700; 2s ago
  	 Process: 19254 ExecStart=/etc/rc.d/init.d/glusterd start (code=exited, status=0/SUCCESS)
  	  CGroup: name=systemd:/system/glusterd.service
  		  ├ 19260 /usr/sbin/glusterd -p /run/glusterd.pid
  		  ├ 19304 /usr/sbin/glusterfsd --xlator-option georep-server.listen-port=24009 -s localhost...
  		  └ 19309 /usr/sbin/glusterfs -f /var/lib/glusterd/nfs/nfs-server.vol -p /var/lib/glusterd/...

Ablihi ang '/etc/sysconfig/selinux' ug usba ang SELinux sa mode nga \permissive o \disabled sa duha nga mga server. I-save ug isira ang file.

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

Sunod, i-flush ang mga iptable sa duha ka mga node o kinahanglan nga tugutan ang pag-access sa lain nga node pinaagi sa mga iptables.

# iptables -F

Pagdalagan ang mosunod nga sugo sa 'Server1'.

gluster peer probe server2

Pagdalagan ang mosunod nga sugo sa 'Server2'.

gluster peer probe server1

Mubo nga sulat: Kung kini nga pool konektado na, ang mga kasaligan nga tiggamit lamang ang mahimong magsusi sa mga bag-ong server sa kini nga pool.

Sa server1 ug server2.

# mkdir /data/brick/gv0

Paghimo og volume Sa bisan unsang server ug sugdi ang volume. Dinhi, akong gikuha ang 'Server1'.

# gluster volume create gv0 replica 2 server1:/data/brick1/gv0 server2:/data/brick1/gv0
# gluster volume start gv0

Sunod, kumpirmahi ang kahimtang sa volume.

# gluster volume info

Mubo nga sulat: Kung ang gidaghanon sa kaso wala magsugod, ang mga mensahe sa sayup gi-log sa ilawom sa '/var/log/glusterfs'sa usa o pareho nga mga server.

I-mount ang volume sa usa ka direktoryo ubos sa '/mnt'.

# mount -t glusterfs server1:/gv0 /mnt

Karon makahimo ka, mag-edit sa mga file sa mount point isip usa ka pagtan-aw sa file system.

Mga bahin sa GlusterFS

  1. Pag-ayo-sa-kaugalingon - Kung ang bisan unsang mga tisa sa usa ka gikopya nga volume naubos ug ang mga tiggamit nagbag-o sa mga file sa sulod sa lain nga tisa, ang awtomatik nga pag-ayo sa kaugalingon nga daemon molihok dayon kung ang tisa nahuman sa sunod nga higayon ug ang mga transaksyon nahitabo sa panahon sa down time gi-sync sumala niana.
  2. Rebalance – Kon magdugang mi og bag-ong brick sa kasamtangan nga volume, diin dako ang gidaghanon sa data nga nagpuyo kaniadto, makahimo kami og rebalance operation aron maapod-apod ang datos sa tanang brick lakip ang bag-ong gidugang nga brick.
  3. Geo-replication – Naghatag kini og mga back-up sa datos alang sa pagbawi sa katalagman. Dinhi moabut ang konsepto sa mga volume sa agalon ug ulipon. Mao nga kung ang agalon wala ang tibuuk nga datos mahimong ma-access pinaagi sa ulipon. Kini nga bahin gigamit sa pag-sync sa data tali sa geographically separated servers. Ang pagsugod ug geo-replication session nanginahanglan ug serye sa gluster commands.

Dinhi, mao ang mosunod nga screen grab nga nagpakita sa Geo-replication module.

Mga Reperensya nga Link

GlusterFS Homepage

Mao na sa karon!. Magpabilin nga updated alang sa detalyadong paghulagway sa mga feature sama sa Self-heal ug Re-balance, Geo-replication, etc sa akong umaabot nga mga artikulo.