Update 2014-08-19
: Panamax in CoreOS on IDCFクラウド - Part1: インストール
IDCFクラウドにCoreOSクラスタを構築する - Part5: 再セットアップなどではボリュームを作業マシンにアタッチしてインストール作業をしました。
CoreOSはBootableのISOも提供されているので、今回はBooting CoreOS from an ISOを読みながらIDCFクラウドで利用してみます。
IDCFクラウドにCoreOSクラスタを構築する - Part4: 367.1.0のissueで確認しましたが、CoreOSのStable Channel
のcurrentバージョンは367.1.0
です。
今回はPanamaxをインストールするためにCoreOSを用意します。
Installing Panamaxを読むと、推奨バージョンは367.1.0
なので都合が良いです。
idcf-compute-apiのインストール
Pythonで書かれたIDCFクラウドCLIをインストールします。
作業マシンのPythonバージョン確認すると2.7.6
なのでPythonzを使わず、普通にvirtualenvします。
$ python -V |
virtualenvをインストールしてactivateします。
$ sudo apt-get update |
idcf-compute-apiをインストールします。
$ sudo apt-get install python-dev zlib1g-dev libxml2-dev libxslt-dev |
環境設定ファイルを書きます。API_KEY
などの設定情報は、IDCFクラウドのポータルにログインして確認します。
$ vi ~/.idcfrc |
インストールの確認をします。
$ idcf-compute-api listZones -c=id,name |
jqとwaitjobコマンドの用意
jqをインストールします。
$ wget http://stedolan.github.io/jq/download/linux32/jq -P ~/bin |
idcf-compute-apiの非同期コマンドのステータスをポーリングするコマンドを用意します。
|
実行権限をつけます。~/binをパスに通すため一度exitします。
$ chmod u+x ~/bin/jq |
ISOの登録
Stable Channel
からISOをダウンロードURLをコピーして、IDCFクラウドにISOを登録します。
registerIsoコマンドを利用します。133MBなのでISOのダウンロードは速くに終了します。
$ idcf-compute-api registerIso \ |
ISOからインスタンスの作成
ISOからインスタンスはポータルの画面から作成します。
インスタンスが起動した後、コンソールを開くとcoreユーザーでログインした状態になっています。
SSHでパスワード接続をするため、coreユーザーにパスワードを設定します。
$ sudo passwd core |
CoreOSのインスタンスにSSH接続
作業マシンから、パスワードを使いSSH接続をします。
$ ssh core@10.1.0.66 |
CoreOS用の鍵作成
作業マシンでSSH接続に使うキーペアを作成します。あとでParamaxのインストールにも使いたいので、パスフレーズなしにします。
$ ssh-keygen -q -t rsa -f ~/.ssh/deis -N '' -C deis |
CoreOSのインストール
ipコマンドでネットワークを確認します。Noteにあるように、cloud-config.ymlの$private_ipv4
の箇所は実際のIPアドレスに変更します。
$ ip a |
cloud-configを書いていきます。/etc/environment
のCOREOS_PRIVATE_IPV4
に、上記で確認したDHCPで割り当てられたIPアドレスを記入します。
nsenterのラッパーも用意しておきます。
#cloud-config |
Stable Channel
からCoreOSの367.1.0
をインストールします。
BootableのISOから起動しているため、ディスクの/dev/sdaにインストールできます。
$ sudo coreos-install -d /dev/sda -C stable -c ./cloud-config.yml |
rebootします。
$ sudo reboot |
確認
作業マシンからSSH接続します。
$ eval `ssh-agent` |
まとめ
ISOからインストールすると、ディスクにより簡単に短時間でインスタンスを作成できました。
これからはこの方法でCoreOSのインスタンスを用意していきます。
367.1.0のインスタンスが用意できたので、次はPanamaxのインストールをしてみます。
うまく動作したら、このバージョンでCoreOSクラスタはしばらく使っていこうと思います。