第1章 はじめに
セキュリティーは重要な懸念事項であり、デプロイメントの重点を置く必要があります。データの漏洩やダウンタイムはコストがかかり、管理が難しくなります。また、法律によって監査やコンプライアンスのプロセスが必要になることもあり、プロジェクトでは一定レベルのプライバシーとデータのセキュリティーが求められます。このセクションでは、Red Hat OpenStack Platform のセキュリティーに関する全般的な概要と、お客様のシステムのセキュリティーをサポートする上での Red Hat のロールについて説明します。
本ドキュメントでは、ディレクターベースのデプロイメントを中心に、Red Hat OpenStack Platform デプロイメントのセキュリティーを強化するためのアドバイスおよびグッドプラクティス情報を提供します。本書の指示に従って、お使いの環境のセキュリティーを強化しますが、これらの推奨事項に従ってセキュリティーやコンプライアンスを保証しません。
1.1. OpenStack の基本概念
1.1.1. OpenStack とは
OpenStack とは何かを理解するためには、まず クラウド とは何かを理解する必要があります。簡単に言うと、クラウドコンピューティングとは、処理能力、ディスクストレージ、データベース処理、ネットワークサービスをコンシューマーが利用できるようにすることであり、顧客は一連の API を通じてプログラム的にそれらを操作することができます。
このアプローチを、仮想マシン (VM) のホスティングに特化した従来のハイパーバイザー製品と比較してみましょう。VM は、従来の物理的なスタンドアロンサーバーと同じように使用され、一人のシステム管理者が仮想マシンのプロビジョニングを行い、別のシステム管理者がログインしてデータベースアプリケーションやその他のソフトウェアをインストールします。その後、VM は数年間稼働し、データはローカル (または付属の SAN) に保存され、毎日バックアップされます。
OpenStack でも仮想マシンを運用するのは正しいのですが、その管理方法は上記のものとは大きく異なります。インスタンスは、作成後すぐに使用でき、アプリケーションの準備ができていて、さらに設定を行う必要はありません。問題が発生した場合は、障害のトラブルシューティングに時間を費やすのではなく、新しい代替インスタンスをデプロイする必要があります。
OpenStack には、上述したことを実現するために連携するサービスが揃っていますが、これは数あるユースケースの 1 つに過ぎません。
詳細については、OpenStack 製品ガイド (https://access.redhat.com/documentation/ja-jp/red_hat_openstack_platform/16.0/html-single/product_guide/) を参照してください。
1.1.2. 主要な用語
このガイドの残りの部分に進む前に、新規ユーザーが最初に遭遇するであろう OpenStack 固有の専門用語に慣れておくことをお勧めします。
-
インスタンス
: これは仮想マシンです。これらは、Compute ノードと呼ばれる専用のハイパーバイザーサーバー上でホストされます。 -
プロジェクト
: ユーザー、インスタンス、仮想ネットワークを組み合わせた OpenStack リソースのパーティション化されたコレクション。プロジェクトでは、ユーザーやインスタンスのあるコレクションを、別のコレクションとは別に管理することができます。これは、複数の異なる部門や組織をホストする OpenStack のデプロイメントに有効です。管理者は、作成したユーザーやインスタンスごとに、送信先のプロジェクトを指定する必要があります。 -
イメージ
: オペレーティングシステムテンプレート。インスタンスを作成する際には、どの OS で動作させるかを決定する必要があります。OpenStack では、イメージ と呼ばれる OS のテンプレートを選択することができます。CentOS および Red Hat Enterprise Linux では、ビルド済みのイメージが利用できます。 -
フレーバー
: 仮想マシンのハードウェアテンプレート。インスタンスを構築するたびに RAM と CPU の割り当て量を指定するのではなく、フレーバー を定義してこれらの値をあらかじめ設定しておくことができます。Red Hat OpenStack Platform のデプロイメントでは、1GB の RAM を搭載したm1.tiny
から 16GB の RAM を搭載したm1.xlarge
までのフレーバーがすでに定義されています。 -
セキュリティーグループ
: これらはファイアウォールルールです。各プロジェクトには独自の セキュリティーグループ を設け、ネットワークへの出入りを許可するトラフィックを定義することができます。
1.1.3. ディレクターによる設定管理
Red Hat OpenStack Platform director では、YAML テンプレートを使用して OpenStack 環境をデプロイおよび管理を行うことができます。これにより、自分の設定がどのようになっているのかを簡単に把握することができます。OpenStack 設定ファイルは Puppet によって管理されるため、openstack overcloud deploy
プロセスを実行するたびに、管理対象外の変更が上書きされます。これにより、YAML の設定が特定の時点での現実を表していることをある程度保証することができます。また、このアプローチにより、OpenStack 導入時のセキュリティー設定管理に一貫性、監査性、再現性を持たせることができます。障害復旧についても、Director が設定管理とオーケストレーションを使用することで、クラウドの導入と設定が体系化され、復旧時間が向上します。
さらに、デプロイ時に渡されるカスタム環境ファイルを使って、独自のカスタマイズを追加することもできます。
詳細は、Director ガイド (https://access.redhat.com/documentation/ja-jp/red_hat_openstack_platform/16.0/html-single/director_installation_and_usage/) を参照してください。