SlideShare a Scribd company logo
1 of 49
Download to read offline
2013. 09.13
글러스터 파일 시스템 설정 가이드 v2.0
주식회사 오픈소스컨설팅
이호성 차장
1.GlusterFS 개요
 글러스터는 레드햇에서 지원하는 오픈소스 파일시스템 으로써 수천 PetaByte 급의 대용량에 수천개의 클라이언트가 접속하여
사용 가능한 scale-out 방식 분산파일 시스템입니다.
 GlusterFS는 기존의 분산 파일 시스템에 비해 비교적 구성이 간단하며 , 대용량 및 대규모의 I/O처리 능력이 뛰어납니다.
2.GlusterFS 표준 아키텍쳐
 레드햇의 글러스터 파일 시스템의 경우 네트워크의 capability가 중요합니다.
 Client Side에서 사용하는 프로토콜의 경우에는 CIFS, NFS 프로토콜을 사용하여 Brick에 연결하게 됩니다.
3. 글러스터 파일 시스템 사전 요구 사항 (Prerequisites)
 일반적 구성 ( General Configuration)
- 중앙에 있는 Time Server를 이용한 노드간이 시간 동기화 설정 (ex : ntp 설정)
 파일 시스템 구성 (Filesystem Requirement)
- Brick에 사용되는 파일 시스템의 경우 XFS 파일 시스템을 사용하는 것을 권장
- XFS 파일 시스템의 경우 저널링 파일 시스템이기 때문에 신속한 복구가 가능하며, 대용량 디스크를 지원
- XFS 파일 시스템은 온라인 상태 또는 마운트된 상태에서도 de-fragmented 또는 확장이 가능
 네트워크 구성 (Network Configuration)
- 글러스터 파일 시스템은 고속의 네트워크 환경이 요구됨, (ex: Infiniband. 10G, 1G)
- 클라이언트와 서버간의 통신에 있어서는 최대한 네트워크 대역폭을 확보해 주는것을 권장하고 있음
3. 글러스터 파일 시스템 사전 요구 사항 (Prerequisites)
 글러스터 파일 시스템을 사용하기 위해서는 하드웨어 사양 및 구성에 대한 Requirement 반영이 중요합니다.
 Red Hat Storage Server Compatibility
- RHS 제품은 운영체제 형태의 설치 이미지를 제공하기 때문에 하드웨어 정합성에 대한 체크가 요구된다.
하드웨어 도입전 아래의 사이트에서 지원 하드웨어에 대한 정합성을 확인을 먼저 진행한다.
(H/W Compatibility List : https://hardware.redhat.com)
 General Requirement H/W for Red Hat Storage Server
- H/W Compatibility에 부합되는 하드웨어를 도입 (RHEL6 또는 그 이상 되는 버전의 호환성과 부합)
- 2소켓 서버 (4-core, 6-core or 8-core) 를 권장하고 있다. (no 1-socket, 4-socket, 8-socket)
- Super Micro Storage Server for Use Case
(Use Case 별 (HPC, General Fileserver, Archival backup) 도입 가능한 스토리지 리스트)
SuperStorage Server 2027R-E1R24N for High Performance Computing.
SuperStorage Server 6027R-E1R12N for General Purpose File Serving.
SuperStorage Server 6047R-E1R36N for Archival and backup.
3. 글러스터 파일 시스템 사전 요구 사항 (Prerequisites)
 시스템 용도별 (Use Case) 글러스터를 적용하기 위해서 요구되어 지는 스토리지에 대한 사양은 아래와 같습니다 .
 High-Performance Computing
- 2u/24 (JBODs may be attached except for Supermicro, not to exceed 24 drives per server even with JBOD(s))
- 15000 RPM 600GB drives(2.5" inch SAS)
- Minimum RAM 48 GB
 General Purpose File Serving
- 2u/12 (JBODs may be attached except for Supermicro, not to exceed 12 drives per server even with JBOD(s))
- 7200 or 10000 RPM 2/3 TB drives (3.5" SAS or SATA)
- Minimum RAM 32 GB
 Archival use-case
- 4u/36 (JBODs may be attached except for Supermicro, not to exceed 36 drives per server even with JBOD(s))
- 7200 or 10000 RPM 2/3 TB drives (3.5" SAS or SATA)
- Minimum RAM 16 GB
3. 글러스터 파일 시스템 사전 요구 사항 (Prerequisites)
3.1.1 Server Requirements
HP, Dell, Fujitsu, IBM, Cisco, NEC, Hitachi에서 출시된 대부분의 2socket 서버 지원
3.1.2 Storage Requirement
• OS 용 디스크 구성: 200GB 이상 * 2EA, Raid 1(mirroring)
• Data 저장용 디스크 구성
- 12개 디스크 그룹의 Raid 6
- battery-backed H/W Raid Array
- write-back option 을 Raid Array Interface or API로 제공해야 함(성능 보장을 위해 write-back 옵션 권고)
3.1 Hardware Compatibility
Usable 180TB Usable 180TB Usable 180TB Usable 180TB
Usable 180TB Usable 180TB Usable 180TB Usable 180TB
Usable 180TB Usable 180TB Usable 180TB Usable 180TB
Usable 180TB Usable 180TB Usable 180TB Usable 180TB
Service 10G Network
Replication 10Gb Ethernet
L3 Backbone
H/W Mgmt. Server
(HP SIM)
Red Hat Storage
Mgmt. Console
Initial capacity (2.6 PB)
10g 10g
Mgmt. 1G Network
Aggregation switch
Aggregation switch
3. 글러스터 파일 시스템 사전 요구 사항 (Prerequisites)
• Trusted Peer Network: Ethernet(1Gb 와 10Gb), *Infiniband
• NIC: 서버에는 10Gb * 2EA port 장착 권고, 10Gb 불가시 1Gb * 2EA port
3.2 Network Requirement
* Infiniband: Infiniband 사용시에는 별도 Red Hat Review 필요
* tcp tuning: 10Gb 이더넷 환경에서 sequential read 젂송 했을 때, tcp 별도 튜닝 불필요.
오히려 튜닝했을 때 성능이 저하되거나 동일한 성능을 제공했었음
GlusterFS 는 확장에 대한 제약이 없으나 차후에 원활한 기술지원과 성능을 보장하기 위해
아래의 제약 사항을 두고 있음
• 최소 노드수: 4 nodes
• 최대 노드수: 64 nodes
• 스토리지 풀 최대 용량: 8 Petabytes( 2 replica 구성 시, 4 Petabytes)
• 스토리지 볼륨 요구 사항
- 약 20%의 볼륨 여유 공간 권고
- 복제 및 self healing 기능을 위해 필요
- 최소 15% 여유 공간
3.4 Server Pool Requirements
3. 글러스터 파일 시스템 사전 요구 사항 (Prerequisites)
클라이언트 접속 방식은 GlusterFS Native Client, NFS or CIFS를 제공. Server Pool의 Node당
최대 16 Client 접속 허용
3.5.1 GlusterFS Native Client
• 높은 동시접속, 성능, 빠른 failover 기능 제공
• POSIX export 방식을 사용하기 때문에 일반 파일시스템처럼 mount 하여 사용
• Write Performance의 향상을 요구되거나 동시 사용율이 높을때
• Client OS에 별도 native client 설치 필요
• 지원 Client OS : RHEL5.8 이상, RHEL6.0 이상
3.5.2 NFS Support
• 커널단의 NFS가 아닌 Gluster NFS Translator에서 제공하는 NFS 서비스 이용
• NFSv3 클라이언트 구성 권장
• NFS를 마운트 할때 vers=3 옵션을 추가.
• Standard AutoMount 를 지원
• 작은 파일들이 많을때 Read 성능이 좋다.
• 글러스터내에 NLM (Networ Lock Manager) 이 노드별 Locking를 관리
3. 글러스터 파일 시스템 사전 요구 사항 (Prerequisites)
3.5 Client Compatibility
3. 글러스터 파일 시스템 사전 요구 사항 (Prerequisites)
3.5 Client Compatibility
클라이언트 접속 방식은 GlusterFS Native Client, NFS or CIFS를 제공. Server Pool의 Node당
최대 16 Client 접속 허용
3.5.3 CIFS Support
• Storage Pool의 어느 서버에 접속해도 동일한 파일시스템 공유 가능
• CIFS 서비스는 스토리지 소프트웨어와 독립적으로 작동
• Native mount point는 SAMBA를 통해서 공유가 가능
• 먼저 Native로 mount 한후에 CIFS를 연결
• 지원 Client OS
- Fedora, Debian 기반 리눅스 배포판
- Unix(Solaris 10+)
- Microsoft Windows Server 2008, Windows 7
4. 글러스터 파일 시스템 복제 방식
 Distributed
- 분산 파일시스템이 필요하고 데이터 안전성이 요구되지 않을 때 사용
 Replicated
- 분산 파일시스템은 사용하지 않고 데이터 안전성이 매우 중요할 때 사용
 Striped
- 큰 파일의 동시접속이 매우 높을 때 사용
 Distributed Striped
- 확장성을 필요로 하고 파일이 크고 동시접속이 높을 때 사용
 Distributed Replicated
- 분산 파일시스템을 사용하면서 동시에 데이터 안전성을 요구할 때 사용.
대부분의 환경에서 Read 속도가 매우 좋음
 Distributed Striped Rplicated
- 파일에 대한 동시접속이 많고 성능이 중요할 때 사용
- map reduce 업무에만 지원
 Striped Replicated
- 큰 파일에 대한 동시 접속이 많고 성능이 중요할 때 사용
- map reduce 업무에만 지원
 글러스터 파일 시스템에 대한 복제 방식은 아래와 같이 7가지의 동작 형태로 데이터를 복제합니다.
4. 글러스터 파일 시스템 복제 방식
 Distributed 복제 방식
 여러 개의 브릭(Brick) 볼륨을 거쳐서 데이타틀 저장하는 방식입니다.
 분산파일 시스템을 사용하기 위한 기본 구성입니다.
 디스크나, 노드의 장애시 데이터의 안전성을 보장할수 없습니다.
4. 글러스터 파일 시스템 복제 방식
 Replicated 복제 방식
 여러 개의 브릭(Brick) 볼륨을 거쳐서 데이타틀 저장하는 방식입니다.
 운영하는 데이터의 안정성이 보장되어야 할때 사용되는 복제 방식으로써 Brick 볼륨이 서로 다른 서버에
존재할때 안전하게 데이터가 복제될수 있습니다.
4. 글러스터 파일 시스템 복제 방식
 Stripe 복제 방식
 파일의 사이즈가 크고 동시 접속가 많은 경우 적합한 데이터 복제 방식 입니다.
 하나의 파일을 여러 개의 Brick에 분산하여 데이터를 저장함으로 데이터의 안전성을 보장할수 없습니다.
4. 글러스터 파일 시스템 복제 방식
 Distributed Stripe 복제 방식
 파일의 사이즈가 크고 동시 접속가 많은 경우 적합한 데이터 복제 방식 입니다.
 기존의 Stripe 방식에서 분산파일 시스템을 사용하기 위해서 구성하는 복제 방식입니다.
4. 글러스터 파일 시스템 복제 방식
 Distributed replicated 복제 방식
 분산파일 시스템을 사용하면서 동시에 데이터의 안전성을 보장받기 위한 복제 방식입니다.
 일반적으로 많이 사용되는 구성 방식이며 Read Performance가 좋습니다.
 데이터의 안전성을 위해서 복제에 사용된은 Brick은 각각 다른 서버에 위치하고 있어야 합니다.
4. 글러스터 파일 시스템 복제 방식
 Distributed stripe replicated 복제 방식
 파일에 대한 동시 접속이 많고 전체적인 성능이 중요하다고 판단되어 질때 구성하는 복제방식입니다.
 일반적으로 Mapreduce 를 사용할때 구성하는 방식으로 권장하고 있습니다..
 복제를 통한 데이터의 안전성을 보장하기 위해서 구성하는 복제 방식입니다
4. 글러스터 파일 시스템 복제 방식
 stripe replicated 복제 방식
 파일에 대한 동시 접속이 많고 전체적인 성능이 중요하다고 판단되어 질때 구성하는 복제방식입니다.
 일반적으로 Mapreduce 를 사용할때 구성하는 방식으로 권장하고 있습니다..
4. 글러스터 파일 시스템 복제 방식
 Geo replicated 복제 방식
 Geo Replication 복제 방식을 통해서 원격지 볼륨과 복제하여 데이터의 안전성을 보장합니다.
 기본 Master/ Slave 모드로 동작.
 동기식/비동기식/증분복제 방식으로 데이터를 전송
 LAN / WAN /INTERNTE 구간에서 복제.
 데이터의 동기화를 위해서 반드시 NTP 설정.
5. 글러스터 파일 시스템 물리적 확장
 노드에 대한 scale-up 확장
디스크 추가
이더넷 추가
메모리 추가
CPU 추가
 GlusterFS를 사용하기 위한 노드 시스템들의 물리적인 Resource를 확장해 나가는 방식입니다.
5. 글러스터 파일 시스템 노드 확장
 노드에 대한 scale-out 확장
 GlusterFS를 사용하기 위한 노드 시스템들을 기준으로 확장해 나가는 것입니다.
 Scale-Out capacity 확장의 목적은 전체적인 Performance에 대한 증가를 목적으로 합니다.
6. 글러스터 파일 시스템 데이터 정합성
 GlusterFS의 Self Healing 기능은 Replication을 구성했을때 복제된 데이타들에 대한 정합성을 검증할때
사용하는 기능으로 복제가 정상적이지 않을 경우 자동으로 Sync를 진행합니다.
 Self-Healing 기능을 통한 데이터 Sync
• Self-Healing 특징
- Pro-active self-heal daemon이 백그라운드로 수행
- 10분 간격으로 정합성 검사
- 정합성이 맞지 않는 데이터는 자동으로 Sync 작업 수행됨
6. 글러스터 파일 시스템 데이터 정합성
 GlusterFS의 Self Healing 기능은 Replication을 구성했을때 복제된 데이타들에 대한 정합성을 검증할때
사용하는 기능으로 복제가 정상적이지 않을 경우 자동으로 Sync를 진행합니다.
 Self-Healing 기능을 통한 데이터 Sync
*Self healing & rebalancing을 위해 전체 볼륨의 20%를 여유공간으로 확보하는 것을 권장
6. 글러스터 파일 시스템 데이터 정합성
 GlusterFS의 Re-Balancing 기능은 새로운 노드가 추가 되었을 경우 저장된 데이터를 Hashing Algorithm에
맞게 데이터를 분배해 주는 것입니다.
 Re-Balancing 기능을 통한 데이터 Sync
• Rebalancing 특징
- 신규 노드가 추가/제거되었을 때 데이터를 분산하여 적재하는 기능
- Rebalancing 작업이 진행되지 않으면 신규 노드가 추가되더라도 그 노드의 Brick에는
데이터가 쌓이지 않음
- 두 가지 타입의 rebalancing 기능 제공
• Fix Layout: Hashing table만 변경하여 신규로 들어오는 데이터들이 신규 노드로
저장될 수 있도록 함
• Fix Layout and Migrate Data: Hashing table을 변경하고 기존 데이터들을 변경된
Table에 맞게 재분배시킴
6. 글러스터 파일 시스템 데이터 정합성
 GlusterFS의 Re-Balancing 기능은 새로운 노드가 추가 되었을 경우 저장된 데이터를 Hashing Algorithm에
맞게 데이터를 분배해 주는 것입니다.
 Re-Balancing 기능을 통한 데이터 Sync
*Self healing & rebalancing을 위해 전체 볼륨의 20%를 여유공간으로 확보하는 것을 권장
Performance 향상을 위한 고려사항
6. 글러스터 파일 시스템 성능 향상 제시
Server Considerations
• 필수 구성 요건
- Filesystem: XFS
- Volume Manager: LVM
- inode size: 512B (예, mkfs –t xfs –f –I size=512 /dev/vdb1)
• 추가 구성 요건
- RAID Stripe size: default 64K 이나 필요에 따라 변경 가능
• Networking Consideration
- Traffic Shaping
- Storage Network 와 Application Network 분리
- jumbo framework 사용(패킷 오버헤드와 network latency를 줄이기 위해 필요
• Topology
- NFS 서버와 클라이언트들을 동일한 스위치에 연결
- 네트워크 hop수를 줄임으로써 네트워크 지연을 줄이고 스토리지 성능 향상 가능
6. 글러스터 파일 시스템 성능 향상 제시
 Glusterfs 클라이언트 성능 향상을 위한 프로토콜 제시
 NFS (Network Filesystem)
NFS 접속 방식은 하나의 노드를 접속하고 그 노드를 통해서 다른 노드들의 데이터를 가져와야
하기 때문에 distributed 또는 striped 방식으로 구성된 환경에서는 성능이 저하될 수 있음
 FUSE (Native Client)
크기가 작은 파일들을 처리하고, 클라이언트 수가 많은 환경에서는 native client를 사용하는 것이
적합native client는 파일의 경로를 client가 가지고 있고, brick에 직접 연결하여 데이터를 가져오기
때문에 많은 파일을 처리하는데 큰 성능 향상을 볼 수 있음
 Tuned (Red Hat Storage 에서 제공)
Red Hat Storage 가 제공하는 tuned-profile인 “rhs-high-throughput” 을 적용할 경우, 대 용량
파일이 많은 환경에서 성능 향상을 볼 수 있음
6. 글러스터 파일 시스템 성능 향상 제시
 Red Hat Storage 제품을 사용하게 되는 경우 아래와 깉이 tuning profile 적용할수 있습니다
6. 글러스터 파일 시스템 성능 향상 제시
Native Client Work load avoid
 Direct I/O
- Direct I/O에 대한 처리는 아직 glusterfs에서는 Tech-preview 상태
 Small write transfer sizes – 4 KB I/O size 5x slower
- 파일 사이즈가 작은 경우에는 속도 저하가 나타날수 있다.
- can use NFS client to aggregate writes
 High directory count + high number of bricks
- 디렉토리의 개수가 많거나 브릭이 많은 경우 속도 저하가 나타날수 있다.
6. 글러스터 파일 시스템 성능 향상 제시
기본 튜닝 설정 (RHS,RedHat Storage 기준)
● Dirty_background_ratio 10%-> 1%
● Block device max I/O size 128 KB -> 512 KB
● Block device I/O queue size 128 -> 256
● many drives behind each block device
● Deadline scheduler
● default Linux CFQ I/O scheduler is irrelevant
● Additional tuning one command away (tuned-adm)
 Glusterfs를 사용하기 위한 노드단의 필요한 모든 튜닝 요소는 아래와 같이 적용하는 것이 좋습니다. 하지만
RHS (Red Hat Storage)의 경우에는 아래의 튜닝 옵션들이 기본으로 설정되어 있습니다.
6. 글러스터 파일 시스템 성능 향상 제시
Tuned 서비스 가동과 rhs-high-throughput profile 적용
 RHS (Red Hat Storage) Glusterfs 를 사용할 경우 tuned 서비스를 기준으로 rhs-high-throughput
profile를 적용했을 경우 튜닝이 적용되는 항목들입니다.
- tuned service simplifies tuning for system admins
● rhs-high-throughput profile for sequential reads
● disables I/O barriers
● increases readahead
● reduces pre-emptive scheduling
● disables power-saving mode
GlusterFS 운영을 위한 기본 GUIDE
6. 글러스터 파일 시스템 운영 가이드
 볼륨 준비 및 노드 (Peer) 추가/삭제
gluster> peer probe 192.168.0.6.
gluster> peer probe 192.168.0.7 “ Hostname으로 진행해도 가능”
gluster> peer probe 192.168.0.8
# lvcreate –L +100G –n lv_brick1 vg_server1
# mkfs –t xfs –i size=512 /dev/vg_server1/lv_brick1
# mkdir brick1
# mount /dev/vg_server1/lv_brick1 /brick1
# echo `/dev/vg_server1/lv_brick1 /brick1 xfs default 1 2` >> /etc/fstab
 노드 (Peer)에 대한 추가는 어느 노드에서 진행해도 문제없이 가능합니다
gluster> peer detach 192.168.0.6.
 노드 (Peer) 제거
6. 글러스터 파일 시스템 운영 가이드
gluster> peer status
Number of Peers: 3
Hostname: 192.168.0.6
Uuid: 4e911d81-6ccd-495a-b64c-4a383ceb42ff
State: Peer in Cluster (Connected)
Hostname: 192.168.0.7
Uuid: 3d65ce0f-55ed-409d-8bc0-b1de0b857443
State: Peer in Cluster (Connected)
Hostname: 192.168.0.8
Uuid: a7bbdb6a-114b-4807-8226-70b686bbf104
State: Peer in Cluster (Connected)
 노드 정보 확인 (Peer Status)
 아래와 같이 명령어를 수행하여 현재 등록되어 있는 Peer들에 대한 정보를 확인할 수 있습니다.
6. 글러스터 파일 시스템 운영 가이드
 글러스터 볼륨 타입 (Distributed Volume)
 GlusterFS의 볼륨의 구성원을 브릭(Brick)이라는 단위로 묶어서 클라이언트에 제공하게 됩니다.
 기본적으로 글러스터에서 사용하는 볼륨타입 입니다.
 파일을 여러 개의 Brick에 나눠서 데이터를 저장하는 방식입니다.
gluster> volume create NEW-VOLUME 192.168.0.5:/brick1 192.168.0.6:/brick1
192.168.0.7:/brick1 192.168.0.8:/brick1 .
6. 글러스터 파일 시스템 운영 가이드
 글러스터 볼륨 타입 (Replicated Volume)
 데이터를 안전하게 이중화 하여 구성하고 싶다면 Replicated 방식을 구현 합니다.
 디스크 i/O 성능은 저하될수 있으나 전체적인 데이터의 안전성은 보장할수 있습니다.
 데이터의 불일치가 일어나도 self-healing 을 통해서 데이터 sync를 맞추게 됩니다.
gluster> volume create NEW-VOLUME replica 4 192.168.0.5:/brick1
192.168.0.6:/brick1 192.168.0.7:/brick1 192.168.0.8:/brick1 .
6. 글러스터 파일 시스템 운영 가이드
 글러스터 볼륨 타입 (Striped volume)
 Stripe 방식으로 구현하면 하나의 파일을 블록 단위로 분리하여 각각의 Brick에 분산 저장하게 됩니다.
 사이즈가 큰 파일의 경우 효과적인 성능을 나타낼수 있습니다. (디스크 I/O가 좋아짐)
 하지만 Brick 또는 노드가 하나라도 문제가 발생이 되면 데이터의 안전성을 보장할수 없습니다.
gluster> volume create NEW-VOLUME stripe 4 192.168.0.5:/brick1
192.168.0.6:/brick1 192.168.0.7:/brick1 192.168.0.8:/brick1 .
6. 글러스터 파일 시스템 운영 가이드
 글러스터 볼륨 타입 (Replicate volume + Distribute Volume)
 Replicate 방식과 Distribute 방식의 혼합 구성입니다.
 아래의 방식은 RAID (0+1) 방식과 유하며 Brick 2개는 이중화 되고 나머지 Brick 2개는 Distribute 됩니다
gluster> volume create NEW-VOLUME replica 2 transport tcp
192.168.0.5:/brick1 192.168.0.6:/brick1 192.168.0.7:/brick1 192.168.0.8:/brick1 .
6. 글러스터 파일 시스템 운영 가이드
 글러스터 볼륨 타입 (Striped volume + Distribute Volume)
 Striped 방식과 Distribute 방식의 혼합 구성입니다.
 Brick 2개씩 Striped으로 구성됩니다
gluster> volume create NEW-VOLUME stripe 2 transport tcp 192.168.0.5:/brick1
192.168.0.6:/brick1 192.168.0.7:/brick1 192.168.0.8:/brick1 .
6. 글러스터 파일 시스템 운영 가이드
 글러스터 볼륨에 대한 정보 확인 (Gluster info)
Gluster> volume info test-volume // all을 입력하면 모든 볼륨 정보를 확인할 수 있다.
Volume Name: test-volume
Type: Distributed-Replicate
Status: Created
Number of Bricks: 2 x 2 = 4
Transport-type: tcp
Bricks:
Brick1: 192.168.0.5:/brick1
Brick2: 192.168.0.6:/brick1
Brick3: 192.168.0.7:/brick1
Brick4: 192.168.0.8:/brick1
6. 글러스터 파일 시스템 운영 가이드
gluster> volume start test-volume
gluster> volume stop test-volume
 볼륨 준비가 완료 된후 에는 볼륨을 online/offline 상태로 전환 할수 있습니다.
 볼륨 제거 : online 상태의 볼륨을 offline으로 전환한후 볼륨을 제거합니다.
gluster> volume stop test-volume
gluster> volume delete test-volume
 볼륨추가 : Replicated 구성이 않된 상태에서는 아래와 같이 볼륨을 추가 할수 있습니다.
gluster> volume add-brick test-volume 192.168.0.9:/brick1
6. 글러스터 파일 시스템 운영 가이드
 글러스터 볼륨 replicate volume 추가
 Replicate + Distributed 볼륨 또는 Stripe + Distributed 방식으로 묶여 있는 볼륨의 경우
Replication 또는 Stripe 방식으로 묶은 단위 만큼 볼륨을 추가 해야 합니다.
gluster> volume add-brick test-volume 192.168.0.9:/brick1 192.168.10:/brick1
 글러스터 볼륨 replicate volume 삭제
 Brick을 제거할 경우 데이터의 손실이 발생할수 있기 때문에 권장하지는 않습니다. Stripe 으로 구성된 볼륨의
경우 Brick을 제거 할수 없습니다.
 Replicate + Distribute 또는 Stripe + Distribute 방식으로 묶여 있는 볼륨을 삭제 할경우에는
볼륨이 묶여 있는 단위 만큼 볼륨을 삭제 해야 합니다.
gluster> volume remove-brick test-volume 192.168.0.9:/brick1
192.168.10:/brick1
6. 글러스터 파일 시스템 운영 가이드
 글러스터 볼륨 Brick 교체 (Migration)
 기존에 사용하던 Brick 볼륨이 문제가 생길 경우 새로운 Brick으로 교체를 진행 해야 합니다.
 아래의 절차에 따라서 새로운 Brick으로 교체를 진행 할수 있습니다.
gluster> peer probe 192.168.0.9
 노드추가 : 아래와 같이 Peer를 추가하여 Storage Pool에 볼륨을 추가 합니다
 글러스터 마이그레이션 옵션
- start : 새로운 Brick으로 데이터 이전
- stop : 마이그레이션 정지
- abort : 마이그레이션 명령 취소
- commit : 마이그레이션 완료
gluster> volume replace-brick test-volume 192.168.0.9:/brick1 [옵션]
6. 글러스터 파일 시스템 운영 가이드
 글러스터 볼륨 데이터 분배 (rebalancing)
 새로운 Brick이 추가된 경우에는 데이터가 고르게 분산되지 않은 상태입니다.
 데이터가 고르게 분산되지 않은 경우에는 성능저하가 나타날수 있습니다. 이런경우 데이터 분배 (Rebalancing)
기능을 이용하여 데이터를 고르게 분배를 진행하게 됩니다.
 볼륨 Rebalancing 옵션
- start : 분배 시작
- stop : 분배 정지
- status : 상태 확인
gluster> volume rebalance test-volume 192.168.0.8:/brick1
192.168.0.9:/brick1 [옵션]
6. 글러스터 파일 시스템 운영 가이드
 글러스터 볼륨 Native Client 연결 ( RedHat Subscription 의 경우)
# rhn_register
1. RHN Subscription 을 등록합니다.
# rhn-channel –add –channel=rhel_x86_64-server-rhsclient-6
2. Red Hat Storage Native Client 채널을 등록합니다.
# yum install glusterfs glusterfs-fuse
3. Yum을 이용한 Native Client 설치를 진행합니다.
# mount –t glusterfs –o log-level=WARNING,log-file=/var/log/gluster.log
192.168.0.5:/brick1 /mnt/glusterfs
4. Native Client 마운트를 진행합니다.
6. 글러스터 파일 시스템 운영 가이드
 글러스터 볼륨 NFS 연결
 NFS 방식으로 글러스터 파일 시스템의 Brick을 매뉴얼로 구성하기 접속하기 위해서는 아래와 같이 진행한다.
# mount –t nfs –o vers=3 <HOSTNAME-OR –IPADDR>:/<VOLNAME> <MOUNTDIR>
 글러스터 파일 시스템에 자 자동으로 연결하기 위한 방법은 아래와 같이 진행합니다.
 /etc/fstab 파일에 아래의 형식대로 입력합니다.
# <HOSTNAME-OR-IPADDR>:/<VOLNAME> <MOUNTDIR> nfs defaults, _netdev, vers=3 0 0
Glusterfs 구성제안 및_운영가이드_v2.0

More Related Content

What's hot

Tuning PostgreSQL for High Write Throughput
Tuning PostgreSQL for High Write Throughput Tuning PostgreSQL for High Write Throughput
Tuning PostgreSQL for High Write Throughput Grant McAlister
 
Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison
Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison
Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison Severalnines
 
(발표자료) CentOS EOL에 따른 대응 OS 검토 및 적용 방안.pdf
(발표자료) CentOS EOL에 따른 대응 OS 검토 및 적용 방안.pdf(발표자료) CentOS EOL에 따른 대응 OS 검토 및 적용 방안.pdf
(발표자료) CentOS EOL에 따른 대응 OS 검토 및 적용 방안.pdfssuserf8b8bd1
 
농심 그룹 메가마트 : 온프레미스 Exadata의 AWS 클라우드 환경 전환 사례 공유-김동현, NDS Cloud Innovation Ce...
농심 그룹 메가마트 : 온프레미스 Exadata의 AWS 클라우드 환경 전환 사례 공유-김동현, NDS Cloud Innovation Ce...농심 그룹 메가마트 : 온프레미스 Exadata의 AWS 클라우드 환경 전환 사례 공유-김동현, NDS Cloud Innovation Ce...
농심 그룹 메가마트 : 온프레미스 Exadata의 AWS 클라우드 환경 전환 사례 공유-김동현, NDS Cloud Innovation Ce...Amazon Web Services Korea
 
Service mesh(istio) monitoring
Service mesh(istio) monitoringService mesh(istio) monitoring
Service mesh(istio) monitoringJeong-Ho Na
 
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링Amazon Web Services Korea
 
Cloud Migration 과 Modernization 을 위한 30가지 아이디어-박기흥, AWS Migrations Specialist...
Cloud Migration 과 Modernization 을 위한 30가지 아이디어-박기흥, AWS Migrations Specialist...Cloud Migration 과 Modernization 을 위한 30가지 아이디어-박기흥, AWS Migrations Specialist...
Cloud Migration 과 Modernization 을 위한 30가지 아이디어-박기흥, AWS Migrations Specialist...Amazon Web Services Korea
 
Apache kafka 관리와 모니터링
Apache kafka 관리와 모니터링Apache kafka 관리와 모니터링
Apache kafka 관리와 모니터링JANGWONSEO4
 
MySQL Database Architectures - MySQL InnoDB ClusterSet 2021-11
MySQL Database Architectures - MySQL InnoDB ClusterSet 2021-11MySQL Database Architectures - MySQL InnoDB ClusterSet 2021-11
MySQL Database Architectures - MySQL InnoDB ClusterSet 2021-11Kenny Gryp
 
Apache Spark on Kubernetes Anirudh Ramanathan and Tim Chen
Apache Spark on Kubernetes Anirudh Ramanathan and Tim ChenApache Spark on Kubernetes Anirudh Ramanathan and Tim Chen
Apache Spark on Kubernetes Anirudh Ramanathan and Tim ChenDatabricks
 
[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법
[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법
[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법Ji-Woong Choi
 
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축Ji-Woong Choi
 
Hazelcast Essentials
Hazelcast EssentialsHazelcast Essentials
Hazelcast EssentialsRahul Gupta
 
Hybrid cloud : why and how to connect your datacenters to OVHcloud ?
Hybrid cloud : why and how to connect your datacenters to OVHcloud ? Hybrid cloud : why and how to connect your datacenters to OVHcloud ?
Hybrid cloud : why and how to connect your datacenters to OVHcloud ? OVHcloud
 
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...Amazon Web Services Korea
 
[NDC17] Kubernetes로 개발서버 간단히 찍어내기
[NDC17] Kubernetes로 개발서버 간단히 찍어내기[NDC17] Kubernetes로 개발서버 간단히 찍어내기
[NDC17] Kubernetes로 개발서버 간단히 찍어내기SeungYong Oh
 
AWS 기반 대규모 트래픽 견디기 - 장준엽 (구로디지털 모임) :: AWS Community Day 2017
AWS 기반 대규모 트래픽 견디기 - 장준엽 (구로디지털 모임) :: AWS Community Day 2017AWS 기반 대규모 트래픽 견디기 - 장준엽 (구로디지털 모임) :: AWS Community Day 2017
AWS 기반 대규모 트래픽 견디기 - 장준엽 (구로디지털 모임) :: AWS Community Day 2017AWSKRUG - AWS한국사용자모임
 
MySQL5.6でGTIDを試してそっと閉じた
MySQL5.6でGTIDを試してそっと閉じたMySQL5.6でGTIDを試してそっと閉じた
MySQL5.6でGTIDを試してそっと閉じたEmma Haruka Iwao
 

What's hot (20)

Tuning PostgreSQL for High Write Throughput
Tuning PostgreSQL for High Write Throughput Tuning PostgreSQL for High Write Throughput
Tuning PostgreSQL for High Write Throughput
 
Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison
Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison
Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison
 
Planning for Disaster Recovery (DR) with Galera Cluster
Planning for Disaster Recovery (DR) with Galera ClusterPlanning for Disaster Recovery (DR) with Galera Cluster
Planning for Disaster Recovery (DR) with Galera Cluster
 
(발표자료) CentOS EOL에 따른 대응 OS 검토 및 적용 방안.pdf
(발표자료) CentOS EOL에 따른 대응 OS 검토 및 적용 방안.pdf(발표자료) CentOS EOL에 따른 대응 OS 검토 및 적용 방안.pdf
(발표자료) CentOS EOL에 따른 대응 OS 검토 및 적용 방안.pdf
 
농심 그룹 메가마트 : 온프레미스 Exadata의 AWS 클라우드 환경 전환 사례 공유-김동현, NDS Cloud Innovation Ce...
농심 그룹 메가마트 : 온프레미스 Exadata의 AWS 클라우드 환경 전환 사례 공유-김동현, NDS Cloud Innovation Ce...농심 그룹 메가마트 : 온프레미스 Exadata의 AWS 클라우드 환경 전환 사례 공유-김동현, NDS Cloud Innovation Ce...
농심 그룹 메가마트 : 온프레미스 Exadata의 AWS 클라우드 환경 전환 사례 공유-김동현, NDS Cloud Innovation Ce...
 
Service mesh(istio) monitoring
Service mesh(istio) monitoringService mesh(istio) monitoring
Service mesh(istio) monitoring
 
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
 
Cloud Migration 과 Modernization 을 위한 30가지 아이디어-박기흥, AWS Migrations Specialist...
Cloud Migration 과 Modernization 을 위한 30가지 아이디어-박기흥, AWS Migrations Specialist...Cloud Migration 과 Modernization 을 위한 30가지 아이디어-박기흥, AWS Migrations Specialist...
Cloud Migration 과 Modernization 을 위한 30가지 아이디어-박기흥, AWS Migrations Specialist...
 
Apache kafka 관리와 모니터링
Apache kafka 관리와 모니터링Apache kafka 관리와 모니터링
Apache kafka 관리와 모니터링
 
MySQL Database Architectures - MySQL InnoDB ClusterSet 2021-11
MySQL Database Architectures - MySQL InnoDB ClusterSet 2021-11MySQL Database Architectures - MySQL InnoDB ClusterSet 2021-11
MySQL Database Architectures - MySQL InnoDB ClusterSet 2021-11
 
Apache Spark on Kubernetes Anirudh Ramanathan and Tim Chen
Apache Spark on Kubernetes Anirudh Ramanathan and Tim ChenApache Spark on Kubernetes Anirudh Ramanathan and Tim Chen
Apache Spark on Kubernetes Anirudh Ramanathan and Tim Chen
 
[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법
[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법
[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법
 
SQL Server 入門
SQL Server 入門SQL Server 入門
SQL Server 入門
 
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
 
Hazelcast Essentials
Hazelcast EssentialsHazelcast Essentials
Hazelcast Essentials
 
Hybrid cloud : why and how to connect your datacenters to OVHcloud ?
Hybrid cloud : why and how to connect your datacenters to OVHcloud ? Hybrid cloud : why and how to connect your datacenters to OVHcloud ?
Hybrid cloud : why and how to connect your datacenters to OVHcloud ?
 
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...
 
[NDC17] Kubernetes로 개발서버 간단히 찍어내기
[NDC17] Kubernetes로 개발서버 간단히 찍어내기[NDC17] Kubernetes로 개발서버 간단히 찍어내기
[NDC17] Kubernetes로 개발서버 간단히 찍어내기
 
AWS 기반 대규모 트래픽 견디기 - 장준엽 (구로디지털 모임) :: AWS Community Day 2017
AWS 기반 대규모 트래픽 견디기 - 장준엽 (구로디지털 모임) :: AWS Community Day 2017AWS 기반 대규모 트래픽 견디기 - 장준엽 (구로디지털 모임) :: AWS Community Day 2017
AWS 기반 대규모 트래픽 견디기 - 장준엽 (구로디지털 모임) :: AWS Community Day 2017
 
MySQL5.6でGTIDを試してそっと閉じた
MySQL5.6でGTIDを試してそっと閉じたMySQL5.6でGTIDを試してそっと閉じた
MySQL5.6でGTIDを試してそっと閉じた
 

Similar to Glusterfs 구성제안 및_운영가이드_v2.0

Glusterfs 구성제안서 v1.0
Glusterfs 구성제안서 v1.0Glusterfs 구성제안서 v1.0
Glusterfs 구성제안서 v1.0sprdd
 
Glusterfs 구성제안서 v1.0
Glusterfs 구성제안서 v1.0Glusterfs 구성제안서 v1.0
Glusterfs 구성제안서 v1.0sprdd
 
Glusterfs 구성제안 v1.0
Glusterfs 구성제안 v1.0Glusterfs 구성제안 v1.0
Glusterfs 구성제안 v1.0sprdd
 
[오픈소스컨설팅]Glster FS간단소개
[오픈소스컨설팅]Glster FS간단소개[오픈소스컨설팅]Glster FS간단소개
[오픈소스컨설팅]Glster FS간단소개Ji-Woong Choi
 
Object storage의 이해와 활용
Object storage의 이해와 활용Object storage의 이해와 활용
Object storage의 이해와 활용Seoro Kim
 
Hadoop Overview 1
Hadoop Overview 1Hadoop Overview 1
Hadoop Overview 1Kay Kim
 
Osc4.x installation v1-upload
Osc4.x installation v1-uploadOsc4.x installation v1-upload
Osc4.x installation v1-uploadDong-Hwa jung
 
확장가능한 웹 아키텍쳐 구축 방안
확장가능한 웹 아키텍쳐 구축 방안 확장가능한 웹 아키텍쳐 구축 방안
확장가능한 웹 아키텍쳐 구축 방안 IMQA
 
Scalable web architecture and distributed systems
Scalable web architecture and distributed systemsScalable web architecture and distributed systems
Scalable web architecture and distributed systems현종 김
 
Scalable web architecture and distributed systems
Scalable web architecture and distributed systemsScalable web architecture and distributed systems
Scalable web architecture and distributed systemseva
 
Oracle Unified Storage.pptx
Oracle Unified Storage.pptxOracle Unified Storage.pptx
Oracle Unified Storage.pptxJongMunLee4
 
Tajo and SQL-on-Hadoop in Tech Planet 2013
Tajo and SQL-on-Hadoop in Tech Planet 2013Tajo and SQL-on-Hadoop in Tech Planet 2013
Tajo and SQL-on-Hadoop in Tech Planet 2013Gruter
 
Google3
Google3Google3
Google3semi06
 
Java 초보자를 위한 hadoop 설정
Java 초보자를 위한 hadoop 설정Java 초보자를 위한 hadoop 설정
Java 초보자를 위한 hadoop 설정HyeonSeok Choi
 
Apache kafka performance(throughput) - without data loss and guaranteeing dat...
Apache kafka performance(throughput) - without data loss and guaranteeing dat...Apache kafka performance(throughput) - without data loss and guaranteeing dat...
Apache kafka performance(throughput) - without data loss and guaranteeing dat...SANG WON PARK
 
로그 수집, 집약
로그 수집, 집약로그 수집, 집약
로그 수집, 집약kidoki
 

Similar to Glusterfs 구성제안 및_운영가이드_v2.0 (20)

Glusterfs 구성제안서 v1.0
Glusterfs 구성제안서 v1.0Glusterfs 구성제안서 v1.0
Glusterfs 구성제안서 v1.0
 
Glusterfs 구성제안서 v1.0
Glusterfs 구성제안서 v1.0Glusterfs 구성제안서 v1.0
Glusterfs 구성제안서 v1.0
 
Glusterfs 구성제안 v1.0
Glusterfs 구성제안 v1.0Glusterfs 구성제안 v1.0
Glusterfs 구성제안 v1.0
 
[오픈소스컨설팅]Glster FS간단소개
[오픈소스컨설팅]Glster FS간단소개[오픈소스컨설팅]Glster FS간단소개
[오픈소스컨설팅]Glster FS간단소개
 
Object storage의 이해와 활용
Object storage의 이해와 활용Object storage의 이해와 활용
Object storage의 이해와 활용
 
Hadoop Overview 1
Hadoop Overview 1Hadoop Overview 1
Hadoop Overview 1
 
Osc4.x installation v1-upload
Osc4.x installation v1-uploadOsc4.x installation v1-upload
Osc4.x installation v1-upload
 
확장가능한 웹 아키텍쳐 구축 방안
확장가능한 웹 아키텍쳐 구축 방안 확장가능한 웹 아키텍쳐 구축 방안
확장가능한 웹 아키텍쳐 구축 방안
 
Scalable web architecture and distributed systems
Scalable web architecture and distributed systemsScalable web architecture and distributed systems
Scalable web architecture and distributed systems
 
Scalable web architecture and distributed systems
Scalable web architecture and distributed systemsScalable web architecture and distributed systems
Scalable web architecture and distributed systems
 
Hadoop administration
Hadoop administrationHadoop administration
Hadoop administration
 
Oracle Unified Storage.pptx
Oracle Unified Storage.pptxOracle Unified Storage.pptx
Oracle Unified Storage.pptx
 
HDFS Overview
HDFS OverviewHDFS Overview
HDFS Overview
 
Tajo and SQL-on-Hadoop in Tech Planet 2013
Tajo and SQL-on-Hadoop in Tech Planet 2013Tajo and SQL-on-Hadoop in Tech Planet 2013
Tajo and SQL-on-Hadoop in Tech Planet 2013
 
Hdfs
HdfsHdfs
Hdfs
 
Google3
Google3Google3
Google3
 
Java 초보자를 위한 hadoop 설정
Java 초보자를 위한 hadoop 설정Java 초보자를 위한 hadoop 설정
Java 초보자를 위한 hadoop 설정
 
Apache kafka performance(throughput) - without data loss and guaranteeing dat...
Apache kafka performance(throughput) - without data loss and guaranteeing dat...Apache kafka performance(throughput) - without data loss and guaranteeing dat...
Apache kafka performance(throughput) - without data loss and guaranteeing dat...
 
Gfs Kyu
Gfs KyuGfs Kyu
Gfs Kyu
 
로그 수집, 집약
로그 수집, 집약로그 수집, 집약
로그 수집, 집약
 

More from sprdd

Linux con europe_2014_full_system_rollback_btrfs_snapper_0
Linux con europe_2014_full_system_rollback_btrfs_snapper_0Linux con europe_2014_full_system_rollback_btrfs_snapper_0
Linux con europe_2014_full_system_rollback_btrfs_snapper_0sprdd
 
Linux con europe_2014_f
Linux con europe_2014_fLinux con europe_2014_f
Linux con europe_2014_fsprdd
 
Openstack v4 0
Openstack v4 0Openstack v4 0
Openstack v4 0sprdd
 
Hardware accelerated virtio networking for nfv linux con
Hardware accelerated virtio networking for nfv linux conHardware accelerated virtio networking for nfv linux con
Hardware accelerated virtio networking for nfv linux consprdd
 
난공불락세미나 Ldap
난공불락세미나 Ldap난공불락세미나 Ldap
난공불락세미나 Ldapsprdd
 
Lkda facebook seminar_140419
Lkda facebook seminar_140419Lkda facebook seminar_140419
Lkda facebook seminar_140419sprdd
 
Zinst 패키지 기반의-리눅스_중앙관리시스템_20140415
Zinst 패키지 기반의-리눅스_중앙관리시스템_20140415Zinst 패키지 기반의-리눅스_중앙관리시스템_20140415
Zinst 패키지 기반의-리눅스_중앙관리시스템_20140415sprdd
 
Summit2014 riel chegu_w_0340_automatic_numa_balancing_0
Summit2014 riel chegu_w_0340_automatic_numa_balancing_0Summit2014 riel chegu_w_0340_automatic_numa_balancing_0
Summit2014 riel chegu_w_0340_automatic_numa_balancing_0sprdd
 
오픈소스컨설팅 클러스터제안 V1.0
오픈소스컨설팅 클러스터제안 V1.0오픈소스컨설팅 클러스터제안 V1.0
오픈소스컨설팅 클러스터제안 V1.0sprdd
 
HP NMI WATCHDOG
HP NMI WATCHDOGHP NMI WATCHDOG
HP NMI WATCHDOGsprdd
 
H2890 emc-clariion-asymm-active-wp
H2890 emc-clariion-asymm-active-wpH2890 emc-clariion-asymm-active-wp
H2890 emc-clariion-asymm-active-wpsprdd
 
Cluster pitfalls recommand
Cluster pitfalls recommandCluster pitfalls recommand
Cluster pitfalls recommandsprdd
 
Wheeler w 0450_linux_file_systems1
Wheeler w 0450_linux_file_systems1Wheeler w 0450_linux_file_systems1
Wheeler w 0450_linux_file_systems1sprdd
 
Wheeler w 0450_linux_file_systems1
Wheeler w 0450_linux_file_systems1Wheeler w 0450_linux_file_systems1
Wheeler w 0450_linux_file_systems1sprdd
 
2013fooscoverpageimage 130417105210-phpapp01
2013fooscoverpageimage 130417105210-phpapp012013fooscoverpageimage 130417105210-phpapp01
2013fooscoverpageimage 130417105210-phpapp01sprdd
 
Openstackinsideoutv10 140222065532-phpapp01
Openstackinsideoutv10 140222065532-phpapp01Openstackinsideoutv10 140222065532-phpapp01
Openstackinsideoutv10 140222065532-phpapp01sprdd
 
Rhel cluster gfs_improveperformance
Rhel cluster gfs_improveperformanceRhel cluster gfs_improveperformance
Rhel cluster gfs_improveperformancesprdd
 
Doldoggi bisiri
Doldoggi bisiriDoldoggi bisiri
Doldoggi bisirisprdd
 
유닉스 리눅스 마이그레이션_이호성_v1.0
유닉스 리눅스 마이그레이션_이호성_v1.0유닉스 리눅스 마이그레이션_이호성_v1.0
유닉스 리눅스 마이그레이션_이호성_v1.0sprdd
 
세미나설문
세미나설문세미나설문
세미나설문sprdd
 

More from sprdd (20)

Linux con europe_2014_full_system_rollback_btrfs_snapper_0
Linux con europe_2014_full_system_rollback_btrfs_snapper_0Linux con europe_2014_full_system_rollback_btrfs_snapper_0
Linux con europe_2014_full_system_rollback_btrfs_snapper_0
 
Linux con europe_2014_f
Linux con europe_2014_fLinux con europe_2014_f
Linux con europe_2014_f
 
Openstack v4 0
Openstack v4 0Openstack v4 0
Openstack v4 0
 
Hardware accelerated virtio networking for nfv linux con
Hardware accelerated virtio networking for nfv linux conHardware accelerated virtio networking for nfv linux con
Hardware accelerated virtio networking for nfv linux con
 
난공불락세미나 Ldap
난공불락세미나 Ldap난공불락세미나 Ldap
난공불락세미나 Ldap
 
Lkda facebook seminar_140419
Lkda facebook seminar_140419Lkda facebook seminar_140419
Lkda facebook seminar_140419
 
Zinst 패키지 기반의-리눅스_중앙관리시스템_20140415
Zinst 패키지 기반의-리눅스_중앙관리시스템_20140415Zinst 패키지 기반의-리눅스_중앙관리시스템_20140415
Zinst 패키지 기반의-리눅스_중앙관리시스템_20140415
 
Summit2014 riel chegu_w_0340_automatic_numa_balancing_0
Summit2014 riel chegu_w_0340_automatic_numa_balancing_0Summit2014 riel chegu_w_0340_automatic_numa_balancing_0
Summit2014 riel chegu_w_0340_automatic_numa_balancing_0
 
오픈소스컨설팅 클러스터제안 V1.0
오픈소스컨설팅 클러스터제안 V1.0오픈소스컨설팅 클러스터제안 V1.0
오픈소스컨설팅 클러스터제안 V1.0
 
HP NMI WATCHDOG
HP NMI WATCHDOGHP NMI WATCHDOG
HP NMI WATCHDOG
 
H2890 emc-clariion-asymm-active-wp
H2890 emc-clariion-asymm-active-wpH2890 emc-clariion-asymm-active-wp
H2890 emc-clariion-asymm-active-wp
 
Cluster pitfalls recommand
Cluster pitfalls recommandCluster pitfalls recommand
Cluster pitfalls recommand
 
Wheeler w 0450_linux_file_systems1
Wheeler w 0450_linux_file_systems1Wheeler w 0450_linux_file_systems1
Wheeler w 0450_linux_file_systems1
 
Wheeler w 0450_linux_file_systems1
Wheeler w 0450_linux_file_systems1Wheeler w 0450_linux_file_systems1
Wheeler w 0450_linux_file_systems1
 
2013fooscoverpageimage 130417105210-phpapp01
2013fooscoverpageimage 130417105210-phpapp012013fooscoverpageimage 130417105210-phpapp01
2013fooscoverpageimage 130417105210-phpapp01
 
Openstackinsideoutv10 140222065532-phpapp01
Openstackinsideoutv10 140222065532-phpapp01Openstackinsideoutv10 140222065532-phpapp01
Openstackinsideoutv10 140222065532-phpapp01
 
Rhel cluster gfs_improveperformance
Rhel cluster gfs_improveperformanceRhel cluster gfs_improveperformance
Rhel cluster gfs_improveperformance
 
Doldoggi bisiri
Doldoggi bisiriDoldoggi bisiri
Doldoggi bisiri
 
유닉스 리눅스 마이그레이션_이호성_v1.0
유닉스 리눅스 마이그레이션_이호성_v1.0유닉스 리눅스 마이그레이션_이호성_v1.0
유닉스 리눅스 마이그레이션_이호성_v1.0
 
세미나설문
세미나설문세미나설문
세미나설문
 

Glusterfs 구성제안 및_운영가이드_v2.0

  • 1. 2013. 09.13 글러스터 파일 시스템 설정 가이드 v2.0 주식회사 오픈소스컨설팅 이호성 차장
  • 2. 1.GlusterFS 개요  글러스터는 레드햇에서 지원하는 오픈소스 파일시스템 으로써 수천 PetaByte 급의 대용량에 수천개의 클라이언트가 접속하여 사용 가능한 scale-out 방식 분산파일 시스템입니다.  GlusterFS는 기존의 분산 파일 시스템에 비해 비교적 구성이 간단하며 , 대용량 및 대규모의 I/O처리 능력이 뛰어납니다.
  • 3. 2.GlusterFS 표준 아키텍쳐  레드햇의 글러스터 파일 시스템의 경우 네트워크의 capability가 중요합니다.  Client Side에서 사용하는 프로토콜의 경우에는 CIFS, NFS 프로토콜을 사용하여 Brick에 연결하게 됩니다.
  • 4. 3. 글러스터 파일 시스템 사전 요구 사항 (Prerequisites)  일반적 구성 ( General Configuration) - 중앙에 있는 Time Server를 이용한 노드간이 시간 동기화 설정 (ex : ntp 설정)  파일 시스템 구성 (Filesystem Requirement) - Brick에 사용되는 파일 시스템의 경우 XFS 파일 시스템을 사용하는 것을 권장 - XFS 파일 시스템의 경우 저널링 파일 시스템이기 때문에 신속한 복구가 가능하며, 대용량 디스크를 지원 - XFS 파일 시스템은 온라인 상태 또는 마운트된 상태에서도 de-fragmented 또는 확장이 가능  네트워크 구성 (Network Configuration) - 글러스터 파일 시스템은 고속의 네트워크 환경이 요구됨, (ex: Infiniband. 10G, 1G) - 클라이언트와 서버간의 통신에 있어서는 최대한 네트워크 대역폭을 확보해 주는것을 권장하고 있음
  • 5. 3. 글러스터 파일 시스템 사전 요구 사항 (Prerequisites)  글러스터 파일 시스템을 사용하기 위해서는 하드웨어 사양 및 구성에 대한 Requirement 반영이 중요합니다.  Red Hat Storage Server Compatibility - RHS 제품은 운영체제 형태의 설치 이미지를 제공하기 때문에 하드웨어 정합성에 대한 체크가 요구된다. 하드웨어 도입전 아래의 사이트에서 지원 하드웨어에 대한 정합성을 확인을 먼저 진행한다. (H/W Compatibility List : https://hardware.redhat.com)  General Requirement H/W for Red Hat Storage Server - H/W Compatibility에 부합되는 하드웨어를 도입 (RHEL6 또는 그 이상 되는 버전의 호환성과 부합) - 2소켓 서버 (4-core, 6-core or 8-core) 를 권장하고 있다. (no 1-socket, 4-socket, 8-socket) - Super Micro Storage Server for Use Case (Use Case 별 (HPC, General Fileserver, Archival backup) 도입 가능한 스토리지 리스트) SuperStorage Server 2027R-E1R24N for High Performance Computing. SuperStorage Server 6027R-E1R12N for General Purpose File Serving. SuperStorage Server 6047R-E1R36N for Archival and backup.
  • 6. 3. 글러스터 파일 시스템 사전 요구 사항 (Prerequisites)  시스템 용도별 (Use Case) 글러스터를 적용하기 위해서 요구되어 지는 스토리지에 대한 사양은 아래와 같습니다 .  High-Performance Computing - 2u/24 (JBODs may be attached except for Supermicro, not to exceed 24 drives per server even with JBOD(s)) - 15000 RPM 600GB drives(2.5" inch SAS) - Minimum RAM 48 GB  General Purpose File Serving - 2u/12 (JBODs may be attached except for Supermicro, not to exceed 12 drives per server even with JBOD(s)) - 7200 or 10000 RPM 2/3 TB drives (3.5" SAS or SATA) - Minimum RAM 32 GB  Archival use-case - 4u/36 (JBODs may be attached except for Supermicro, not to exceed 36 drives per server even with JBOD(s)) - 7200 or 10000 RPM 2/3 TB drives (3.5" SAS or SATA) - Minimum RAM 16 GB
  • 7. 3. 글러스터 파일 시스템 사전 요구 사항 (Prerequisites) 3.1.1 Server Requirements HP, Dell, Fujitsu, IBM, Cisco, NEC, Hitachi에서 출시된 대부분의 2socket 서버 지원 3.1.2 Storage Requirement • OS 용 디스크 구성: 200GB 이상 * 2EA, Raid 1(mirroring) • Data 저장용 디스크 구성 - 12개 디스크 그룹의 Raid 6 - battery-backed H/W Raid Array - write-back option 을 Raid Array Interface or API로 제공해야 함(성능 보장을 위해 write-back 옵션 권고) 3.1 Hardware Compatibility
  • 8. Usable 180TB Usable 180TB Usable 180TB Usable 180TB Usable 180TB Usable 180TB Usable 180TB Usable 180TB Usable 180TB Usable 180TB Usable 180TB Usable 180TB Usable 180TB Usable 180TB Usable 180TB Usable 180TB Service 10G Network Replication 10Gb Ethernet L3 Backbone H/W Mgmt. Server (HP SIM) Red Hat Storage Mgmt. Console Initial capacity (2.6 PB) 10g 10g Mgmt. 1G Network Aggregation switch Aggregation switch 3. 글러스터 파일 시스템 사전 요구 사항 (Prerequisites) • Trusted Peer Network: Ethernet(1Gb 와 10Gb), *Infiniband • NIC: 서버에는 10Gb * 2EA port 장착 권고, 10Gb 불가시 1Gb * 2EA port 3.2 Network Requirement * Infiniband: Infiniband 사용시에는 별도 Red Hat Review 필요 * tcp tuning: 10Gb 이더넷 환경에서 sequential read 젂송 했을 때, tcp 별도 튜닝 불필요. 오히려 튜닝했을 때 성능이 저하되거나 동일한 성능을 제공했었음
  • 9. GlusterFS 는 확장에 대한 제약이 없으나 차후에 원활한 기술지원과 성능을 보장하기 위해 아래의 제약 사항을 두고 있음 • 최소 노드수: 4 nodes • 최대 노드수: 64 nodes • 스토리지 풀 최대 용량: 8 Petabytes( 2 replica 구성 시, 4 Petabytes) • 스토리지 볼륨 요구 사항 - 약 20%의 볼륨 여유 공간 권고 - 복제 및 self healing 기능을 위해 필요 - 최소 15% 여유 공간 3.4 Server Pool Requirements 3. 글러스터 파일 시스템 사전 요구 사항 (Prerequisites)
  • 10. 클라이언트 접속 방식은 GlusterFS Native Client, NFS or CIFS를 제공. Server Pool의 Node당 최대 16 Client 접속 허용 3.5.1 GlusterFS Native Client • 높은 동시접속, 성능, 빠른 failover 기능 제공 • POSIX export 방식을 사용하기 때문에 일반 파일시스템처럼 mount 하여 사용 • Write Performance의 향상을 요구되거나 동시 사용율이 높을때 • Client OS에 별도 native client 설치 필요 • 지원 Client OS : RHEL5.8 이상, RHEL6.0 이상 3.5.2 NFS Support • 커널단의 NFS가 아닌 Gluster NFS Translator에서 제공하는 NFS 서비스 이용 • NFSv3 클라이언트 구성 권장 • NFS를 마운트 할때 vers=3 옵션을 추가. • Standard AutoMount 를 지원 • 작은 파일들이 많을때 Read 성능이 좋다. • 글러스터내에 NLM (Networ Lock Manager) 이 노드별 Locking를 관리 3. 글러스터 파일 시스템 사전 요구 사항 (Prerequisites) 3.5 Client Compatibility
  • 11. 3. 글러스터 파일 시스템 사전 요구 사항 (Prerequisites) 3.5 Client Compatibility 클라이언트 접속 방식은 GlusterFS Native Client, NFS or CIFS를 제공. Server Pool의 Node당 최대 16 Client 접속 허용 3.5.3 CIFS Support • Storage Pool의 어느 서버에 접속해도 동일한 파일시스템 공유 가능 • CIFS 서비스는 스토리지 소프트웨어와 독립적으로 작동 • Native mount point는 SAMBA를 통해서 공유가 가능 • 먼저 Native로 mount 한후에 CIFS를 연결 • 지원 Client OS - Fedora, Debian 기반 리눅스 배포판 - Unix(Solaris 10+) - Microsoft Windows Server 2008, Windows 7
  • 12. 4. 글러스터 파일 시스템 복제 방식  Distributed - 분산 파일시스템이 필요하고 데이터 안전성이 요구되지 않을 때 사용  Replicated - 분산 파일시스템은 사용하지 않고 데이터 안전성이 매우 중요할 때 사용  Striped - 큰 파일의 동시접속이 매우 높을 때 사용  Distributed Striped - 확장성을 필요로 하고 파일이 크고 동시접속이 높을 때 사용  Distributed Replicated - 분산 파일시스템을 사용하면서 동시에 데이터 안전성을 요구할 때 사용. 대부분의 환경에서 Read 속도가 매우 좋음  Distributed Striped Rplicated - 파일에 대한 동시접속이 많고 성능이 중요할 때 사용 - map reduce 업무에만 지원  Striped Replicated - 큰 파일에 대한 동시 접속이 많고 성능이 중요할 때 사용 - map reduce 업무에만 지원  글러스터 파일 시스템에 대한 복제 방식은 아래와 같이 7가지의 동작 형태로 데이터를 복제합니다.
  • 13. 4. 글러스터 파일 시스템 복제 방식  Distributed 복제 방식  여러 개의 브릭(Brick) 볼륨을 거쳐서 데이타틀 저장하는 방식입니다.  분산파일 시스템을 사용하기 위한 기본 구성입니다.  디스크나, 노드의 장애시 데이터의 안전성을 보장할수 없습니다.
  • 14. 4. 글러스터 파일 시스템 복제 방식  Replicated 복제 방식  여러 개의 브릭(Brick) 볼륨을 거쳐서 데이타틀 저장하는 방식입니다.  운영하는 데이터의 안정성이 보장되어야 할때 사용되는 복제 방식으로써 Brick 볼륨이 서로 다른 서버에 존재할때 안전하게 데이터가 복제될수 있습니다.
  • 15. 4. 글러스터 파일 시스템 복제 방식  Stripe 복제 방식  파일의 사이즈가 크고 동시 접속가 많은 경우 적합한 데이터 복제 방식 입니다.  하나의 파일을 여러 개의 Brick에 분산하여 데이터를 저장함으로 데이터의 안전성을 보장할수 없습니다.
  • 16. 4. 글러스터 파일 시스템 복제 방식  Distributed Stripe 복제 방식  파일의 사이즈가 크고 동시 접속가 많은 경우 적합한 데이터 복제 방식 입니다.  기존의 Stripe 방식에서 분산파일 시스템을 사용하기 위해서 구성하는 복제 방식입니다.
  • 17. 4. 글러스터 파일 시스템 복제 방식  Distributed replicated 복제 방식  분산파일 시스템을 사용하면서 동시에 데이터의 안전성을 보장받기 위한 복제 방식입니다.  일반적으로 많이 사용되는 구성 방식이며 Read Performance가 좋습니다.  데이터의 안전성을 위해서 복제에 사용된은 Brick은 각각 다른 서버에 위치하고 있어야 합니다.
  • 18. 4. 글러스터 파일 시스템 복제 방식  Distributed stripe replicated 복제 방식  파일에 대한 동시 접속이 많고 전체적인 성능이 중요하다고 판단되어 질때 구성하는 복제방식입니다.  일반적으로 Mapreduce 를 사용할때 구성하는 방식으로 권장하고 있습니다..  복제를 통한 데이터의 안전성을 보장하기 위해서 구성하는 복제 방식입니다
  • 19. 4. 글러스터 파일 시스템 복제 방식  stripe replicated 복제 방식  파일에 대한 동시 접속이 많고 전체적인 성능이 중요하다고 판단되어 질때 구성하는 복제방식입니다.  일반적으로 Mapreduce 를 사용할때 구성하는 방식으로 권장하고 있습니다..
  • 20. 4. 글러스터 파일 시스템 복제 방식  Geo replicated 복제 방식  Geo Replication 복제 방식을 통해서 원격지 볼륨과 복제하여 데이터의 안전성을 보장합니다.  기본 Master/ Slave 모드로 동작.  동기식/비동기식/증분복제 방식으로 데이터를 전송  LAN / WAN /INTERNTE 구간에서 복제.  데이터의 동기화를 위해서 반드시 NTP 설정.
  • 21. 5. 글러스터 파일 시스템 물리적 확장  노드에 대한 scale-up 확장 디스크 추가 이더넷 추가 메모리 추가 CPU 추가  GlusterFS를 사용하기 위한 노드 시스템들의 물리적인 Resource를 확장해 나가는 방식입니다.
  • 22. 5. 글러스터 파일 시스템 노드 확장  노드에 대한 scale-out 확장  GlusterFS를 사용하기 위한 노드 시스템들을 기준으로 확장해 나가는 것입니다.  Scale-Out capacity 확장의 목적은 전체적인 Performance에 대한 증가를 목적으로 합니다.
  • 23. 6. 글러스터 파일 시스템 데이터 정합성  GlusterFS의 Self Healing 기능은 Replication을 구성했을때 복제된 데이타들에 대한 정합성을 검증할때 사용하는 기능으로 복제가 정상적이지 않을 경우 자동으로 Sync를 진행합니다.  Self-Healing 기능을 통한 데이터 Sync • Self-Healing 특징 - Pro-active self-heal daemon이 백그라운드로 수행 - 10분 간격으로 정합성 검사 - 정합성이 맞지 않는 데이터는 자동으로 Sync 작업 수행됨
  • 24. 6. 글러스터 파일 시스템 데이터 정합성  GlusterFS의 Self Healing 기능은 Replication을 구성했을때 복제된 데이타들에 대한 정합성을 검증할때 사용하는 기능으로 복제가 정상적이지 않을 경우 자동으로 Sync를 진행합니다.  Self-Healing 기능을 통한 데이터 Sync *Self healing & rebalancing을 위해 전체 볼륨의 20%를 여유공간으로 확보하는 것을 권장
  • 25. 6. 글러스터 파일 시스템 데이터 정합성  GlusterFS의 Re-Balancing 기능은 새로운 노드가 추가 되었을 경우 저장된 데이터를 Hashing Algorithm에 맞게 데이터를 분배해 주는 것입니다.  Re-Balancing 기능을 통한 데이터 Sync • Rebalancing 특징 - 신규 노드가 추가/제거되었을 때 데이터를 분산하여 적재하는 기능 - Rebalancing 작업이 진행되지 않으면 신규 노드가 추가되더라도 그 노드의 Brick에는 데이터가 쌓이지 않음 - 두 가지 타입의 rebalancing 기능 제공 • Fix Layout: Hashing table만 변경하여 신규로 들어오는 데이터들이 신규 노드로 저장될 수 있도록 함 • Fix Layout and Migrate Data: Hashing table을 변경하고 기존 데이터들을 변경된 Table에 맞게 재분배시킴
  • 26. 6. 글러스터 파일 시스템 데이터 정합성  GlusterFS의 Re-Balancing 기능은 새로운 노드가 추가 되었을 경우 저장된 데이터를 Hashing Algorithm에 맞게 데이터를 분배해 주는 것입니다.  Re-Balancing 기능을 통한 데이터 Sync *Self healing & rebalancing을 위해 전체 볼륨의 20%를 여유공간으로 확보하는 것을 권장
  • 28. 6. 글러스터 파일 시스템 성능 향상 제시 Server Considerations • 필수 구성 요건 - Filesystem: XFS - Volume Manager: LVM - inode size: 512B (예, mkfs –t xfs –f –I size=512 /dev/vdb1) • 추가 구성 요건 - RAID Stripe size: default 64K 이나 필요에 따라 변경 가능 • Networking Consideration - Traffic Shaping - Storage Network 와 Application Network 분리 - jumbo framework 사용(패킷 오버헤드와 network latency를 줄이기 위해 필요 • Topology - NFS 서버와 클라이언트들을 동일한 스위치에 연결 - 네트워크 hop수를 줄임으로써 네트워크 지연을 줄이고 스토리지 성능 향상 가능
  • 29. 6. 글러스터 파일 시스템 성능 향상 제시  Glusterfs 클라이언트 성능 향상을 위한 프로토콜 제시  NFS (Network Filesystem) NFS 접속 방식은 하나의 노드를 접속하고 그 노드를 통해서 다른 노드들의 데이터를 가져와야 하기 때문에 distributed 또는 striped 방식으로 구성된 환경에서는 성능이 저하될 수 있음  FUSE (Native Client) 크기가 작은 파일들을 처리하고, 클라이언트 수가 많은 환경에서는 native client를 사용하는 것이 적합native client는 파일의 경로를 client가 가지고 있고, brick에 직접 연결하여 데이터를 가져오기 때문에 많은 파일을 처리하는데 큰 성능 향상을 볼 수 있음  Tuned (Red Hat Storage 에서 제공) Red Hat Storage 가 제공하는 tuned-profile인 “rhs-high-throughput” 을 적용할 경우, 대 용량 파일이 많은 환경에서 성능 향상을 볼 수 있음
  • 30. 6. 글러스터 파일 시스템 성능 향상 제시  Red Hat Storage 제품을 사용하게 되는 경우 아래와 깉이 tuning profile 적용할수 있습니다
  • 31. 6. 글러스터 파일 시스템 성능 향상 제시 Native Client Work load avoid  Direct I/O - Direct I/O에 대한 처리는 아직 glusterfs에서는 Tech-preview 상태  Small write transfer sizes – 4 KB I/O size 5x slower - 파일 사이즈가 작은 경우에는 속도 저하가 나타날수 있다. - can use NFS client to aggregate writes  High directory count + high number of bricks - 디렉토리의 개수가 많거나 브릭이 많은 경우 속도 저하가 나타날수 있다.
  • 32. 6. 글러스터 파일 시스템 성능 향상 제시 기본 튜닝 설정 (RHS,RedHat Storage 기준) ● Dirty_background_ratio 10%-> 1% ● Block device max I/O size 128 KB -> 512 KB ● Block device I/O queue size 128 -> 256 ● many drives behind each block device ● Deadline scheduler ● default Linux CFQ I/O scheduler is irrelevant ● Additional tuning one command away (tuned-adm)  Glusterfs를 사용하기 위한 노드단의 필요한 모든 튜닝 요소는 아래와 같이 적용하는 것이 좋습니다. 하지만 RHS (Red Hat Storage)의 경우에는 아래의 튜닝 옵션들이 기본으로 설정되어 있습니다.
  • 33. 6. 글러스터 파일 시스템 성능 향상 제시 Tuned 서비스 가동과 rhs-high-throughput profile 적용  RHS (Red Hat Storage) Glusterfs 를 사용할 경우 tuned 서비스를 기준으로 rhs-high-throughput profile를 적용했을 경우 튜닝이 적용되는 항목들입니다. - tuned service simplifies tuning for system admins ● rhs-high-throughput profile for sequential reads ● disables I/O barriers ● increases readahead ● reduces pre-emptive scheduling ● disables power-saving mode
  • 35. 6. 글러스터 파일 시스템 운영 가이드  볼륨 준비 및 노드 (Peer) 추가/삭제 gluster> peer probe 192.168.0.6. gluster> peer probe 192.168.0.7 “ Hostname으로 진행해도 가능” gluster> peer probe 192.168.0.8 # lvcreate –L +100G –n lv_brick1 vg_server1 # mkfs –t xfs –i size=512 /dev/vg_server1/lv_brick1 # mkdir brick1 # mount /dev/vg_server1/lv_brick1 /brick1 # echo `/dev/vg_server1/lv_brick1 /brick1 xfs default 1 2` >> /etc/fstab  노드 (Peer)에 대한 추가는 어느 노드에서 진행해도 문제없이 가능합니다 gluster> peer detach 192.168.0.6.  노드 (Peer) 제거
  • 36. 6. 글러스터 파일 시스템 운영 가이드 gluster> peer status Number of Peers: 3 Hostname: 192.168.0.6 Uuid: 4e911d81-6ccd-495a-b64c-4a383ceb42ff State: Peer in Cluster (Connected) Hostname: 192.168.0.7 Uuid: 3d65ce0f-55ed-409d-8bc0-b1de0b857443 State: Peer in Cluster (Connected) Hostname: 192.168.0.8 Uuid: a7bbdb6a-114b-4807-8226-70b686bbf104 State: Peer in Cluster (Connected)  노드 정보 확인 (Peer Status)  아래와 같이 명령어를 수행하여 현재 등록되어 있는 Peer들에 대한 정보를 확인할 수 있습니다.
  • 37. 6. 글러스터 파일 시스템 운영 가이드  글러스터 볼륨 타입 (Distributed Volume)  GlusterFS의 볼륨의 구성원을 브릭(Brick)이라는 단위로 묶어서 클라이언트에 제공하게 됩니다.  기본적으로 글러스터에서 사용하는 볼륨타입 입니다.  파일을 여러 개의 Brick에 나눠서 데이터를 저장하는 방식입니다. gluster> volume create NEW-VOLUME 192.168.0.5:/brick1 192.168.0.6:/brick1 192.168.0.7:/brick1 192.168.0.8:/brick1 .
  • 38. 6. 글러스터 파일 시스템 운영 가이드  글러스터 볼륨 타입 (Replicated Volume)  데이터를 안전하게 이중화 하여 구성하고 싶다면 Replicated 방식을 구현 합니다.  디스크 i/O 성능은 저하될수 있으나 전체적인 데이터의 안전성은 보장할수 있습니다.  데이터의 불일치가 일어나도 self-healing 을 통해서 데이터 sync를 맞추게 됩니다. gluster> volume create NEW-VOLUME replica 4 192.168.0.5:/brick1 192.168.0.6:/brick1 192.168.0.7:/brick1 192.168.0.8:/brick1 .
  • 39. 6. 글러스터 파일 시스템 운영 가이드  글러스터 볼륨 타입 (Striped volume)  Stripe 방식으로 구현하면 하나의 파일을 블록 단위로 분리하여 각각의 Brick에 분산 저장하게 됩니다.  사이즈가 큰 파일의 경우 효과적인 성능을 나타낼수 있습니다. (디스크 I/O가 좋아짐)  하지만 Brick 또는 노드가 하나라도 문제가 발생이 되면 데이터의 안전성을 보장할수 없습니다. gluster> volume create NEW-VOLUME stripe 4 192.168.0.5:/brick1 192.168.0.6:/brick1 192.168.0.7:/brick1 192.168.0.8:/brick1 .
  • 40. 6. 글러스터 파일 시스템 운영 가이드  글러스터 볼륨 타입 (Replicate volume + Distribute Volume)  Replicate 방식과 Distribute 방식의 혼합 구성입니다.  아래의 방식은 RAID (0+1) 방식과 유하며 Brick 2개는 이중화 되고 나머지 Brick 2개는 Distribute 됩니다 gluster> volume create NEW-VOLUME replica 2 transport tcp 192.168.0.5:/brick1 192.168.0.6:/brick1 192.168.0.7:/brick1 192.168.0.8:/brick1 .
  • 41. 6. 글러스터 파일 시스템 운영 가이드  글러스터 볼륨 타입 (Striped volume + Distribute Volume)  Striped 방식과 Distribute 방식의 혼합 구성입니다.  Brick 2개씩 Striped으로 구성됩니다 gluster> volume create NEW-VOLUME stripe 2 transport tcp 192.168.0.5:/brick1 192.168.0.6:/brick1 192.168.0.7:/brick1 192.168.0.8:/brick1 .
  • 42. 6. 글러스터 파일 시스템 운영 가이드  글러스터 볼륨에 대한 정보 확인 (Gluster info) Gluster> volume info test-volume // all을 입력하면 모든 볼륨 정보를 확인할 수 있다. Volume Name: test-volume Type: Distributed-Replicate Status: Created Number of Bricks: 2 x 2 = 4 Transport-type: tcp Bricks: Brick1: 192.168.0.5:/brick1 Brick2: 192.168.0.6:/brick1 Brick3: 192.168.0.7:/brick1 Brick4: 192.168.0.8:/brick1
  • 43. 6. 글러스터 파일 시스템 운영 가이드 gluster> volume start test-volume gluster> volume stop test-volume  볼륨 준비가 완료 된후 에는 볼륨을 online/offline 상태로 전환 할수 있습니다.  볼륨 제거 : online 상태의 볼륨을 offline으로 전환한후 볼륨을 제거합니다. gluster> volume stop test-volume gluster> volume delete test-volume  볼륨추가 : Replicated 구성이 않된 상태에서는 아래와 같이 볼륨을 추가 할수 있습니다. gluster> volume add-brick test-volume 192.168.0.9:/brick1
  • 44. 6. 글러스터 파일 시스템 운영 가이드  글러스터 볼륨 replicate volume 추가  Replicate + Distributed 볼륨 또는 Stripe + Distributed 방식으로 묶여 있는 볼륨의 경우 Replication 또는 Stripe 방식으로 묶은 단위 만큼 볼륨을 추가 해야 합니다. gluster> volume add-brick test-volume 192.168.0.9:/brick1 192.168.10:/brick1  글러스터 볼륨 replicate volume 삭제  Brick을 제거할 경우 데이터의 손실이 발생할수 있기 때문에 권장하지는 않습니다. Stripe 으로 구성된 볼륨의 경우 Brick을 제거 할수 없습니다.  Replicate + Distribute 또는 Stripe + Distribute 방식으로 묶여 있는 볼륨을 삭제 할경우에는 볼륨이 묶여 있는 단위 만큼 볼륨을 삭제 해야 합니다. gluster> volume remove-brick test-volume 192.168.0.9:/brick1 192.168.10:/brick1
  • 45. 6. 글러스터 파일 시스템 운영 가이드  글러스터 볼륨 Brick 교체 (Migration)  기존에 사용하던 Brick 볼륨이 문제가 생길 경우 새로운 Brick으로 교체를 진행 해야 합니다.  아래의 절차에 따라서 새로운 Brick으로 교체를 진행 할수 있습니다. gluster> peer probe 192.168.0.9  노드추가 : 아래와 같이 Peer를 추가하여 Storage Pool에 볼륨을 추가 합니다  글러스터 마이그레이션 옵션 - start : 새로운 Brick으로 데이터 이전 - stop : 마이그레이션 정지 - abort : 마이그레이션 명령 취소 - commit : 마이그레이션 완료 gluster> volume replace-brick test-volume 192.168.0.9:/brick1 [옵션]
  • 46. 6. 글러스터 파일 시스템 운영 가이드  글러스터 볼륨 데이터 분배 (rebalancing)  새로운 Brick이 추가된 경우에는 데이터가 고르게 분산되지 않은 상태입니다.  데이터가 고르게 분산되지 않은 경우에는 성능저하가 나타날수 있습니다. 이런경우 데이터 분배 (Rebalancing) 기능을 이용하여 데이터를 고르게 분배를 진행하게 됩니다.  볼륨 Rebalancing 옵션 - start : 분배 시작 - stop : 분배 정지 - status : 상태 확인 gluster> volume rebalance test-volume 192.168.0.8:/brick1 192.168.0.9:/brick1 [옵션]
  • 47. 6. 글러스터 파일 시스템 운영 가이드  글러스터 볼륨 Native Client 연결 ( RedHat Subscription 의 경우) # rhn_register 1. RHN Subscription 을 등록합니다. # rhn-channel –add –channel=rhel_x86_64-server-rhsclient-6 2. Red Hat Storage Native Client 채널을 등록합니다. # yum install glusterfs glusterfs-fuse 3. Yum을 이용한 Native Client 설치를 진행합니다. # mount –t glusterfs –o log-level=WARNING,log-file=/var/log/gluster.log 192.168.0.5:/brick1 /mnt/glusterfs 4. Native Client 마운트를 진행합니다.
  • 48. 6. 글러스터 파일 시스템 운영 가이드  글러스터 볼륨 NFS 연결  NFS 방식으로 글러스터 파일 시스템의 Brick을 매뉴얼로 구성하기 접속하기 위해서는 아래와 같이 진행한다. # mount –t nfs –o vers=3 <HOSTNAME-OR –IPADDR>:/<VOLNAME> <MOUNTDIR>  글러스터 파일 시스템에 자 자동으로 연결하기 위한 방법은 아래와 같이 진행합니다.  /etc/fstab 파일에 아래의 형식대로 입력합니다. # <HOSTNAME-OR-IPADDR>:/<VOLNAME> <MOUNTDIR> nfs defaults, _netdev, vers=3 0 0