IT・技術研修ならCTC教育サービス

サイト内検索 企業情報 サイトマップ

研修コース検索

コラム

クラウド時代のオープンソース実践活用

CTC 教育サービス

 [IT研修]注目キーワード   Python  UiPath(RPA)  最新技術動向  Microsoft Azure  Docker  Kubernetes 

第4回 オープンソースの価値は「拡張」と「連携」にあり (中井悦司) 2012年9月

はじめに

 先日(9月8日)は、東京で開催されたオープンソースカンファレンスに参加してきました。OpenStack、CloudStack、Eucalyptusなど「クラウドを造る」オープンソースのセミナーはどれも人気が高く、OpenStackのセミナー講師の一人は、実際のインストール方法など実践的な質問が増えてきたことに驚いていました。
 ちなみに、筆者は「オープンクラウドキャンパス」のメンバとして、「Aeolus(アイオロス)とEucalyptusを連携する」という話題で発表させていただきました(*1)。さまざまなツールを自由に連携できる点は、オープンソースならではの価値だと改めて実感する経験でした。今回は、分散ファイルシステム「GlusterFS」の最後の話題として、「トランスレータ・モジュール」を解説します。

トランスレータ・モジュールの連携処理

 GlusterFSでは、さまざまな「トランスレータ・モジュール」が連携してファイルアクセス処理を行います。それぞれのモジュールは、異なる役割を持っており、クライアント側で動くモジュールとサーバ側で動くモジュールがあります。図1は、典型的なモジュール連携の例です。
 なかなか複雑で難しそうに見えますが、仕組みそのものはシンプルです。例えば、クライアントマシンがGlusterFS上のファイルに書き込みを行うと、図1のモジュールが上から順に呼び出されていきます。最初は、データのキャッシングなど性能向上に関わるモジュールが処理を行い、その後、図1の中程にある「dht」モジュールが呼び出されると、ここで、前回説明したハッシュ計算の処理が行われます。
 ハッシュ計算によってファイルを保存するべきサーバが決まると、そのサーバと実際に通信を行うための「client」モジュールに処理が移ります。ただし図1の例では、その前に、複数サーバに同じファイルのコピーを保存する、レプリケーション処理を行うモジュール「replicate」が入っています。これにより、複数サーバに対して、ファイル保存の処理が実行されます。

 図1の下半分は、クライアントからのアクセスを受け付けるサーバ側のモジュールです。ファイルロックやACLの管理など、ファイルシステムの基本機能を提供するモジュールを通過した後に、物理ディスクへの実際のアクセス処理が行われます。

fig01

図1 GlusterFSのトランスレータ・モジュール

トランスレータ・モジュールの存在意義

 これだけの説明では、トランスレータ・モジュールの存在意義がまだピンとこないかも知れません。実は、それぞれのモジュールは、共有ライブラリ形式で作成されており、独自のモジュールを自由に追加/交換することができるのです。これまでもGlusterFSのバージョンアップに伴って、新たなモジュールを追加することで、性能向上や機能拡張が行われてきました。その気になれば、GlusterFSのユーザが自分自身で独自のモジュールを作成して、GlusterFSを拡張していくこともできるわけです。
 これは、第2回に紹介したAB氏(GlusterFSのオリジナル開発者)が言うところの「拡張可能なソフトウェア」に相当する部分になります。AB氏によると、今後は、外部のアプリケーションとGlusterFSを連携動作させるための機能拡張を考えているそうです。残念ながら詳細は聞き出せませんでしたが、GlusterFSの特性を活かした、データ分析アプリケーションの開発環境を準備しようと考えているようでした。GlusterFSの今後の機能拡張/発展には、まだまだ期待が持てそうです。

次回予告

 GlusterFSの話題は今回で一区切りです。次回からは、冒頭のオープンソースカンファレンスでも登場した、「Aeolus(アイオロス)」を解説していきます。Amazon EC2にアプリケーション環境を自動構築する方法なども紹介していきますので、ご期待ください。

参考資料

*1試して学べるクラウド技術!Eucalyptus/AeolusConductor
 クラウドの自動化ツール「Aeolus」を独自に改造して、Eulcalyptusによるクラウド環境を管理するという話題です。

 

++ CTC教育サービスから一言 ++
このコラムでLinuxや周辺技術の技術概要や面白さが理解できたのではないかと思います。興味と面白さを仕事に変えるには、チューニングやトラブルシューティングの方法を実機を使用して多角的に学ぶことが有効であると考えます。CTC教育サービスでは、Linuxに関する実践力を鍛えられるコースを多数提供しています。興味がある方は以下のページもご覧ください。
 CTC教育サービス Linuxのページ
 http://www.school.ctc-g.co.jp/linux/
 

Linux研修トレーニングならCTC教育サービス


 

筆者書籍紹介

Software Design plusシリーズ
「独習Linux専科」サーバ構築/運用/管理
  ――あなたに伝えたい技と知恵と鉄則

本物の基礎を学ぶ!新定番のLinux独習書

中井悦司 著
B5変形判/384ページ
定価3,129円(本体2,980円)
ISBN 978-4-7741-5937-9
詳しくはこちら(出版社WEBサイト)
「独習Linux専科」サーバ構築/運用/管理

 [IT研修]注目キーワード   Python  UiPath(RPA)  最新技術動向  Microsoft Azure  Docker  Kubernetes