今回は、Azureに用意した仮想マシンKUSANAGIのプロビジョニング(配置)です。
プロビジョニングを行うことで、Webサーバの設定ファイル、MySQLのデータベースや、ドキュメントルートなどを自動的に作ってくれるみたいです。
その前に、Azureの仮想マシンに「DNS名ラベル」を設定するのが良いようです。
・Microsoft Azureの仮想マシンにAzureサブドメイン(DNS名ラベル)を設定する方法 | nrjlog
仮想マシンにAzureサブドメイン(DNS名ラベル)を設定
ダッシュボードで『すべてのリソース』の『仮想マシン』を選択します。
『パブリック IP アドレス/DNS 名ラベル』の値(水色部分のIPアドレス)をクリック。
『構成』の『DNS 名ラベル(オプション)』に任意の名前を入力。
【DNS 名ラベル(オプション)】.japanwest.cloudapp.azure.com」というURLを使えるようになります。
ポートの確認
仮想マシンに「DNS名ラベル」をつけたら、次は必要な「ポート」を開きます。
インターネットは「IPアドレス+ポート」でお互いが通信しているので、ポート番号の指定をする必要があります。
Webサーバであれば、一般的には「22:SSH / 80:HTTP / 443:HTTPS」を開けます。
Azureの場合、「ネットワークセキュリティグループ」を確認すると、どの仮想マシンのネットワークインターフェイスに、どのセキュリティグループが割り当てられているか分かるようです。
『ネットワークインターフェース』で表示されたものを選択クリックします。
『ネットワーク セキュリティ グループ』を選択クリックします。
『受信セキュリティ規制』 をクリック。
Azure MarketPlaceに登録されている「KUSANAGI for Microsoft Azure」の仮想マシンを使ったので、ポート「HTTP(80) / SSH(22) / HTTPS(443)」が既に開いています。自分で仮想マシンを立てた場合は、この部分の設定を行う必要があるようです。
KUSANAGIのプロビジョニング
プロビジョニングのコマンドは、
kusanagi provision [options] 【任意のプロファイル名】
です。/home/kusanagi/【任意のプロファイル名】というディレクトリができるようです。
プロビジョンするタイプをオプションで選択することができるようです。
- オプション --WordPress を指定すると、WordPress をプロビジョニングします。
- オプション --concrete5 を指定すると、Concrete5 をプロビジョニングします。
- オプション --drupal8 を指定すると、Drupal8 をプロビジョニングします。
- オプション --lamp を指定すると、LAMP(Linux+Apache+MySQL+PHP) もしくは LEMP(Linux+NGINX+MySQL+PHP)で使用するための設定のみをプロビジョニングします。
上記オプションを指定しない場合は、WordPress をプロビジョニングします。
今回は既にローカルで作成したWordPressをアップロードしたいので、4を選択しましたが、うまくいかなかったので1にしてWordPressをインストールする方法でやり直しました。
Tera Termで仮想マシンにログインし、sudo suでrootユーザーになったら、
kusanagi provision kusanagi_html
を実行します。
Webサイトで使用するホスト名には、仮想マシンに設定したDNS 名を、
データベース名、ユーザー名、パスワードはWordPressをインストールするときに必要になります。
プロビジョニングは完了しました、となればOKです。ブラウザ上から、仮想マシン(Webサイトで使用するホスト名)にアクセスします。
アクセスするとWordPressのインストール画面にきます。
データベース名、ユーザー名、パスワードを入力、仮想マシン内のデータベースを利用する場合、データベースのホスト名はlocalhostのままでOKのようです。
WordPressの管理画面にログインする際の、ユーザー名、パスワード名を入力します。
インストールを実行します。
WordPressの管理画面が表示されました。
本当は、開発していたWordPressをアップしたかったのですが、やり方がよく分からず新規でWordPressをインストールすることになりました。
仮想マシン内のデータベースへのアクセスの仕方も調査していきたいと思います。
※追記
WordPressのアップは、WinSCPなどのファイル転送ソフトで仮想マシンとSFTP接続することで可能ですが、自分の場合は、プロビジョニングでできたkusanagiフォルダにアクセス権がないと言われてしまったので、Tera Termから仮想マシンに接続し、kusanagiフォルダの1つ上のフォルダ(自分の場合はhome)に移動し、
chmod 777 kusanagi/
とすることでWinSCPでアクセスアクセス可能になりました。
コマンド間違えまくってますが、最終的にはなんとかなりました。
あとは、仮想マシンのMySQLサーバーへのアクセスを調べていきたいと思いますが、データベースのホスト名をlocalhostで設定してたので、【DNS 名ラベル(オプション)】.japanwest.cloudapp.azure.com/phpMyadminでいけると思ったんですが駄目でした。そうは問屋が卸さない、ということで調べていきたいと思います。
今回はこのへんで。