Windows Azure上にLinuxインスタンスを立ち上げる(クエスト5)
始める前に
このクエストでは、Windows AzureでUbuntu Linuxが駆動する仮想マシンを作成し、WordPressをインストールします。このクエストを行う前に、かならずクエスト1~3までを終わらせておいてください。
11/23開催のセミナー動画を以下に追加しました。記事とあわせて参考にしてください。
1. SSHクライアントの準備
1.1. Windowsの場合
Windows環境では、デフォルトではSSHクライアントは用意されていませんので、SSHクライアントをインストールしてください。この記事ではTeraTermを前提に解説しています。
SourceForgre.JP TeraTerm Projectから、teraterm-4.75.exeをダウンロードしてインストールしてください。
1.2. Mac OS Xの場合
Mac OS X環境ではデフォルトでSSHクライアントが用意されています。ターミナルを起動します。アプリケーション > ユーティリティにありますので、画面下のドックに登録するなどして、すぐ起動できるようにしてください。
2. Windows Azure管理ポータルへのアクセス
Windows Azure管理ポータルへアクセスします、サイトはHTML5ベースで開発されており、プラットフォームを問わず多くのブラウザで動作します。
→ Windows Azure 管理ポータル
以下の画面がブラウザに表示されていることを確認してください。
3. WordPressをインストールするまでの流れ
今回はWindows AzureにLAMP(Linux Apache MySQL PHP)の環境を構築して、その環境にWordPressをインストールします。
この環境を以下の手順で構築します。
- Linux仮想マシンを構築
- SSHクライアントでアクセス
- LAMP環境の構築
- HTTPエンドポイント仮想マシンに追加
- WordPressのインストール
- WordPressの初期設定
4. Linux仮想マシンを構築
早速、仮想マシンを作成してみましょう。
管理ポータル一番下から[+新規]-[コンピューティング]-[仮想マシン]-[簡易作成]の順でクリックしてから、以下の任意の値を入力してください。
4.1. DNS名
DNS 名は 3 ~ 15 文字のアルファベット、数字、およびハイフンのみです。 名前の先頭にはアルファベット、末尾にはアルファベットまたは数字を使用する必要があり、Windows Azureで既に使用されているDNS名は使うことはできません。
4.2. イメージ
VMの作成に使うベースイメージを指定します。Linuxでは
- Ubuntu Server12.04 LTS
- Ubuntu Server12.04.1
- OpenLogic CentOS 6.2
- openSUSE 12.1
- SUSE Linux Enterprise Server
現在5種類のイメージと4種類のLinuxディストリビューションが提供されています。この記事ではUbuntu Server 12.04.1を使用します。
4.3. サイズ
起動する仮想マシンのサイズを指定します。サイズはCPUコアやメモリなどの違いから[極小]から[極大]までのサイズが提供されています。インストールマニアックスファイナルで指定されているインスタンスサイズは[小]インスタンスになります。
間違って他のサイズを使うと、規定外で失格になりますので、必ず[小(1コア、1.75GBメモリ)]を指定してください。
4.4. ユーザー名
今回のクイック作成では、あらかじめユーザー名はazureuserで作成されます。
4.5. 新しいパスワード・確認
Linux仮想マシンのユーザー(azureuser)のパスワードを入力します、確認の欄にも同じパスワードを入力してください。
パスワードは最低8文字で、且つ次の4つの要件から、少なくとも3つの要件を満たすパスワードである必要があります。
- 小文字1文字
- 大文字1文字
- 数値1文字
- 記号1文字
4.6. 場所
Windows Azureが提供されているデータセンターの場所です。日本からもっとも近い場所は東アジアになりますので、東アジアを選択してください。
必要な情報を記入したら[仮想マシン作成]をクリックしてください。仮想マシンが準備されるまでしばらく時間がかかりますので、10分ほど休憩しましょう。仮想マシンを作成する過程で、仮想マシンのハードディスクイメージを保持するストレージアカウントも作成されます。
仮想マシンの状態が[実行中]になったら作成完了です。
Windows Azureの「仮想マシン」を選択しようとすると、使えない状態になっている場合があります。その場合は、プレビュー機能を申し込みましょう。
管理ポータル上部のバー右側にある自分のプロフィールアイコン(デフォルトは人の形のアイコン)をクリックして展開されたメニューから[明細の表示]をクリックしてください。
すると、現在契約しているサブスクリプションや課金状況を確認する画面が表示されます。この画面の[プレビュー機能]をクリックしてください。
プレビュー機能として提供されている一覧が表示されます。今回は仮想マシンを使いますので[Virtual Machines & Virtual Networks]の[try it now]をクリックして有効化してください。
これでプレビュー機能の申し込みが完了しました。
5. SSHクライアントでアクセス
作った仮想マシンにSSHクライアントを使ってアクセスします。作った仮想マシンの名前をクリックすると仮想マシンの管理パネルの概要画面になります。ここではdeploy-prince.cloudapp.netです。
右の概要部分のDNSがSSHやウェブブラウザでアクセスする際のホスト名となります。以下は今回の作例の仮想マシンの概要です。
5.1. Windowsの場合
インストールしたTeraTermを起動してください。
起動をしたらホストに概要部分のDNSを入力し、OKをクリックします。
アクセスするホストが初めての場合は、ホスト鍵指紋の確認を求められます。仮想マシン概要の[SSH証明書サムプリント]と同じであるか確認をしてください。
接続するとSSH認証ダイアログが表示されます。
ユーザー名azureuserと仮想マシン作成時に設定した任意のパスワードを入力してログインしてください。
このようにバナーが出たら、ログインできています。
5.2. MAC OS Xの場合
Mac OS Xの場合は1-2で説明したターミナルを起動します。
起動したら、以下のように入力して接続してください。
azuresuer@[概要のDNSに記載された文字列]
例では、DNSがdeploy-prince.cloudappp.netですので以下となります。
azureuser@deploy-prince@cloudappp.net
接続に成功すると、パスワードを確認されますので、仮想マシン作成時に設定したパスワードを入力してください。
6. LAMP環境の構築
以後はSSHでログインしている事を前提に進めます。sudoが先頭に書かれているコマンドは、管理者権限で実行をしますので、適宜パスワードを入力してください。
[sudo] password for azureuser: ßここでazureuserのパスワード入力
6.1. パッケージ情報の更新
まずは、取得できるパッケージ情報を最新の状態に更新しましょう。
azureuser@deploy-prince:~$ sudo apt-get update [sudo] password for azureuser:
6.2. LAMPパッケージのインストール
次にLAMP環境の構築を行います、以下のコマンドを入力してください。
$ sudo tasksel install lamp-server
途中、MySQLサーバの管理者パスワードの入力を求められますので、任意のパスワードを入力してください(2回あります)。
7. HTTPエンドポイントを仮想マシンに追加
LAMP環境が構築され、すでにウェブサーバーが起動しています。この確認の為に、HTTPポートを仮想マシンに追加して、外部からブラウザで参照できるようにします。
仮想マシンの概要画面の上部にある[エンドポイント]をクリックしてください。
エンドポイントの編集画面に移動します。画面にはすでに解放されているSSH TCP 22番が追加されています。
管理画面下部の[エンドポイントの追加]ボタンをクリックしてください。
クリックすると仮想マシンへのエンドポイントの追加を行うダイアログが表示されます。エンドポイントの追加を選択して、次へ進めてください。
エンドポイントは以下の情報で登録してください。
- 名前 HTTP(任意ですが、ここではHTTPとしました)
- プロトコル TCP
- パブリックポート 80
- プライベートポート 80
パブリックポートは外部からアクセスしたときのポート番号、プライベートは転送する仮想マシンのポート番号です。
入力が終わったら、チェックをクリックして追加を完了させてください。追加には数分程度の時間がかかります。
7.1. ブラウザから確認
任意のブラウザを起動し、確認を行ってください。DNS名でそのままアクセスします。http://DNS名/でアクセスします。今回の例では http://deploy-prince.cloudapp.net/ になります。アクセスに成功すると以下の画面が表示されます。
動作を確認できたら、PHPなど変更されたコンフィグを反映する為に一度reloadをしておきます。
azureuser@deploy-prince:~$ sudo /etc/init.d/apache2 reload
8. WordPressのインストール
環境が整いましたので、WordPressをインストールします、SSHでアクセスしてください。
8.1. WordPress用のMySQLユーザーとデータベースの追加
SSHでログインして、mysqlコマンドを使って追加します。パスワードはLAMP環境の構築の際に設定したパスワードになります。
azureuser@deploy-prince:~$ mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 47 Server version: 5.5.28-0ubuntu0.12.04.2 (Ubuntu) Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
WordPress用のデータベースの作成
mysql> create database wordpressdb; Query OK, 1 row affected (0.00 sec)
WordPress用のユーザーの作成とDBへの権限付与
ここではユーザーをwpdbuserでパスワードをpasswordという文字列で作成しています。適宜変更を行ってください。
mysql>grant all on wordpressdb.* to 'wpdbuser'@'localhost' identified by 'password'; Query OK, 1 row affected (0.00 sec)
mysqlコマンドを終了します。
mysql> quit Bye
8.2. WordPressの展開
今回はhttp://DNS名/wordpress/へインストールを行います、以下の手順で進めます。
- Webサーバのルートディレクトリ/var/wwwに移動
- WordPressの最新版をwgetコマンドでダウンロード
- tarコマンドでダウンロードしたファイルを展開
- chownコマンドでディレクトリの所有者権限をwww-dataユーザーへ変更
azureuser@deploy-prince:~$ cd /var/www/ azureuser@deploy-prince:/var/www$ sudo wget http://ja.wordpress.org/latest-ja.tar.gz --2012-11-20 18:45:12-- http://ja.wordpress.org/latest-ja.tar.gz Resolving ja.wordpress.org (ja.wordpress.org)... 72.233.56.138, 72.233.56.139 Connecting to ja.wordpress.org (ja.wordpress.org)|72.233.56.138|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 4970768 (4.7M) [application/octet-stream] Saving to: `latest-ja.tar.gz' 100%[========================================================================>] 4,970,768 1.10M/s in 6.1s 2012-11-20 18:45:19 (796 KB/s) - `latest-ja.tar.gz' saved [4970768/4970768] azureuser@deploy-prince:/var/www$ sudo tar zxf latest-ja.tar.gz azureuser@deploy-prince:/var/www$ sudo chown -R www-data.www-data wordpress
コマンドのみ書き出すと以下となります。どうしても、操作の意味がわからない場合はそのままコピーアンドペーストしてください。
cd /var/www/ sudo wget http://ja.wordpress.org/latest-ja.tar.gz sudo tar zxf latest-ja.tar.gz sudo chown -R www-data.www-data wordpress
9. WordPressの初期設定
任意のブラウザを使って、http://deploy-prince.cloudapp.net/wordpress/のように、WordPressをインストールした、http://DNS名/wordpress/ というURLにアクセスしてください。
今回は設定ファイルが作成されていないので、wp-config.phpがないという画面が表示されます。設定ファイルを作成するボタンをクリックしてください。
さぁ、始めましょう!をクリックしてください。
あらかじめ作成しておいた、データベースの設定を入力して、送信をクリックします、今回の例だと以下の情報となります。
- データベース名 wordpressdb
- ユーザー名 wpdbuser
- パスワード password
- データベースのホスト localhost
- テーブル接頭辞 wp_
インストールの準備ができていますので、インストール実行ボタンをクリックしてください。
サイトのタイトル、管理者ユーザー名、パスワード、メールアドレスを入力しWordPressをインストールのクリックをしてください。 なお、ここで設定するパスワードは、これまでとは別の新しいもので問題ありません。
この画面が表示されたら、インストールは成功しています。投稿やコメントを行って、ブログが正しく動作することを確認してください。
Linux仮想マシンへのWordPressのインストールは以上です!!お疲れ様でした。他のクエストと同様、このWordPressのURLを公式サイトで報告しておきましょう。
また、クエストを順番にこなしてきた方は、このクエストで基本編終了です。審査期間終了まで動作が確認されれば、他の多くのLAMPを対象としたOSSも同じように駆動します、大会期間中に是非インストールをしてみてください。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- WordPress コース 2nd Stage を攻略しよう(Linux 仮想マシン編)
- Windows AzureにPerlのアプリケーションをインストールする(クエスト9)
- Windows Azure上にWindowsインスタンスを立ち上げる(クエスト4)
- 実践! AnsibleによるWordPress環境構築
- ownCloud導入はじめの一歩(仮想マシンイメージとCentOS 7のインストール手順)
- 簡単にWebアプリが使える「Webサイト」にトライしてみる(クエスト7)
- Windows Azure仮想マシンでLinuxサーバーを構築しよう
- IBMのSoftLayerで最新のDrupal 8を試してみよう!
- Windows AzureにPythonのアプリケーションをインストールする(クエスト9)
- Ansible応用編:より実践的なPlaybookを作り上げる