Your SlideShare is downloading. ×
Gluster fsにおいて内在するincident要因
Gluster fsにおいて内在するincident要因
Gluster fsにおいて内在するincident要因
Gluster fsにおいて内在するincident要因
Gluster fsにおいて内在するincident要因
Gluster fsにおいて内在するincident要因
Gluster fsにおいて内在するincident要因
Gluster fsにおいて内在するincident要因
Gluster fsにおいて内在するincident要因
Gluster fsにおいて内在するincident要因
Gluster fsにおいて内在するincident要因
Gluster fsにおいて内在するincident要因
Gluster fsにおいて内在するincident要因
Gluster fsにおいて内在するincident要因
Gluster fsにおいて内在するincident要因
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Gluster fsにおいて内在するincident要因

140

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
140
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. GlusterFSにおいて内在するIncident要因
  • 2. GlusterFS Physical Volume(brick) Server 基本的なGlusterFSのVolume構成 Gluster Server brick 2 brick 1 Gluster Server brick 4 brick 3 Gluster Server brick 6 brick 5 Gluster Server brick 8 brick 7 Logical Volume Client Gluster Client brick 6 brick 3 brick 8 FUSE file hash cache GlusterFSはGluster Server上に存在するPhysical disk上にbrickと呼ばれる格納領域を作成(実態はdirectory)し これをGluster Clientにてbrickを複数個束ねる事でLogical diskを構成しFUSEを通してNativeなVolume access を提供する仕組みである。
  • 3. 特徴 ・Scalableである ・冗長化が可能 ・負荷分散機能が存在する !
  • 4. Logical volume type ・Distributed volume - 分散 ・Replicated volume - 冗長 ・Striped volume - 分割
  • 5. GlusterFS File System Physical Volume(brick) Server Distributed Volume構成 Gluster Server brick 2 brick 1 Gluster Server brick 4 brick 3 Gluster Server brick 6 brick 5 Gluster Server brick 8 brick 7 Logical Volume Client Gluster Client brick 3 brick 8 FUSE file hash cache File 1 File 1 Hash : 60b27f004e454aca81b0…… 書き込み時にfilenameからhashを生成しま す。 この時、FUSEはhashをcachingして保持し ます。 生成されたhash一つと対になるbrickが割り 当てられhash/brick単位でfileが保存されま す logicalに更新されたbrickはserverに投げら れ実態としてGluster server上のLogicalな brickに保存されます。 brick 1 全てのbrickは束ねられ単一のLogical Volume として扱われる。 Writing
  • 6. Gluster FS File System Physical Volume(brick) Server Distributedでの読み込みの流れ Gluster Server brick 2 brick 1 Gluster Server brick 4 brick 3 Gluster Server brick 6 brick 5 Gluster Server brick 8 brick 7 Logical Volume Client Gluster Client brick 3 brick 8 FUSE file hash cache File 1 File 1 Hash : 60b27f004e454aca81b0…… FUSEのcache内のhashを取得 取得したhashから対となるbrickを認識する 指定されたbrickから値を取得 brick 1 Reading
  • 7. Physical Volume(brick) Server incidentの可能性がある構成 Gluster Server brick 2 brick 1 Gluster Server brick 4 brick 3 Gluster Server brick 6 brick 5 Gluster Server brick 8 brick 7 Gluster FS File System Logical Volume Client Gluster Client brick 3 brick 8 FUSE file hash cache brick 1 Gluster FS File System Logical Volume Client Gluster Client brick 3 brick 8 FUSE file hash cache brick 1 複数のFUSEにてFilesystemが管理されている
  • 8. Physical Volume(brick) Server 問題のある構成で書き込みを行う Gluster Server brick 2 brick 1 Gluster Server brick 4 brick 3 Gluster Server brick 6 brick 5 Gluster Server brick 8 brick 7 Gluster FS File System Logical Volume Client Gluster Client brick 3 brick 8 FUSE file hash cache brick 1 Gluster FS File System Logical Volume Client Gluster Client brick 3 brick 8 FUSE file hash cache brick 1 File 1 File 1 Hash : 60b27f004e454aca81b0…… Writing
  • 9. Physical Volume(brick) Server 問題のある構成で読み込みを行う Gluster Server brick 2 brick 1 Gluster Server brick 4 brick 3 Gluster Server brick 6 brick 5 Gluster Server brick 8 brick 7 Gluster FS File System Logical Volume Client Gluster Client brick 3 brick 8 FUSE file hash cache brick 1 Gluster FS File System Logical Volume Client Gluster Client brick 3 brick 8 FUSE file hash cache brick 1 File 1 File 1 Hash : 60b27f004e454aca81b0…… Reading File 1 brickにデータは存在していてもFUSE内の cacheにhashがcachingされていない為not foundとなりerrorが返却される Writing File 1
  • 10. Physical Volume(brick) Server findを行うとファイルが読めるようになる Gluster Server brick 2 brick 1 Gluster Server brick 4 brick 3 Gluster Server brick 6 brick 5 Gluster Server brick 8 brick 7 Gluster FS File System Logical Volume Client Gluster Client brick 3 brick 8 FUSE file hash cache brick 1 Gluster FS File System Logical Volume Client Gluster Client brick 3 brick 8 FUSE file hash cache brick 1 File 1 File 1 Hash : 60b27f004e454aca81b0…… find File 1 File 1 Hash : 60b27f004e454aca81b0…… findはFile Systemから実際に存在するファ イルの一覧を取得する為、brickに対して accessが行われます findの結果、最新のbrickとhashの状態が cache上に更新されファイルが存在するよう になります。
  • 11. GlusterFS File System Physical Volume(brick) Server Gluster communityの対策① Gluster Server brick 2 brick 1 Gluster Server brick 4 brick 3 Gluster Server brick 6 brick 5 Gluster Server brick 8 brick 7 Logical Volume Client Gluster Client brick 3 brick 8 FUSE file hash cache brick 1 SAMBA / NFS Plug-in あくまでFUSEは単体で運用を行い多 重アクセスに対してはSAMBA / NFS にて対応を行う
  • 12. GlusterFS File System Physical Volume(brick) Server Gluster communityの対策② Gluster Server brick 2 brick 1 Gluster Server brick 4 brick 3 Gluster Server brick 6 brick 5 Gluster Server brick 8 brick 7 Logical Volume Client Gluster Client brick 3 brick 8 FUSE file hash cache brick 1 client libglusterfs libglusterfsを用いてFUSEを回避し てアクセスを行う
  • 13. GlusterFS File System Physical Volume(brick) Server 対策①の問題点 Gluster Server brick 2 brick 1 Gluster Server brick 4 brick 3 Gluster Server brick 6 brick 5 Gluster Server brick 8 brick 7 Logical Volume Client Gluster Client brick 3 brick 8 FUSE file hash cache brick 1 SAMBA / NFS Plug-in accessaccess accessaccess access SAMBA/NFSに多重アクセスが行われた際に FUSEのoverheadが問題になり単一障害点と なり得る
  • 14. GlusterFS File System Physical Volume(brick) Server 対策②の問題点 Gluster Server brick 2 brick 1 Gluster Server brick 4 brick 3 Gluster Server brick 6 brick 5 Gluster Server brick 8 brick 7 Logical Volume Client Gluster Client brick 3 brick 8 FUSE file hash cache brick 1 client libglusterfs 既に構築されているsystemである場合 GlusterFSに対するI/Oをlibglusterfs経由に 書き換える必要性がある
  • 15. 総論 ・FUSEを通す限り、fileの整合性、I/Oのoverhead に問題を内在し続ける。 ・FUSEを通さない場合はclient開発時に libglusterfsを通す必要性が生じる ・上記の理由により敢えてGlusterFSを用いるよ り可能であればAmazon S3やXtreemFS等の代替 のproductを用いる方がenterprise用途としては 可用性が高い

×