クラウドを使ってみた。第1回 — Sakura VPS その2 –

1. VPSの初期化

それでは実際の作業に入ります。今回は、まずVM の初期化から。今回は、多少手が加わったVPSを引き渡してもらったので、いったん初期化してから構築することとしました。
新規で申し込まれる方は、こちらから。
<http://vps.sakura.ad.jp/>
なお、sakuraの回し者ではありませんので念のため。

初期化にはまず次の URL にアクセスします。
<https://secure.sakura.ad.jp/vpscontrol/>
VPS コントロールパネル

IP アドレス、パスワードには、Sakura から送られてくる登録完了メールに記載されたIP アドレスとパスワードを入力します。
そこで表示される VPS コントロールパネルから仮想マシンをコントロールします。
VPS コントロールパネル
左側のメニューから「OS再インストール」を選択します。
OS 再インストール
OS は特に変更する必要もないので、標準の CentOS 6.2 x86_64 を選択。カスタムOSインストールを選択すると、CentOS 以外でもUbuntu、 Scientific Linux (最近人気があるらしいRedHat互換 OS)、FreeBSD、Debian、Fedoraが選択できます。ただし、カスタムインストールは、インストール作業を自分でやらなければならないとのことで、少し敷居が高いです。 また、「ISO イメージインストール」を選択すると、自分でアップロードしたISOイメージからインストールできるので、メニューから選択できないOS でもインストールできます。
パーティションの設定も標準のままとします。
当然といえば当然ですが、root パスワードを要求されますので入力。お約束ですが、すべてのデータが失われるのでバックアップをとっておくように、との注意書きもあります。
数分でインストールが終了します。

OSが初期インストール状態になりましたので、ここから設定を開始します。

実際の設定は、また次回以降。

クラウドを使ってみた。第1回 — Sakura VPS その1 –

今回のこの「クラウドを使ってみた」という企画を発案したのは、私。当然のこととして、「言い出しっぺの法則」が適用されて担当になることになりました。

実際に「使ってみる」前に、クラウドについてちょっと調べてみました。

クラウドの形態としては、次のような分類がありますね。

SaaS
インターネット経由のソフトウェアパッケージの提供。一般の人々が触れることの多いクラウドの形態と思います。GMailとかストレージサービスとかですね。今までの私の使ってきたサービスです。
PaaS
インターネット経由のアプリケーション実行用のプラットフォームの提供。仮想化されたアプリケーションサーバやデータベースなど。ユーザーが自分のアプリケーションを配置して運用できる。セールスフォース・ドットコムのForce.comプラットフォーム、GoogleのGoogle App Engine、AppScale、マイクロソフトのWindows Azure、Amazon.comのAmazon S3やAmazon DynamoDBやAmazon SimpleDBなど。
HaaSまたはIaaS
インターネット経由のハードウェアやインフラの提供。サーバー仮想化やデスクトップ仮想化や共有ディスクなど。ユーザーが自分でOSなどを含めてシステム導入・構築できる。Amazon.comのAmazon EC2など。

「クラウドを使ってみた。」第1回は、まず HaaS または IaaS に分類されるであろうSakura VPS から始めます。

次のような内容でセットアップします。(セットアップは Kさんにご指導いただきました。ありがとうございます。)

1. VPS の初期化
2. Apache のインストール
3. Webmin のインストール
4. PostgreSQLのインストール
5. PHP のインストール
6. phpPgAdmin のインストール
7. postfix のインストール
8. dovecotのインストール
9. ClamAV のインストール
10. Fail2Ban のインストール
11. WordPress のインストール(MySQL、phpMyAdmin も含む)

実際のインストールは、次回から。

Rubyでサーバ設定を自動化! Chef Soloを試そう!第2回

前回は、chef-soloを使ってapache(httpd)をインストールしましたが、CentOSなどRedHat系では、サービス登録がされないので起動の設定をする必要があります。

chef/cookbooks/main/recipes/default.rb に下記の追加を行います。

service :httpd do
  action [:enable, :start]
end

これで、サービス登録がされ、httpdが起動されます。

ところで、いちいちサーバーにログインしてファイルを編集するのは面倒ですし、複数のサーバーに同じ設定をしようとするとさらに大変です。そこで、rsyncを利用してファイルを同期させる事にしましょう。

まず、サーバーにsshdをインストールし、root でリモートログインできるようにしておきます。

sshでリモートログインできるようになったら、scpを使ってサーバー上のchef関連のファイルをローカルクライアントにコピーしましょう。ここではサーバーのIPアドレスを192.168.1.1と仮定します。

client$ scp root@192.168.1.1:/var/chef .

パスワードが要求されるので入力します。サーバー上のchefディレクトリがカレントディレクトリにコピーされます。今後はクライアント側のファイルを編集した後、下記の通りrsyncコマンドでサーバーに同期させます。

client$ rsync -r . root@192.168.1.1:/var/chef

こちらもパスワード入力が求められます。ファイル同期が終わったら、後は下記のコマンドでサーバー上でchef-soloを実行します。

client$ ssh root@192.168.1.1 "chef-solo -c /var/chef/solo.rb"

言い忘れましたが、上記はクライアントがLinuxまたはMac OS Xの場合です。Windowsの場合には下記の記事などを参考にすれば良いかと思います。(すいません。ためしてません)

Windowsユーザもrsyncでファイルをアップしよう

クラウドを使ってみた。第0回

新潟オープンソース協会の活動の一環で、クラウド環境を使ってみて、比較記事を書くことになりました。
次のクラウド環境を使ってみる予定です。
- Sakura VPS
- Google App Engine
- Amazon EC2
- ほかにあれば。

クラウドの定義というと、アメリカ国立標準技術研究所 (NIST)の次のものがよく引き合いに出されるようです。(WikiPedia から引用。)

クラウドコンピューティングとは、ネットワーク、サーバー、ストレージ、アプリケーション、サービスなどの構成可能なコンピューティングリソースの共用プールに対して便利かつオンデマンドにアクセスでき、最小の管理労力またはサービスプロバイダ間の相互動作よって迅速に提供され利用可能になるという、モデルのひとつである。このクラウドモデルは可用性を促進し、5つの基本特性と、3つのサービスモデルと、4つの配置モデルによって構成される。

 

私の中でクラウドの定義というと、(ほぼ)無限に近いコンピューターリソースを、必要に応じて調達できる環境、と思っています。そうすると、プライベートクラウドはちょっと(私の思っている)クラウドっぽくなかったり、Sakura VPS のような Virtual Private Server の環境は(私の思っている)クラウドの定義から外れているような気もするのですが、それはそれ。まずは使ってみてレポートしてみようと思います。

どこまで使ってみる、ですが、環境を整備して、アプリケーションを立ち上げるところまでやってみようと思っています。

まずは Sakura VPS を借りてもらったので、そこからやってみようと思います。