Help us understand the problem. What is going on with this article?

(ちょっと自動で)さくらのVPSにCoreOSを入れるメモ

More than 5 years have passed since last update.

Dockerが熱いですね。
EC2とかGCEとかで試すのがいいんでしょうけど 
自分が既に契約している
さくらのVPSにインストールして見ようと頑張りました。

ただ 色々めんどくさかった (特にコピペのできないQEMU!)
なので忘れないようにメモしようと思います。

ちょっとはクラスタリング組むのも楽になるといいんですが。


手順は
http://qiita.com/yujiod/items/dc154120c4df2e938111
を参考に

ISOファイルに関しては
nyarlaさんの
https://github.com/nyarla/coreos-live-iso

のスクリプトをDockerfileに移植した
https://github.com/k2wanko/coreos-live-iso/tree/sakura-vps
を使ってやっていきます。

環境

  • Mac OS X
  • boot2docker Client version: v1.2.0
  • さくらVPS2G HDDプラン

設定ファイルの作成

$ git clone https://github.com/k2wanko/coreos-live-iso
$ cd coreos-live-iso
$ git checkout sakura-vps

中を見ると
sakuravps-configureがあるのでこれを使ってconfigを生成します。

中にさくらVPSコントロールパネルにログインするための
IPとPASSWORDを入れる欄ありますが入力しなくても聞いてきますので
編集する必要はありません

以下のコマンドで実行

$ ./sakuravps-configure

curlでゴリゴリアクセスした後
さくらVPSのサーバーに必要な設定が記述された、
vps-configcloud-configが生成されます。

cloud-configにおいて重要なのは以下の部分。

cloud-config
...
coreos:
  units:
    - name: 00-eth0.network
      runtime: true
      content: |
      [Mathc]
      Name=eth0

      [Network]
      Address=$VPS_IP/23
      Gateway=$VPS_GATEWAY
      DNS=$VPS_DNS1
      DNS=$VPS_DNS2

CoreOSはデフォルトでDHCPなのでこの設定ファイルを作ってあげることで固定IPアドレスを付加できます。

cloud-configはそれぞれの環境に合わせてカスタマイズしたり生成用のスクリプトも自分用に手を加えておけば、
さくらVPSを何台契約しても楽になると思います。
(合わせてEC2やGCE用のスクリプトも生成するようにすればクラスタリングを組むのも楽そうですね)

ISOの作成

cloud-configの設定を自分好みにカスタムしたら
buildスクリプトを叩けば一発です。

$ ./build

ISOのアップロードとLiveCDのインストール

ここからはさくらVPSコントロールパネルにアクセスしながら進めていきます。
とっておきのブラウザでアクセスしてください

ログインしたら

「OS再インストール」をクリックして進みます。

さくらインターネットVPSコントロールパネル.png

そして「ISOイメージをインストールへ」をクリックして進みアカウントの作成までします。

さくらインターネットVPSコントロールパネル-2.png

さくらインターネットVPSコントロールパネル-3.png

さくらインターネットVPSコントロールパネル-4.png

表示されたアカウントを使いsftpでISOファイルをアップロードします。

$ sftp vps0000000000@vps-iso.sakura.ad.jp
vps0000000000@vps-iso.sakura.ad.jp's password:
Connected to vps-iso.sakura.ad.jp.
sftp> cd /iso
sftp> put CoreOS.master.iso
Uploading CoreOS.master.iso to /iso/CoreOS.master.iso
CoreOS.master.iso                          100%  126MB   4.1MB/s   00:31
sftp> exit

もしくは以下のコマンドでパスワードだけ入力すればアップロードできます。

$ sftp vps0000000000@vps-iso.sakura.ad.jp 0< sftp-cmd

アップロードが完了したら「ISOイメージ」の「更新」ボタンをクリックします。

そして下の方にある「確認」をクリックし
「HTML5モードで開く(推奨)」をクリックし起動してるかな〜と確認します。

「localhost login:」ってのが出てきたら大丈夫です。

ただこの段階ではネットワークの設定が反映されていないので
コントロールパネルに戻り「仮想サーバー操作」の「再起動」ボタンを押して
再起動します。

もう一度リモートコンソールの「VNCコンソールを開く」をクリックして
推奨とのことなので「HTML5モードで開く(推奨)」をクリックして開きます。

今度も「localhost login:」まで見届ければいいんですが
ちょっと上にens3のところにVPSのIPが表示されていればネットワークの設定は大丈夫です。

eth0: XXX.XXX.XXX.XXX <-ここにVPSのIPが出ればOK
eth1:
eth2:


localhost login:

あとは皆大好きなコンソールから操作ができます。

coreosのインストール

core@localhost ~ $ sudo coreos-install -d /dev/vda -c cloud-config -C alpha -V current
```

終わったらコントロールパネルの再起動で再起動して完了です。

TIPS
#余談だけど以下のコマンドをローカルから実行してしまうと
#インストールに失敗し なんか色々大変になるので気をつけてください

ssh vps sudo coreos-install -d /dev/vda -c cloud-config -C alpha

せっかくなのでなんか動かしてみる

coreosで操作してます。

$ docker pull dockerfile/ghost
$ docker run -d -p 80:2368 dockerfile/ghost

ブラウザでアクセスして表示されれば成功!

Ghost.png

まとめ

Dockerらしく簡単に作って消して作るってのがさくらのVPSではなかなかやりづらいですね

でもちょっとは作るのが楽になったので2台目契約した際にクラスタリングも色々設定をこねながら作れそうです。

koki_cheese
Go/JavaScript/Firebase/GCP/Securityとかが好きです。
http://github.com/k2wanko
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした