本サイトをKUSANAGI for ConoHaに移行しました!

By | Date : 2016/04/30 ( Last Update : 2016/05/17 ) | 866 views

Nia-TN-SDF-A2

こんにちはー!ニアです。

昨日から始めたサーバー移行作業が終わり、本サイトはExpressWebからKUSANAGI for ConoHaに移行しました。

 

1. 環境の比較

ExpressWeb ConoHa
プラン N/A 4GBプラン / KUSANAGI
CPU N/A 4コア
メモリ N/A 4 GB
ストレージ 30 GB SSD 50 GB
価格(月額) 250円(年払いの場合) 3,420円
OS Windows Server 2008 R2 Cent OS 7
Webサーバー IIS 7.5 Apache 2.4.11 ⇒ nginx 1.9.12
PHP 5.3.14 5.6.20 ⇒ 7.0.5
データベース MySQL 5.1 MariaDB 10.0

 

2. サーバーの移行

サーバーを移行した時の大まかな流れは以下の通りです。

  1. ConoHaでVPSを作成します。
  2. VPSを起動し、パッケージのアップデートとKUSANAGIの初期設定をします。
  3. KUSANAGIでWordPressのプロビジョニング(WordPressの環境構築)します。
  4. WordPressをセットアップします。
  5. phpMyAdminをインストールします。
  6. ExpressWebからコンテンツとデータベースをダウンロード(コンテンツはWebMarixで、データベースはphpMyAdminで)します。
  7. phpMyAdminでConoHaにデータベースをインポートします。
  8. STFP接続でConoHaにコンテンツをアップロードします。
  9. DNSサーバーをConoHa側に切り替えます。
  10. Let’s Encriptをインストールし、Webサイトをhttpsに対応させます。

 

2.1. DNS変更後に悪戦苦闘

1.から9.までの作業は順調に終えることができました。


しかし、9.のDNSサーバーが切り替わった後、ドメイン名からサイトにアクセスできない問題が発生しました。IPアドレスを直接指定した時はアクセスできるのですが・・・。

 

解決方法を調べてみたところ、DNSの設定でAレコードを登録し忘れていたことが判明しました。それではアクセスできないですね。

そこでDNSレコードに「wwwなし」と「wwwあり」の2つのAレコードを追加し、値にはVPSのIPアドレスを設定しました。

さらに、VPSのPTRレコードにある逆引きホスト名をドメイン名に設定しました。

ptrr

レコードを更新てからしばらくすると、ドメイン名からサイトにアクセスできるようになりました。とにかく、接続できて何よりです。

new

DNS関連の設定は最初に済ませておくのがセオリーですね。

 

なお、不測に事態に備えて旧ドメイン(myoga-tn.expressweb.jp)のリダイレクト設定を解除し、サーバーの移行前のコンテンツにアクセスできるようにしていました。今ではchronoir.netへのリダイレクトに戻っています。

 

GWが終わるまでに安定してアクセスできるような状態にしておきたいです。

 

2.2. SSL対応にしてみました

サーバーの移行後、以下の記事を参考にLet’ s Encriptを導入し、本サイトにhttpsでアクセスできるようにしました。

KUSANAGIにあとからLet’s Encryptを入れる – noldor’s diary

本文中のコンテンツの画像(http://chronoir.net/…)に対しては、WordPressのプラグイン「Search Regex」を使ってプロトコルを省略し、httpsで読み込むことができるようにしました。

ちなみに、本サイトはQualys’ SSL LABSのSSLテストでA評価を得ています。

ssl

 

3. パフォーマンス

3.1. ページの読み込み

早速ホームページを読み込みの時間を「Web担当者Forum版 ページ速度分析ツール」を使って測定してみました。

サーバー移行前はホームページの読み込みに3~4秒かかっていたのが、移行後は1秒前後になりました。

sv-03

移行前(ExpressWeb)

nc01

移行後(KUSANAGI for ConoHa)

 

また、KUSANAGIのページキャッシュにより、2回目以降のホームページの読み込みがさらに速くなりました。中には0.5秒を切ることも。

nc02

移行後(KUSANAGI for ConoHa)(2回目の読み込み)

 

3.2. サーバーのベンチマーク

移行前のExpressWebと移行後のKUSANAGIでのベンチマークを、Apache Benchでベンチマークを測定してみました。

KUSANAGIでは、ページキャッシュ(bcache、fcache(fcacheはnginxの場合のみ))を有効にして測定しました。但し、測定前にキャッシュをクリアしています。

ExpressWebでは、同時接続数を5、リクエスト数を10で測定しました(KUSANAGIと同じ条件で測定したら、DoS攻撃になってしまうので)。

サーバー ExpressWeb(IIS 7.5) KUSANAGI(Apache 2.4.18) KUSANAGI(nginx 1.9.12)
同時接続数 5 300 300
合計リクエスト数 10 10000 10000
Concurrency Level  10 300 300
Time taken for tests [sec.] 6.868 11.395 9.978
Complete requests 10 10000 10000
Failed request 6 0 0
Total transferred [bytes] 590694 599770000 598920000
HTML transferred [bytes] 587914 596110000 596110000
Requests per second [#/sec.] 1.46  877.58  1002.20 
Time per reques [ms]

(mean)

3433.791 341.848 299.341
Time per reques [ms]

(mean, across all concurrent requests) 

686.758  1.139  0.998 
Transfer rate [KBytes/sec.] recieved. 84.78 51401.14 58616.03

移行前と比べて、500倍以上のリクエスト数を捌いています。KUSANAGIさん強い!

 

4. おわりに

昨日から2日間掛けて、本サイトのサーバー移行作業をしました。はじめてLinuxサーバーを扱うので、サーバーの設定やファイル・ディレクトリのパーミッションを設定、DNS周りの設定をどのようにすればよいのか色々苦労しましたが、無事に作業を完了することができました。

これからは、新たなサーバーでがんばります!

 

それでは、See you next!

 

Ex-1. WebサーバーをApacheからnginxに変えました

はじめはApacheで運用していましたが、翌日の朝になるとWebサイトにアクセスできないという問題が発生してしまいました。(汗)

  • ブラウザからドメイン名でアクセスできない(静的・動的ページ問わず)
  • ブラウザからサーバーのIPアドレスを直接入力してもアクセスできない(静的・動的ページ問わず)
  • SSH接続は問題なくできる
  • 外部からping接続は問題なくできる

という状態であり、Apacheを再起動したところ、Webサイトに再びアクセスができるようになりました。

しかしApacheを再起動しても、翌日になるとまたアクセス不能になる問題が発生してしまったので、思い切ってApacheからnginxに切り替えました。

しばらくはnginxで様子見です。

【追記】nginxに切り替えてから、5月2日の朝を迎えましたが、朝7時の時点で問題なくアクセスすることができました。

もう数日様子を見て、翌朝を迎えても安定していたら、以後はnginxで使用し続けていこうと思います。

【さらに追記】nginxで運用することに決めました。

 

この記事をシェアする
Chronoir.netのRSSフィードを購読する

About : ニア(Nia)

紅茶とコーヒーが好きな湘南生まれのプログラマー/ITエンジニアです。主にC#/C++/PHPを使ってプログラミングをしています。趣味は写真撮影と音ゲーです。時々イラストを描いています。プログラミングを勉強している方々と仲良くなりたいです! 興味を持っている分野:UWP/Xamarin/Android Wear/WPF/Windows/Visual Studio/WordPress/KUSANAGI/nginx

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*