NetBSD Advent Calendar 2017の8日目の記事です。
はじめに
2015年5月17日以前にConoHaにアカウントを作っていたので、 新しくなったConoHaのVPSを試していなかった。 NetBSDに関しては、NetBSD/amd64 7.1のテンプレートが用意されているようだ。 しかし、NetBSD 8.0_BETAが試せるので、NetBSD/amd64 8.0_BETAを インストールしたいと言うのが人情だと思う。
ConoHa VPSではOpenStackをインフラストラクチャーとして使用しているとのことで、 OpenStack APIを使用することができる。 こう書くと便利なようだが、OpenStack APIを使わないとISOイメージの持ち込みも できないので、逆に不便な気もする。
多数の仮想マシンを展開する場合には、何でもAPIで実行できるのは意味が あると思うのだが、今回はAPIが必要でないものにはAPIを使用しないようにする。
手順を想定する
仮想マシンでないハードウェアにインストールする場合と変わることはないと 思うが、以下のような順序でインストールすることにする。
- ISOイメージを用意する
- ISOイメージをマウントする
- ISOイメージから起動させる
- インストールする
- シャットダウンする
- ISOイメージをアンマウントする
- 起動させる
OpenStack APIを調べてみる
それぞれのステップに必要なAPIや操作を調べてみる。
ISOイメージを用意する
ISOイメージダウンロードが使用できる。 http等で拡張子.isoのISOイメージファイルのみダウンロードできるとのこと。
ISOイメージをマウントする
ISOイメージの挿入(mount) が使用できる。 仮想マシンが停止中のみマウント可能であるとのこと。
ISOイメージから起動させる
仮想マシンの起動は、コントロールパネルのウェブページから可能である。 APIでもできるだろうが、ウェブページからできるので、APIは使用しない。
インストールする
インストールは、APIの関係するものではないので、APIは使用しない。
シャットダウンする
仮想マシンのシャットダウンは、NetBSDでshutdown -p now
を
実行すれば良いはずなので、APIは使用しない。
ISOイメージをアンマウントする
ISOイメージの排出(unmount) が使用できる。 仮想マシンが停止中のみ可能であるとのこと。
起動させる
「ISOイメージから起動させる」と同じであるので、コントロールパネルの ウェブページで起動可能である。APIを使用する必要はない。
APIを操作する
実際には、JSONをHTTPSで送ることによって操作する。 ConoHaのページには、 curlを 使う例が出ているのだが、そのまま使ってもおもしろくない。 なので、Firefox 57で動く拡張機能である RESTEDを使うことにする。
早速ISOイメージをダウンロードしようとしたのだが、認証のためのトークンが
必要であった。
APIを使用するためのトークンを取得するにあるようにしないといけない。
具体的にはテナントIDをウェブページに表示させ、
それを使ってIdentity Serviceでトークンを取得する。
下図のようにして、トークンを取得する。
無事にaccess.token.idでトークンが取得できたので、
トークンの期限が切れないうちに先に進めよう。
ISOイメージを用意する
以下のようにISOイメージをダウンロードする。
cdn.NetBSD.orgからダウンロードすることにする。
やはり、ダウンロードした結果を確認しないと不安である。
確かにダウンロードされたようである。スクリーンショットをとっている時間内にダウンロードは完了してしまったようである。
ちなみにISOイメージを消す機能はない。だがある程度時間が経つと、自動的に削除されるようである。
ISOイメージをマウントする
サーバーを用意し、サーバーのUUIDを確認しておく。 サーバーは停止しておく。
ISOイメージをアンマウントする
おわりに
NetBSD/amd64 8.0_BETAは特に問題なく稼動している。
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。