第3章 CDK の Microsoft Windows へのインストール

3.1. CDK の Microsoft Windows へのインストール

Red Hat CDK を実行するために Microsoft Windows 開発システムを準備するには、以下のステップを実行します。

  1. VirtualBox 仮想化ソフトウェアのダウンロードおよびインストール。
  2. Vagrant のダウンロードおよびインストール。
  3. Red Hat Container Tools および Red Hat Enterprise Linux 用の Vagrant box のダウンロード。
  4. Red Hat subscription management およびその他の機能をサポートする追加の Vagrant プラグインのインストール。
注記

本書で説明されている CDK のバージョンは、VirtualBox ソフトウェアで使用されるように作成されています。これは、Windows システムで仮想化サポートを提供する他のソフトウェアを使用している場合には機能しません。

3.1.1. 前提条件

Red Hat CDK を Microsoft Windows システムで実行するには、以下が必要です。

  • Windows 7 64 ビット以降を実行する最小 4 GB の RAM を搭載した 64 ビットマシン。
  • 仮想マシンイメージの最小 3 GB の空きディスク領域。セットアッププロセス時で、各仮想マシンイメージの複数のコピーを保存できるようにする必要があります。
  • 1—​2 GB のソフトウェアをダウンロードするための適切なインターネット接続。
  • サポート付きの利用可能な Red Hat Enterprise Linux Server サブスクリプションまたは Red Hat Enterprise Linux Developer Suite。セルフサポート付きの Red Hat Enterprise Linux サブスクリプションには、すべての環境での CDK に必要なすべてのソフトウェアへのアクセスがありません。(CDK でサブスクリプションを使用する方法の詳細は、「Using the CDK (CDKの使用)」の章を参照してください)。
  • Vagrantfile などの拡張子を持たないテキストファイルの編集が可能なテキストエディター。改行のみを含むファイルが出る可能性もあるため、行末の処理に柔軟性のあるテキストエディターを使用するのが望ましいでしょう。
  • rsync および ssh コマンドラインユーティリティーはインストールされている必要があります。推奨されるソースは Cygwin project です。代替ソースから rsync および ssh を使用することを選択する場合、一部のパスとコマンドラインの非互換性が生じる可能性がありますが、これについては本書では扱いません。

3.1.2. 仮想化および Red Hat CDK コンポーネントのインストール

Vagrant は、Red Hat CDK のすべての必要なコンポーネントと共に Red Hat Enterprise Linux 仮想マシンを実行するために使用されます。仮想化は VirtualBox をインストールして提供されます。

Vagrant はコマンドベースのツールであることに注意してください。Vagrant とのすべての対話は、コマンドプロンプトに基づいてコマンドラインで行われます。Vagrant は Start Menu エントリーやデスクトップのショートカットをインストールしません。Vagrant を実行するためには、cmd.exe または他のシェルを起動する必要があります。

コマンドラインの指示は、~/cdk などのパス名を使用します。これは現行ユーザーのホームディレクトリーの C:\User\<username>\cdk の相対パスの省略形です。%USERPROFILE% 環境変数にはユーザーのホームディレクトリーへの Windows パスが含まれ、Linux の ~/ と同等です。

3.1.2.1. Microsoft Windows の追加のソフトウェア要件

Vagrant で使用する ssh および rsync ツールを提供するには、cygwin.com から Cygwin 環境をインストールすることをお勧めします。別のソースから ssh および rsync を使用することを選択する場合には、コマンドラインの引数およびパス名に非互換性が生じる可能性があります。

Vagrant 仮想マシンにアクセスするには SSH クライアントが必要です。PuTTY などの SH を提供するグラフィカルユーティリティーを使用できますが、コマンドラインから実行できる SSH クライアントを用意することが推奨されます。Vagrant は SSH 環境を管理し、単純に vagrant ssh コマンドを実行して Vagrant box にログインできます。これを機能させるには、ssh が Windows パスになければなりません。

Vagrant の同期されたフォルダーのサポートは rsync を使用します。VirtualBox 共有フォルダーが利用できないか、または rsync 同期が指定されている場合に、rsync.exe がパスにないと Vagrant は開始されません。

3.1.2.2. Windows パスの変換および rsync

rsync は POSIX スタイルのパスを使用し、ドライブ文字およびバックスラッシュを直接含む Windows パスを使用することはできません。Cygwin は、/cygdrive/drive-letter/ で開始するパスを使用するため、C:\file.exe/cygdrive/c/file.exe に変換されます。Linux ユーティリティーの他のポートでは異なる規則を使用します。たとえば、MinGW/MSYS 環境は /drive-letter で開始するパスを使用するため、C:\file.exe/c/file.exe に変換されます。Vagrant は使用されている環境の検出を試行してパスを適宜変換します。ただし、これが機能しない場合もあります。

Cygwin の rsync を Windows cmd.exe で使用する場合、Vagrant はユーザーが Cygwin を使用していることを確認できず、rsync に正しくないパスを提供します。これを回避するには、以下の行を %USERPROFILE%\.vagrant.d\Vagrantfile にあるユーザー別の Vagrantfile に追加します。ほとんどの場合、このファイルはユーザーが作成する必要があることに注意してください。

# Cygwin Rsync under CMD.EXE Workaround
ENV["VAGRANT_DETECTED_OS"] = ENV["VAGRANT_DETECTED_OS"].to_s + " cygwin"

この回避策の代替法として、Cygwin のターミナルウィンドウ内で Vagrant を実行することもできます。これは Linux の bash シェルのように使用でき、ウィンドウは 80 を超えるカラム (colums) 数に設定して拡張できます。ただし、これには Windows パスではなく、Cygwin のパスが必要になります。

3.1.2.3. ソフトウェアのダウンロードおよびインストール

  1. Microsoft Windows の VirtualBox を virtualbox.org からダウンロードし、インストールします。

    オプション: VirtualBox VM イメージを保存するための場所を選択します。デフォルトでは、これらはホームディレクトリー (~/VirtualBox VMs) に保存されます。これらのイメージを保存することを選択する場合は、常に数ギガバイトの領域が必要になります。VirtualBox を開始する場所を変更するには、VirtualBox → Preferences → General メニューを選択してから、Default Machine Folder を必要な場所に変更します。VirtualBox のドキュメントは virtualbox.org web サイトにあります。

    注記

    VirtualBox の Start Menu エントリーは Oracle VM VirtualBox です。

    VirtualBox のドキュメントは virtualbox.org web サイトにあります。

  2. vagrantup.com から Vagrant をダウンロードし、インストールします。ダウンロードページは、vagrantup.com/downloads.html です。デフォルトでは、ソフトウェアを C:\HashiCorp\Vagrant\ ディレクトリーにインストールします。これは各自が選択するディレクトリーに変更することができます。

    注記

    Windows 7 の場合は、最新バージョンの Vagrant 1.7 (例: 1.7.4) を使用する必要があります。

    Vagrant インストーラーは Vagrant を Windows パスに自動的に追加します。これが実行されない場合は、Windows のコントロールパネルから C:\HashiCorp\Vagrant\bin をパスに追加してください。

    この時点で、Vagrant インストールは再起動することを提案します。最低でも、更新されたパスを取得するためにコマンドシェルを再起動する必要があります。

  3. Red Hat CDK ソフトウェアコンポーネントを Red Hat Product Downloads web サイト からダウンロードします。以下のアイテムをダウンロードする必要があります。

    • Red Hat Container Tools
    • RHEL 7.2 Vagrant Box for VirtualBox
    注記

    ダウンロードページは libvirt などの他の仮想化プラットフォーム用にフォーマットされた Vagrant .box ファイルも提供します。VirtualBox などの使用する仮想化に一致する .box イメージのみをダウンロードする必要があります。

以下のステップは、これらのファイルをホームディレクトリーの %USERPROFILE%\Downloads に保存していることを前提とします。別のディレクトリーを使用している場合、パスを適宜調整してください。Vagrant box イメージには数ギガバイトの空き領域が必要です。

3.1.3. Red Hat CDK ソフトウェアコンポーネントのセットアップ

  1. ダウンロードした ZIP ファイルを選択したディレクトリーに解凍します。以下のコマンドは、これをホームディレクトリーの %USERPROFILE%\cdk (C:\Users\<username>\cdk) に展開していることを想定しています。

    この時点で、組み込まれている README ファイルを確認して Red Hat Container Tools に精通し、インストールガイドの公開後の変更について確認できるようにします。各 Vagrantfile に関連付けられた README ファイルはテキストファイルで表示できます。プラグインの README ファイルはマークダウン形式で作成されます。そのため、これらのファイルを効果的に使用するにはマークダウンリーダーが必要になる可能性があります。

  2. Red Hat Vagrant box を使用するために追加の Vagrant プラグインをインストールします。

    残りのステップはすべて Windows コマンドラインシェルの cmd.exe を使用して実行される必要があります。

    Red Hat subscription management をサポートするために追加の Vagrant プラグインをインストールするには、vagrant plugin install コマンドを使用します。.gem ファイル形式のプラグインは ZIP ファイルに組み込まれています。

    .gem ファイルのバージョン番号が変更されている可能性があることに注意してください。ダウンロードされたファイルに一致するファイル名を使用する必要があります。

    最初のプラグインのインストールには数分の時間がかかる可能性があり、Vagrant により追加の gem ファイルが随時インストールされる場合があります。

    C:> cd %USERPROFILE%\cdk\plugins
    C:> dir *.gem
    C:> vagrant plugin install vagrant-registration-1.1.0.cdk.gem
    C:> vagrant plugin install vagrant-adbinfo-0.1.0.gem
    C:> vagrant plugin install landrush-0.18.0.cdk.gem

    以下のコマンドを実行してプラグインがインストールされていることを確認します。

    C:> vagrant plugin list

    CDK のインストール後にプラグインを使用する方法の詳細は、「Managing Your Red Hat Enterprise Linux Vagrant Boxes」の章を参照してください。

  3. Red Hat Enterprise Linux Server box を Vagrant に追加します。

    これは直前のステップでダウンロードした設定済みの仮想マシンイメージです。

    C:> vagrant box add --name cdkv2 %USERPROFILE%\Downloads\rhel-cdk-kubernetes-7.2-6.x86_64.vagrant-virtualbox.box

    Vagrant box を初期化するために Vagrantfile を使用する予定の場合、上記のステップで --name パラメーターを使用して box に割り当てる名前は、box を参照するために Vagrantfile が使用する名前に対応している必要があります。

    box がインストールされていることを確認します。

    C:> vagrant box list

    box イメージファイルはホームディレクトリーの %USERPROFILE%\.vagrant.d に保存されます。約 2 GB の十分な領域が必要になります。

3.2. Red Hat CDK Vagrant Box の起動

Vagrant box および Vagrantfile を配置したら、選択した Vagrant box を起動する準備ができます。事前に定義された Vagrantfile を使用して box を初期化するか、または単に box を初期化してから独自の Vagrant ファイルを作成することができます。

以下のステップを実行するには、Cygwin (または選択した Linux のようなユーティリティー) をインストールするために、パスに ssh.exe および rsync.exe を含める必要があります。Cygwin のインストール 時に、Cygwin の bin ディレクトリー (通常は C:\cygwin64\bin) をシステムのパスに追加するオプションがあります。これを実行しない場合は、以下のコマンドを使用して現在の cmd.exe 用にこのディレクトリーを一時的に追加できます。この方法を選択する場合は、Vagrant で使用する cmd.exe シェルを開始するたびにこれを追加する必要があります。

C:> PATH=%PATH%;C:\cygwin64\bin;

また、「Windows パスの変換と rsync 」のセクションで説明されているように、%USERPROFILE%\.vagrant.d\Vagrantfile ファイルを編集しておく必要があります。

既存の Vagrantfile を使用するには、使用する Vagrantfile のあるディレクトリーに移動し、そこから vagrant up コマンドを実行して Red Hat Enterprise Linux CDK の Vagrant box を起動します。3 つの異なる Vagrantfile が以下のユースケース用に Red Hat Container Tools ZIP ファイルで提供されます (または独自の Vagrantfile を作成することもできます)。

  • Docker-Eclipse 統合 (rhel-docker-eclipse) の開始

    $ cd %USERPROFILE%\cdk\components\rhel\rhel-ose
    $ vagrant up
  • 単一ノード Kubernetes セットアップ (rhel-k8s-singlenode-setup) の開始

    $ cd %USERPROFILE%\cdk\components\rhel\rhel-k8s-singlenode-setup
    $ vagrant up
  • OpenShift Enterprise 統合 (rhel-ose) の開始

    $ cd %USERPROFILE%\cdk\components\rhel\rhel-ose
    $ vagrant up
  • Vagrant box および新規の Vagrantfile の初期化 (独自に作成)

    $ mkdir %USERPROFILE%\mycdkv2
    $ cd %USERPROFILE%\mycdkv2
    $ vagrant init cdkv2
    $ vagrant up

この時点までに問題がないと、システムを登録し、Red Hat リポジトリーからのダウンロードを有効にするために Red Hat subscription management のユーザー名とパスワードの入力が求められます。以下のオプションを選択できます。

  • すぐに RHEL VM を登録する (推奨)
  • 後で RHEL VM を登録する

    注意: RHEL サブスクリプションの取得方法、CDK に関連する登録方法、およびシステムの登録が必要な理由の詳細は「Using the CDK (CDKの使用)」を参照してください。

すぐにシステムを登録するには、Red Hat カスタマーポータル で使用するユーザー名とパスワードを入力します。

==> default: Registering box with vagrant-registration…
    default: Would you like to register the system now (default: yes)? [y|n] y
    default: Subscriber username: <username>
    default: Subscriber password:

vagrant status コマンドを使用して Vagrant box が実行中であるかどうかを確認できます。Vagrant ファイルが置かれているのと同じディレクトリーにいる必要があることに注意してください。たとえば、 rhel-docker-eclipse Vagrantfile のステータスを確認するには、以下を入力します。

$ cd %USERPROFILE%\cdk\components\rhel\rhel-docker-eclipse
$ vagrant status

マシンの状態が実行中であると表示されたら、Red Hat CDK を使用し始めることができます。以下を参照してください。

  • 「Using the CDK (CDKの使用)」の章は、CDK の使用に必要な各種の Vagrantfile、プラグインおよびインターフェースを理解するのに役立ちます。さらに、RHEL 仮想マシンを登録する方法などの特定のトピックについて説明しています。
  • コンテナー開発を開始する方法の詳細は、『Red Hat Container Development Kit Getting Started Guide』を参照してください。