OpenStackについて

私はSIの仕事をしています。

40歳を過ぎてから社内の移動で初めて技術開発系の仕事に就くことになりました。

そこで初めての仕事がOpenStack(IaaS基盤を実現するOSS製品)を何らかの案件に適用できないかという研究を行う部署でした。

ただその頃のOpenStackはDiabloというバージョン(OpenStackは頭文字がアルファベット順でバージョン名が付けられます)で最初にリリースされてから4番目のバージョンでした。OpenStackは複数のコンポーネント(Linuxでいうところのパッケージ)で構成されているのですが、当時はインストーラーもなく、いくつものコンポーネントを手動でインストールして、設定も細々とやることがあり、動かすまでに非常に苦労するものでした。

特に私はLinuxをさわることもはじめてだったため、非常に苦労しました。

 

当時のバージョンではOpenStack自体の品質も安定しておらず、欲しい機能も無かったりと、決して痒いところに手が届くようなものではありませんでした。

 

私は構築、運用、利用の面で様々な調査を行うといったことをやっておりました。周りには、バグを見つけて修正したり、欲しい機能を作ってOpenStackのOSSコミュニティに投稿する人たちも一緒に仕事をしていました。

数年も経つと、OpenStackの品質も徐々にあがり、テスト的に使ってみたいというお客様も現れ始めて、そのような場には、構築、運用、利用に取り組んでいた私がよく駆り出されました。(私がプロジェクトマネージャーの資格をチームで唯一持っていたということもあったのですが)

 

更に数年経つと、RedHat社がインストーラーを含めたOpenStackをサポート付き製品としてリリースしました。それも最初はOpenStack自体が急成長している途中でした。

 

これがある程度安定したバージョンになった頃、本格的にお客様のプライベートクラウドとしての案件に適用することになり、私がグループリーダーとなり適用を成功に導くことができました。

 

OpenStackをある程度しっかりと理解したい場合、ソースコード解析からでは大変ですが、コンポーネントを手動でインストール(OpenStackコミュニティのホームページにコンポーネントごとのインストール手順と全体的にどのような順番でコンポーネントインストールするかの手順書が掲載されています)して、それぞれのコンポーネントがどのような役割をしていて、他のコンポーネントとどのような関係にあるのかを理解するところから始めてみると良いかもしれません。

その上で、どのような運用機能があるのか、どのように利用するのかを理解してみると良いでしょう。

 

以上、Linux初心者で、ソースコードもろくに読めない私が経験で得た、OpenStackにかかる知識習得方法でした。