クラウド基盤構築演習

 

平成27年度シラバス

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

201519

 

 

 

 

 

 

 

 

 

 

 

 

国立情報学研究所

トップエスイープロジェクト

代表者 本位田 真一


 

 

1.      科目名

クラウド基盤構築演習

 

2.      担当者

中井 悦司中島 倫明

 

3.      本科目の目的

本科目では、Linuxとオープンソースソフトウェア(OpenStack)を利用して、IaaSInfrastructure as a Service)クラウド基盤構築の実機演習を行う。クラウド基盤の構築に必要となるサーバ/ネットワーク技術について基礎的な解説と演習を実施した上で、実際のクラウド環境の構築へと進み、クラウド基盤を構築・運用するための実践的な技術を習得する。

 

4. 本科目のオリジナリティ

クラウド基盤を支えるサーバ/ネットワーク技術について、基礎から解説・演習した上で、実機環境を利用して、オープンソース(OpenStack)によるクラウド環境の構築演習を進める。これにより、受講者は、クラウド基盤の仕組みを根本から理解した上で、自らクラウドを構築、運用するための技術要素を習得することができる。

             

5.   本科目で扱う難しさ

クラウドコンピューティング技術によって、ITの利用形態が変貌すると予想される中、企業システムを担うITエンジニアには、これまで以上に広く、高度な基盤技術の習得が要求されるようになる。企業システムでクラウドを効果的に活用する上では、複数のパブリッククラウド・サービスを適材適所で組み合わせた利用、あるいは企業専用のプライベートなクラウド環境を自ら構築しての利用など、従来とは異なる基盤技術の応用が求められるためである。そのためには、クラウド基盤に関わる技術要素を根本から理解して、ビジネス要求に応じた、最適なクラウドのアーキテクチャを選択・構築する能力が必要となる。

 

6. 本科目で習得する知識・技術

第一部では、クラウド基盤を支える基礎技術として、Linuxサーバ構築・運用、ネットワーク設計、Linuxの内部構造、サーバ仮想化技術について、講義と実機演習を通して、基礎から学習する。

第二部では、IaaSクラウド基盤の具体例として、オープンソースのOpenStackを取り上げる。OpenStackが実装する機能説明に加えて、環境構築に必要な自動化技術、OpenStackの内部構造などを学ぶ。さらに、実機によるOpenStack環境の構築演習を行い、実際の環境構築に必要な技術を習得する。

 

7. 前提知識

本科目の受講生は、以下の項目を習得済みであることが望ましい。

(1)  クラウドコンピューティングの概要

(2)  Linuxのインストール経験

(3)  Linuxサーバ管理の基礎知識(viエディタの使用とネットワーク基本設定程度)

このうち、項目(1)はトップエスイー開講科目「クラウド入門」で習得可能である。

 

8. 講義計画

 

概要

第一部:クラウド基盤を支える基礎技術(担当講師:中井 悦司

第1回: Linuxサーバ構築の基礎知識

第2回: Linux導入・設定演習

第3回: IPネットワークと認証技術の基礎

第4回: Linuxネットワーク管理演習

第5回: Linux問題判別と内部構造入門

第6回: Linux問題判別と内部構造演習

第7回: サーバ仮想化技術の概要

第8回: サーバ仮想化環境構成・管理演習

 

第二部:OpenStackによるクラウド基盤構築(担当講師:中島 倫明)

9: OpenStackの概要と基本機能      

10: All-in-one構成による導入演習

11: 仮想マシン構築自動化技術

12: 仮想マシン構築自動化演習      

13: OpenStackの主要コンポーネント

14: 複数ノード構成による導入演習

15: 仮想ネットワーク技術とSDN

 

 

詳細

第1回: Linuxサーバ構築の基礎知識

OSの役割とデバイスドライバ

Linux起動プロセス

・ディスクパーティションとLVMの構成

・ディスクイメージファイルとループバックデバイスの利用

iSCSIターゲットの構成

 

第2回: Linux導入・設定演習

Linux導入演習

・ディスクイメージファイル利用演習

iSCSI/LVM構成演習

 

第3回: IPネットワークと認証技術の基礎

IPネットワークとVLANの基礎

iptablesの基礎とパケットフィルタリング

iptablesによるNAT処理

・鍵ペアによるSSH認証

 

第4回: Linuxネットワーク管理演習

iptables設定演習

SSH公開鍵認証演習

VLANデバイス設定演習

 

第5回: Linux問題判別と内部構造入門

Linux問題判別の概要

・システムログの収集

Linuxのプロセス管理

Linuxのメモリ管理

 

第6回: Linux問題判別と内部構造演習

・問題判別基本コマンド演習

・プロセス管理演習

・メモリ管理演習

 

 

第7回: サーバ仮想化技術の概要

・仮想化ハイパーバイザの分類

KVM/Xenのアーキテクチャ

Linuxの仮想ネットワーク機能

cgroupsによるリソース制御

 

第8回: サーバ仮想化環境構成・管理演習

・仮想マシン構成演習

・仮想ネットワーク構成演習

cgroupsによるリソース制御演習

LXCによるコンテナ構成演習

 

第9回: OpenStackの概要と基本機能

OpenStackのこれまで

OpenStackの機能概要

・セキュリティ機能とストレージ機能

・プロジェクト管理機能

OpenStackの主要コンポーネント

 

第10回: All-in-one構成による導入演習

・インストール用仮想マシンの準備

RDOのインストールと初期設定

・仮想マシンインスタンスの起動

・ブロックボリュームの接続

・インスタンスタイプの追加

Webサーバの構築

 

第11回: 仮想マシン構築の自動化技術

virt-installによる仮想マシン作成

KickStartによるOS自動インストール

・サーバ構築自動化の考え方

Puppetによるアプリケーション導入の自動化

Git/GitHubによる設定ファイル管理

Gitを使ったコード調査の例

Cloud-InitによるOpenStackとの連携

 

第12回: 仮想マシン構築自動化演習

KickStartファイルの作成

virt-managerからのKickStartインストール

Puppetの利用

GitGitHubの利用

Cloud-Initとの連携

 

第13回: OpenStackのアーキテクチャ

OpenStackの主要コンポーネント

Nova/Cinderを構成するサービス群

Keystoneのトークン認証

・スケーラビリティと高可用性を実現するコンポーネント配置

・クライアントライブラリによるAPI操作

 

第14回: 複数ノード構成による導入演習

・コントローラノードの構築

・コンピュートノードの追加

・コマンドによる操作

Pythonライブラリによる操作

 

第15回: 仮想ネットワークとSDN

Neutronの基本構造

LinuxBridgeプラグインによる実装例

Open vSwitchプラグインによる実装例

・仮想ネットワークの構成手順

SDN (Software Defined Network) の概要

 

 

9. 教育効果

クラウド基盤を支える基礎技術の学習とオープンソースを利用した実環境構築の演習を合わせて行うことで、単なる導入手順や運用・管理手順に留まらない、実践的な技術力を身につけることができる。本科目で身につけた知識を足がかりとして、Hadoopなどの大規模分散処理技術の活用や複数クラウドを連携させたハイブリッドクラウドの活用などに、自信を持って進むことができる。

 

10.   使用ツール

  edubaseCloudおよび関連ツール

  Linuxおよび仮想化ハイパーバイザー(KVM

  OpenStackおよび関連ツール

 

11.   評価

演習課題レポート、出席日数などを総合して評価する。演習課題レポートは、講義期間中にテーマを説明した後、講義最終日から約3週間後を提出締切とする。

 

12.実験及び演習

第一部では、Linuxの基礎技術を学習するための実機演習課題を用意している。第二部では、OpenStackによるクラウド基盤環境の構築を実機演習として行う。コース全体を通じて実機演習の時間を十分にとり、実践的な技術力を身につけることを目指す。

 

13.   教科書/参考書

  中井 悦司(著)「独習Linux専科・サーバ構築/運用/管理」(技術評論社)

  中井 悦司(著)「プロのためのLinuxシステム構築・運用技術」(技術評論社)

  中井 悦司(著)「プロのためのLinuxシステム・ネットワーク管理技術」(技術評論社)

  中井 悦司(著)「プロのための Linuxシステム・10年効く技術」(技術評論社)

  中井 悦司中島 倫明(著)「オープンソース・クラウド基盤 OpenStack入門」(アスキー・メディアワークス)

※Linuxの使用経験が少ない受講生は、次の書籍などで事前学習することを推奨する。

中井 悦司(著)「独習Linux専科・サーバ構築/運用/管理」(技術評論社)