OpenStackの調査

東京電機大学 工学部 情報通信工学科

ネットワークシステム研究室

指導教員 坂本 直志

14EC076 田中 良寛

目次

1. はじめに

近年、クラウドサービスは右肩上がりの成長続け、注目を集めている。

クラウドサービスには、提供するサービスによって呼び方が異なり様々な種類があるが、主なものはInfrastructure as a Service (IaaS)、Platform as a Service (PaaS)、Software as a Service (SaaS)の3種類である。 laaSではリモート接続できる仮想環境上のコンピュータを提供し、利用者は通常のネットワークサーバを構築してサービスを用意する必要がある。 PaaSではクラウドが提供するのはAPIとアプリケーションを実行する環境を提供するため、利用者は端末のほかにクラウドで実行するアプリケーションを用意する必要がある。 SaaSでは クラウドはアプリケーションを提供するため、利用者はクライアントの端末を使って、提供されたアプリケーションを利用する。 このように、この3種類は提供する領域が段階的に変わる。 また、これらのサービスをどのように使用するかについても呼び方がある。 サービスプロバイダと契約してリソースの一部を使用するものをパブリッククラウドと呼び、自社専用のサーバでクラウドシステムを動かすものをプライベートクラウドと呼ぶ。 さらに、このプライベートクラウドには2種類あり、自社でクラウド環境を用意しサーバを所有し運用する場合はオンプレミス型となり、外部の事業者にサーバを借りて運用を任せる場合はホステッド型となる。 ホステッド型はパブリッククラウドと似ているが、同じサーバを他の利用者と共有しないところに大きな違いがある。

このように様々な種類のサービスや使用方法があるクラウドサービスだが、平成29年版情報通信白書によると、今後、全体的に成長していくのはもちろんだが、特にIaaSが今後成長していくという。 このIaaSは日本の企業も含めて様々な企業がサービスを行っているが、一番有名なのは、Amazon Web Services(AWS)が提供する、Amazon Elastic Compute Cloud (Amazon EC2)である。 一方、Amazon EC2に対抗するために作られたOpenStackは、オープンソースソフトウェア(OSS)として開発されているため、誰でもクラウドサービスを構築することが出来る。 このOpenStackは日本でも実際にJFEスチール、NTTドコモ、富士通などで、社内システムを構築するための基盤として導入されている。 また、GMOインターネット株式会社のConoHaやNHN テコラス株式会社のCloudGarageはOpenStackの技術を基盤に使用したIaaSのサービスを行っている。 本研究では、今後も成長を続けていくと期待されているOpenStackについて調べ、OpenStackの今後の展望について考察した。

2. OpenStackの成り立ち

Rackspace Hostingは、1998年に創業してホスティング事業を行っていたが、Amazonは2006年にAmazon Web Services(AWS)という外部からAPI(Application Programming Interface)経由で操作できるセルフサービス方式のIaaSサービス(Amazon EC2)を独自に開発して提供を開始したことを受け、Rackspace Hostingは、自社の優位性を保つためにはこれに対抗する必要があると考えた。 しかし、少人数のソフトウエア開発者しか雇用していないため、数千人規模のソフトウェア開発者をかかえるAWSに対抗するのは難しいため、自社で開発した技術をOSSとして公開し、他社の協力を得ることが必要だと考え、クラウド事業推進のために既に開発を終えていたストレージツールを基盤として使用することにした。

一方、この頃NASAは研究に必要な計算に対するデータ量の増大につれストレージや処理能力を必要に応じて利用できることが要求されるようになり、これらの解決としてオンデマンドかつAPIで操作可能な仮想マシンとストレージが必要だと考え、開発を行っていた。そして先に開発を始めていた仮想マシンツールの開発が終わりを迎え、ストレージの開発を行おうとしていた。

この両者はオープンでスケーラブルなクラウドの必要性という点で考えが一致していたため、NASAが仮想マシンツール、Rackspaceがストレージツールを提供する形で開発を行いOpenStackをOSSとして公開した。

その後OpenStackプロジェクトはOpenStack Foundationという非営利団体によって運営されるようになった。このコミュニティには、現在では世界中から187カ国から82000人以上のメンバーが参加するようになった。活動としては、コミュニティの管理のほかOpenStack Summitなどのイベントを行っている。現在、理事会に籍を置くプラチナメンバーは「AT&T」「Ericsson」「Huawei」「IBM」「Intel」「Rackspace」「Red Hat, Inc.」「SUSE」の8社である。

尚、もともとOpenStackプロジェクトはRackspace Hostingが開発主体となっていたが、Rackspace Hostingが他社に買収されることによって、OpenStackの開発方針が変わり、それまでIBMやレッドハットなど外部の企業がOpenStackの開発のために多額の投資をしていたことが無駄になることを恐れ、OpenStackプロジェクトは2012年9月19日にRackspace Hostingから独立した組織としてOpenStack Foundationを設立した。現在ではOpenStack FoundationはOSS関連の団体としては世界第二位の規模を誇っている。

3. OpenStackの仕様

ここでは、OpenStackのライセンス、構成、API、バージョンについて説明していく。

3.1. ライセンス

現在、OpenStackのライセンスはApache License 2.0になっている。 このApache License2.0にはソフトウェアの使用に関して制限が無いことになっている。 また、元のライセンスのコピーを含めなければならない、変更した場合は変更したことを分かるように記述しなければならない、などの条件はあるが、ソフトウエアの複製や頒布も出来る。従って、個人や企業がOpenStackの使用に契約や使用料などが発生しないことはもちろんだが、企業がOpenStackを利用して商用サービスを行うことや、独自の機能を追加して販売することも可能である。

3.2. 構成

OpenStackは複数のサービスが連携することによって動いている。

これを主なサービスに関して図式すると図1のようになる。

図1:OpenStackの主要なサービス構成
図1:OpenStackの主要なサービス構成(外部からのアクセスと内部の通信は同じAPIのため内部通信側のAPI名は省略してある。)

実線は外部からのアクセス、破線は内部の通信を表す。

主なサービスの主な役割をまとめたものは表1になる。

表1:OpenStackのサービス一覧

サービス プロジェクト名 説明
Dashboard Horizon OpenStackで提供されるサービスを操作するための拡張可能なWebベースのUIを提供する
Compute Nova 仮想マシンなどのリソースを管理する
Networking Neutron 仮想コンピューティング環境などに提供する仮想ネットワークを管理する
Object Storage Swift HTTPベースのAPIで操作を行い、データをファイル単位ではなく、オブジェクトという単位で扱うストレージシステムを提供する
Block Storage Cinder 仮想のブロックストレージディバイスを管理し、インスタンスに提供する
Identity service Keystone APIクライアントなどの認証を行うためのAPIサービスを提供する
Image service Glance 仮想マシンディスクイメージの登録や取得の管理を行う

オブジェクトストレージ(*1)は画像や動画などのファイルをオブジェクトという単位として扱うものである。利用方法としては、HTTPで操作できるためwebサービスで使用するデータを保存などに使われる。

ブロックストレージ(*2)はブロックと呼ばれる一定の大きさのデータ単位で扱うストレージシステムのことである。利用方法としては、インスタンスにとってOSなどが保存されるHDDのように使われる。

3.3. API

OpenStackでは、各サービスごとに専用のAPIが用意されていて、ユーザーがサービスを操作する時だけでなく、サービスが他のサービスを操作する時もこのAPIを使用する。

現在使用できるAPIは表2になる。

表2:OpenStackのAPI一覧

現行のAPI(非推奨なものは除く)
Application Catalog API v1
Application Container Service API
Backup API v1
Bare Metal API v1
Block Storage API v3
Clustering API v1
Compute API (*1)
Container Infrastructure Management API
Data Processing v1.1
Data Protection Orchestration v1
Database Service API v1.0
Domain Name Server (DNS) API v2
EC2 API Service (*2)
Identity API v3
Identity API v3 extensions
Image service API v2
Load Balancer API v2
Messaging API v2
Networking API v2.0
NFV Orchestration API v1.0
Object Storage API v1 (*3)
Orchestration API v1
Search API v1
Shared File Systems API v2

各サービスに備わっているAPIのほとんどはOpenStack独自のものだが、Novaに備わっているAPIにはCompute API (*1) と呼ばれる独自のAPI以外にAWSのAmazon EC2との互換性のあるEC2 API (*2) が追加で備わっている。 また、Swiftに標準で備わっているものは独自APIのObject Storage API (*3) のみだが公式のリポジトリからインストールすることによってAWSのAmazon S3(Amazon Simple Storage Service)との互換のあるS3 APIが使用できるようになっている。

3.4. バージョン

OpenStackのリリースサイクルは基本6ヶ月である。 GrizzlyからNewtonまでは4月と10月にリリースが行われていたが、Ocataから二か月ずれて2月と8月になっている。名付け方はアルファベット順になっており、現在の最新バージョンはPikeである。次のバージョンとなるQueensは公式のドキュメントによると2018年2月28日にリリースされることになっている。

Queensも含めたバージョンの履歴は表3になる。

表3:OpenStackのバージョン一覧

シリーズ リリース日 サポート終了日
Austin 2010-10-21 不明
Bexar 2011-02-03 不明
Cactus 2011-04-15 不明
Diablo 2011-09-22 2013-05-06
Essex 2012-04-05 2013-05-06
Folsom 2012-09-27 2013-11-19
Grizzly 2013-04-04 2014-03-29
Havana 2013-10-17 2014-09-30
Icehouse 2014-04-17 2015-07-02
Juno 2014-10-16 2015-12-07
Kilo 2015-04-30 2016-05-02
Liberty 2015-10-15 2016-11-17
Mitaka 2016-04-07 2017-04-10
Newton 2016-10-06 2017-10-11
Ocata 2017-02-22 2018-02-26
Pike 2017-08-30 2018-09-03
Queens 2018-02-28 未定

4. OpenStackの環境構築

ここではOpenStackの環境を構築する方法を示す。 これには以下の2つの方法がある。

  1. 個々のサービスを1つ1つ手作業で構築する方法
  2. 自動構築ツール(DevStack、Packstackなど)を使用する方法

今回は、OpenStack Foundation 公認のユーザグループである日本OpenStackユーザー会のページに一番簡単な評価環境のインストール方法として公開されている、CentOSでPackstackを使用する方法を示す。Packstackのインストール方法はRDOにある方法を参考にする。RDOはPackstackを提供するコミュニティである。

使用した環境は表4となる。

表4:使用した環境

使用環境
OS CentOS Linux release 7.4.1708 (Core)
カーネル 3.10.0-693.el7.x86_64
割り当てIP 192.168.10.50

4.1 環境変数の設定

環境変数を設定する必要があるため/etc/environmentに以下の内容を記述して再起動する。

LANG=en_US.utf-8
LC_ALL=en_US.utf-8

4.2. firewalldとNetworkManagerの無効化

手順は以下の項目になる。

  1. firewalldの自動起動の解除
  2. firewalldを止める
  3. NetworkManagerの自動起動の解除
  4. NetworkManagerを止める
  5. networkの自動起動の設定
  6. networkの起動

この6項目は以下のコマンドで実行できる。

# systemctl disable firewalld
# systemctl stop firewalld
# systemctl disable NetworkManager
# systemctl stop NetworkManager
# systemctl enable network
# systemctl start network

4.3. Packstackのインストール

手順は以下の項目になる

  1. OpenStackのリポジトリを追加する
  2. パッケージの更新を行う
  3. Packstackをインストールする

この3項目は以下のコマンドで実行できる。

# yum install -y centos-release-openstack-pike
# yum update -y
# yum install -y openstack-packstack

4.4. 設定ファイルの作成と編集

Block Storageの容量の変更とNeutronの設定を行うための設定ファイルの作成と編集を行う。

以下のコマンドを実行すると設定ファイルのひな形が作成される。

# packstack --gen-answer-file=~/answers.cfg

作成されたanswers.cfgというテキストファイルには設定の項目とデフォルト値が列挙されている。

まず、Block Storageの容量を変更する。

CONFIG_CINDER_VOLUMES_SIZE={割り当て容量}

次にインスタンスと外部のネットワークを繋げるようにするためにNeutronの設定を行う。

まず、仮想スイッチと物理インターフェイスを接続するための設定を行う。

CONFIG_NEUTRON_OVS_BRIDGE_IFACES=br-ex:{使用するNIC}

次に、仮想スイッチに接続する仮想インターフェースの名前を設定する。

CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS={仮想NICの名前}:br-ex

設定を終えたらファイルを保存する。

4.5. OpenStackのインストール

以下のコマンドを実行して、変更を加えたanswers.cfgの内容を適応させてOpenStackのインストールを行う。また、timeout=0と設定するとインストール時間に制限がなくなりインストールに時間がかかっても止まらなくなる。

# packstack --timeout=0 --answer-file=~/answers.cfg

実行すると図2の様になりインストールが開始される。

図2:OpenStackのインストール(途中)
図2:OpenStackのインストール(途中)

インストールが完了すると図3のように表示される。

図3:OpenStackのインストール(完了)
図3:OpenStackのインストール(完了)

以上でOpenStackの環境が構築できた。

5. OpenStackの使用例

ユーザーがOpenStackのサービスを操作する方法は主に以下の3つ用意されている。

  1. Horizonが提供するDashboardを使用する
  2. コマンドラインクライアント(OpenStackClient)を使用する
  3. 各サービスが備えているAPIを使用する

今回は、例として稼働しているインスタンスの一覧を取得することにする。 インスタンスの一覧を取得するにあたって、インスタンスがなければ表示できないため事前にDEMO1、DEMO2、DEMO3、DEMO4、DEMO5という名前の5つのインスタンスを立てた。

5.1. Dashboardを使用する

Dashboardにアクセスするには、Packstackインストール完了時に表示される図4の赤枠の中にあるURLにアクセスする。

図4:DashboardのURL
図4:DashboardのURL

アクセスすると図5のようなログイン画面が表示される。

図5:ログイン画面
図5:ログイン画面

正しいユーザー名とパスワードを入力したのち接続を押すとログインできる。

ログインが出来ると図6のようなページが表示される。

図6:ログイン後のページ
図6:ログイン後のページ

横にあるメニューバーを「プロジェクト(①)」、「コンピュート(②)」、「インスタンス(③)」の順で押す。

図7:メニュー操作手順
図7:メニュー操作手順

実際に開くと図8のようになる。

図8:Dashboardでのインスタンスの確認
図8:Dashboardでのインスタンスの確認

これで、インスタンスの一覧を確認できた。

5.2. コマンドラインクライアントを使用する

コマンドラインクライアントは、Packstackを利用してインストールした場合OpenStackのサービスとともにインストールされる。 コマンドラインクライアントを使用するには、環境変数を設定する必要がある。 この設定を行うためにDashboardからダウンロードできるOpenStack RCファイルを使用する。

OpenStack RCファイルは、Dashboardの横にあるメニューバーを「プロジェクト(①)」、「APIアクセス(②)」の順で押し、APIアクセスに関するページを表示させ、そのページにある「OpenStack RCファイルのダウンロード(③)」を押してメニューにある「OpenStack RCファイル (Identity API v3) (④)」を押すことによってダウンロード出来る。

図9:OpenStack RCファイルのダウンロード
図9:OpenStack RCファイルのダウンロード

ダウンロードしたOpenStack RCファイル(admin-openrc.sh)を実行すると 図10のようにパスワードを要求されるので入力する。

図10:パスワード入力画面
図10:パスワード入力画面

パスワード入力終えたら、コマンドラインクライアントが使えるようになるためインスタンスを取得するコマンドを実行することが出来るようになる。実行すると図11のような結果が返ってくる。

図11:コマンドラインクライアントでのインスタンスの確認
図11:コマンドラインクライアントでのインスタンスの確認

これで、インスタンスの一覧を確認できた。

5.3. Compute APIを使用する

OpenStackが提供するAPIでインスタンスの一覧を取得するにはCompute APIを使用する必要がある。また、このCompute APIはHTTPで通信を行う必要があるため、今回はcurlコマンドを使用する。

Compute APIを使用するにはIdentity APIを使用して認証を行い、トークンを取得する必要がある。この時ユーザー名、パスワード以外にプロジェクトを指定する必要がある。このプロジェクトとはユーザーが所属し、インスタンスなどをまとめて管理するためのグループのことである。そのため、違うグループに属するインスタンスにはアクセス出来ない。

ユーザーが所属するプロジェクト一覧の確認はIdentity APIで行える。 まず、ユーザー名とパスワードを指定して認証を行う。このとき以下のようなコマンドを使用する。

curl -v \
-X POST http:/サーバアドレス:5000/v3/auth/tokens  \
-H "Content-Type: application/json"  \
-d '
{
    "auth": {
        "identity": {
            "methods": ["password"],
            "password": {
                "user": {
                    "name": "ユーザー名",
                    "domain": {"name": "Default" },
                    "password": "パスワード"
                }
            }
        }
    }
}' \
| python -m json.tool

実行すると図12のような結果が返ってくる。

図12:Identity APIのレスポンス
図12:Identity APIのレスポンス

図12の赤枠で囲まれているレスポンスヘッダのX-Subject-TokenはトークンとなるのでX-Auth-Tokenヘッダに追加し以下のようにアクセスする。

curl -v \
-X GET http://サーバアドレス:5000/v3/auth/projects \
-H "X-Auth-Token: 図12にあるX-Subject-Tokenの値 " \
| python -m json.tool

実行すると図13のような結果が返ってくる。

図13:プロジェクト一覧
図13:プロジェクト一覧

緑の枠で囲まれているのが個々のプロジェクト情報である。 また、赤枠は個々のプロジェクト名である。 今回使用したユーザーは「admin」「demo」という2つのプロジェクトに属していることが確認できた。 これで、所属するプロジェクトが分かるようになったので、以下のようにユーザー名、パスワード、プロジェクトを指定して、もう一度認証を行う。

curl -v \
-X POST http://サーバーアドレス:5000/v3/auth/tokens  \
-H "Content-Type: application/json"  \
-d '
{ "auth": {
    "identity": {
        "methods": ["password"],
        "password": {
        "user": {
            "name": "ユーザー名",
            "domain": { "id": "default" },
            "password": "パスワード"
        }
        }
    },
    "scope": {
        "project": {
        "name": "プロジェクト名",
        "domain": { "id": "default" }
        }
    }
    }
}'  \
| python -m json.tool

実行すると図14のような結果が返ってくる。

図14:Identity APIのレスポンス
図14:Identity APIのレスポンス

図12と同じように図14の赤枠で囲まれているレスポンスヘッダのX-Subject-Tokenはトークンとなる。

今回は 図12の時とは違いレスポンスボディには各APIにアクセスするためのURLが記述されている。

図15 Identity APIのレスポンスボディの一部
図15 Identity APIのレスポンスボディの一部

Compute APIを使用するため赤の下線がcomputeとなっているものを使用する。緑の枠で囲まれているのが個々のAPIにアクセスするための情報である。今回Compute APIにアクセスするためのURLは赤枠で囲まれているものを使用する。 これでCompute APIにアクセスするためのURLとトークンが分かったので以下のようにしてCompute APIにアクセスする。

curl -v \
-X GET 図15の赤枠にあるURL/servers \
-H "X-Auth-Token: 図14にあるX-Subject-Tokenの値 " \
| python -m json.tool

実行すると図16のような結果が返ってくる。

図16:Compute APIのレスポンス
図16:Compute APIのレスポンス

赤枠で囲まれているのがインスタンスの名前になる。 これで、インスタンスの一覧を確認できた。

Compute APIではコマンドラインクライアントと比べて一度に取得できる情報が少ない。コマンドラインクライアントではID、Name、Status、Networks、Image、Flavorの6つだが、Compute APIではID(id)、Links(links)、Name(name)の3つであり、これ以上の情報を取得するためにはLinksにあるURLにリクエストを行う必要がある。

この3つの利用方法としては、Dashboardとコマンドラインクライアントは、ユーザーがOpenStackのサービスを操作する時に使用し、Compute APIはプログラムで操作する場合に使用する。

6. OpenStackの将来

OpenStackのユーザー調査によると、OpenStackはオンプレミス型のプライベートクラウド基盤として使われていることが多い。

図17:OpenStack USER SURVEY November 2017のWhat types of clouds are running OpenStack?より
図17:OpenStack USER SURVEY November 2017のWhat types of clouds are running OpenStack?より

オンプレミス型のプライベートクラウドとして考えられる使用方法は、社内で使用するために、社内に設置されるクラウド環境が多いと考える。 オンプレミス型のプライベートクラウドは、AWSやMicrosoft Azure、 Google Cloud Platformなどのパブリッククラウドと比べて、インスタンスの個数やインスタンスの使用時間に対してお金が掛からないことが利点である。 また従来は、マシンが必要になった場合にはハードウエアやネットワークなどの設定を行わなければならなかったのが、web上のクライアントから必要な環境を指定して作成をクリックするだけで仮想マシンを使えるようになる。さらに仮想マシンは保存や複製を行うことが出来る。 これらの特徴は、柔軟に使えるという点で開発環境やテスト環境に適している。 今後OpenStackは、柔軟に使える環境をオンプレミス型のプライベートクラウドとして構築するユーザーにとってのデファクトスタンダードになると考える。

7. まとめ

これまで、OpenStackについて説明してきた。 OpenStackは元々AWSに対抗するために作られたものであったため、当初はAWSのようなパブリッククラウドの置き換えとして成長してきたものだったが、現在はプライベートクラウドを構築するための基盤として、注目を集めていることが分かった。 クラウド環境を元々あるサーバなどのリソースを使って構築したい企業や法的な問題やセキュリティ上の決まりから外部にデータを置かずに安全に構築したい企業にとって、OpenStackが重要な存在であることが分かったと思う。 また、さらにパブリッククラウドに関しては、IaaSのサービスを展開しようと思っている企業が一から開発をする必要がなくなり開発コストが下がることによって、提供するIaaSサービスの料金が下がり、手頃な価格のIaaSが増えていくことが期待できる。 ただ、これによってAWSなどの大手サービスと争うということになる訳ではなく、ユーザーとって選択肢が増えることになり、全体としてクラウドサービスの利用者が増えることを期待する。

今回の研究では、OpenStackのサービスについて代表的なものしか調べることが出来なかった。そのため今後の課題として、今回扱えなかった多くのサービス調べOpenStackの問題点や用途などについて深く考察したいと思う。

8. 参考文献

  1. OpenStack[OpenStack] https://www.openstack.org/
  2. 巨人・アマゾンに対抗するため、OpenStackというOSSが生まれた[ITpro] http://itpro.nikkeibp.co.jp/article/Interview/20130326/466030/
  3. [連載] 第1回:登場の背景から振り返る、今OpenStackが注目される理由[Hitachi] http://www.hitachi.co.jp/Prod/comp/soft1/openstack/report/vol_1.html
  4. OpenStack Foundationが発足[IT] http://www.atmarkit.co.jp/news/201209/20/openstack.html
  5. Companies Supporting The OpenStack Foundation[OpenStack] https://www.openstack.org/foundation/companies/
  6. OpenStack Foundationは何をしているか? http://openstackdays.com/archive/2016/wp-content/uploads/2016/07/O2_OpenStack-Foundation-Session-rc5.pdf
  7. Apache License[Wikipedia] https://ja.wikipedia.org/wiki/Apache_License
  8. Apache License, Version 2.0[OSDN] https://ja.osdn.net/projects/opensource/wiki/licenses%2FApache_License_2.0
  9. OpenStack API Documentation[OpenStack] https://developer.openstack.org/api-guide/quick-start/
  10. クラウドサービスAPIで仮想マシンを制御[ITpro] http://itpro.nikkeibp.co.jp/article/COLUMN/20120518/397468/
  11. Configure Object Storage with the S3 API[OpenStack] https://docs.openstack.org/mitaka/config-reference/object-storage/configure-s3.html
  12. コマンドラインクライアントの概要[OpenStack] https://docs.openstack.org/ja/user-guide/common/cli-overview.html
  13. HORIZON[OpenStack] https://www.openstack.org/software/releases/liberty/components/horizon
  14. NOVA[OpenStack] https://www.openstack.org/software/releases/liberty/components/nova
  15. NEUTRON[OpenStack] https://www.openstack.org/software/releases/liberty/components/neutron
  16. SWIFT[OpenStack] https://www.openstack.org/software/releases/liberty/components/swift
  17. オブジェクトストレージとは[FUJITSU] http://www.fujitsu.com/jp/products/computing/storage/lib-f/tech/beginner/object-storage/
  18. CINDER[OpenStack] https://www.openstack.org/software/releases/liberty/components/cinder.
  19. KEYSTONE[OpenStack] https://www.openstack.org/software/releases/liberty/components/keystone
  20. GLANCE[OpenStack] https://www.openstack.org/software/releases/liberty/components/glance
  21. ロードマップの取り扱い[OpenStack] https://docs.openstack.org/draft/ja/ops-guide/app-roadmaps.html
  22. OpenStack Releases[OpenStack] https://releases.openstack.org/
  23. Queens Release Schedule[OpenStack] https://releases.openstack.org/queens/schedule.html
  24. インストール方法[日本OpenStackユーザ会] https://openstack.jp/how_to_deploy
  25. Packstack: Create a proof of concept cloud[RDO] https://www.rdoproject.org/install/packstack/
  26. ネットワークの作成と管理[OpenStack] https://docs.openstack.org/ja/user-guide/cli-create-and-manage-networks.html
  27. OpenStack CLI チートシート[OpenStack] https://docs.openstack.org/ja/user-guide/cli-cheat-sheet.html
  28. Compute API[OpenStack] https://developer.openstack.org/api-ref/compute/
  29. OpenStack RC ファイルを用いた環境変数の設定[OpenStack] https://docs.openstack.org/ja/user-guide/common/cli-set-environment-variables-using-openstack-rc.html
  30. OpenStack USER SURVEY November 2017 https://www.openstack.org/assets/survey/OpenStack-User-Survey-Nov17.pdf
  31. OpenStack USER SURVEY April 2017 https://www.openstack.org/assets/survey/April2017SurveyReport.pdf
  32. その他のサービス https://docs.openstack.org/newton/ja/install-guide-obs/additional-services.html
  33. コンテナの軽量さと仮想マシンの堅牢さを兼ね備えた新しいコンテナ実装「Kata Containers」、OpenStack Foundationが発表[Publickey] http://www.publickey1.jp/blog/17/kata_containersopenstack_foundation.html
  34. Kata Containers https://katacontainers.io/
  35. Overview One Pager[Kata Containers] https://katacontainers.io/docs/kata-containers-1pager.pdf
  36. Intel and Hyper partner with the OpenStack Foundation to launch the Kata Containers project[TechCrunch] https://techcrunch.com/2017/12/05/intel-and-hyper-partner-with-the-openstack-foundation-to-launch-the-kata-containers-project/
  37. Design[OpenStack] https://docs.openstack.org/arch-design/design.html
  38. OpenStack[Wikipedia] https://ja.wikipedia.org/wiki/OpenStack
  39. RHEL 7 ダウンロードで提供される qcow2 イメージをインストールする[Red Hat] https://access.redhat.com/ja/solutions/1410073
  40. イメージの入手[OpenStack] https://docs.openstack.org/ja/image-guide/obtain-images.html
  41. はじめに[OpenStack] https://docs.openstack.org/ja/image-guide/introduction.html