(IT) 老害のAWS+CentOS7+Apache2.4など

NTT-ComさんのCloud-nは日本リージョンができる前からユーザーだった。
なんと言ってもネットワーク費用が固定というところがキモ。
できたての頃からエバンジェリストの林さんからの推薦もあって、まずは
個人のサイトからスタート。その後、法人でも契約したけど、その行方は
担当にまかせるとして、個人サイトは先日、引っ越しを余儀なくされた
USリージョンでも移行があるということで、これはマニュアル通りの
移行でなんとかなった。
今度はUSリージョン撤退ってことで、日本リージョンへの移行の案内は
あったものの、今のシゴトからすれば、AWS一択なわけで、そっちへ
移行することにした。

個人のドメイン(shirao.netとryoshr.net)はメールとWeb(blog)の
サーバーが一台にまとめてあった。まあ、安いからね。
今回はメールとWebのサーバーを分けよう、というアイディア。

とりあえず、自前の知識で、AWSのCentOS7上にqmailのインストールを
はじめてみたものの、あちこちでスタックして無理っぽい。
まあ、qmailのインストールといえば、オレが最初にやった時はgccの
コンパイルするところからだったんだぜ。
yumなんて魔法のツールがないころな。
ライブラリが足りないと、東京理科大のsun用のftpサイトから落としたりな。
最初にqmailいれたの、Sun SPARCだったなあ。
で、今回はセキュリティパッチだのtcp wrapperだのqmailの開発当時は
想定してなかったことをフォローするためにいろいろ手順があるんだが、
CentOS7+qmailという組み合わせの情報がほとんどない。
学生時代からのツレのけんちゃんの「いまからqmail?」というつっこみを
きっかけにpostfixへ切り替え。
そしたら、なんだよ、むっちゃ楽ちんやんけ。virtualという名前のファイルの
いじり方さえ覚えちまえば、どうにでもなりそう。Webで管理するツールも
あるらしいし(オレは使わないけど)。
というわけで、実家のじじばばも使っているshirao.netのメールサーバーの
移行はその後はかんたんに完了。Rout53にしといたのも勝因。

つづいてWordpressの移行。
メールサーバーの時もそうだったけど、CenOS7の最初のユーザーって「centos」
なんだよ。「es2-user」じゃないの。EC2でインスタンス作ったのに、ログインできない。
なんでーと思って、会社の同僚に聞いたら、教えてくれた。

SELinuxをまず無効にするのは、学習してた。でもそのあとrebootするのが常識らしく。
vsftpdが立ち上がらず苦労したのはrebootしてなかったからだったようだ。

続いて苦労したのはmysqlのデータの移行。
新しいサーバーは最新のmysql5.7。5.6まではコマンドでrootユーザーのパスワードが
変更できたのに、このバージョンではその「優しいモード(mysql_safe)」がなくなっている。
よくよくしらべると、/var/log/mysqld.logを見て、先頭の方にある
[Note] A temporary password is ・・・の行にパスワードが書いてあるという
Webに辿り着くのに半日以上使うなど。

mysqlでバックアップしたデータを新サーバーで戻したら、あとはwordpress関連の
ファイルをごっそりコピーしたら、blogの移行は完了。
これもDNSをRoute53にしてたから、切り戻しも考えやすかったしね。

よしよしと思ってたら、pluginのアップデイトにftpdが必要。
お約束のvsftpdをインストールしたが立ち上がらない。
一日以上費やしたあげく、あきらめて再起動したら何事もなく立ち上がった。
SELinuxを無効にしてからrebootしてないとよくある現象らしく。

というわけで、ようやくサーバーの引っ越しを完了。
現在smallインスタンスだけど、遅くなったら大きくしようかな、と。

Spesial Thanks to : @tamatamarock

(IT) サーバーの引越し

このblogの載ってるサーバーの引越しを実施。
自分のためのログ。

このblogのサーバーはNTT CommunicationsさんのCloud-nというサービスを使ってる。
たまたまエバンジェリストの林さんと知り合いになれたので、サービス開始
当初から使わせていただいているわけで。

3月上旬から「米国リージョン Compute(VLANタイプ)終了です」ってメール来てたんだね。
後から気がついたよ。メールに予告されている通り、4月1日にバツンとshutdownされた。
うーん、なんか、誰かがshutdownコマンド打ってるけど、なんだこれ?
もしかしてのっとられたか?と思ったけど、フツーにコンソールにアクセスできたので、
再起動だけしておいた。忙しかったしな。
ちょっとしてから知らない固定電話から着信。折り返したらNTT-Comの担当さんだった。
その電話でようやく事情を理解。ほんとすみませんでした。
移行ツールが用意されていたので、移行は楽チンなことを確認だけして、作業は後日とした。

雨の日曜日、作業を開始。

(1)旧サーバーのcrontabを編集。fetchmailでMyDNSにIP通知するのを停止。
→これは、新サーバーを立ち上げた時に勝手にDNSを書き換えないように。
(2)旧サーバーコンソールでサーバーを停止してテンプレート(AWSで言うところのAMI)を作成。
(3)テンプレートできたところで旧サーバーを再起動。
(4)移行ツールでテンプレートをVLANタイプからFLATタイプへコピー。
※ここのマニュアルがわかりづらくて、FLAT側のIDに入れるべきIDがどれかわからず
だいぶタイムロスした。
(5)VLANタイプ側のファイヤーウオール設定をFLATタイプ側のセキュリティグループに移す。
(6)FLATタイプ側でテンプレートを使って新サーバーを立ち上げ。
(7)新サーバー側で各種サービスの起動を確認。
(8)新サーバーでfetchmailを実行してMyDNSにIPアドレスを通知。
(9)MyDNS側でIPアドレスが変更されたことを確認。
(10)blog、mailのlogで新サーバーへトラフィックが向いたことを確認
(11)旧サーバーを停止。
(12)新サーバーで定期スナップショットの設定。

実質2時間程度かな。(4)のログインで時間使ってしまったのが悔やまれる。
Screenshot_05

—後日追記(2015.04.07)
マニュアルに追記されてた。
1.2. 事前に行っていただくこと
—後日追記ここまで

それにしても、OS入れて、いろんなモジュールいれて、CMSいれて、ってやってたら
こんな時間では済まないから、クラウドっつーか仮想化ってやっぱり便利。

ちなみに、今回のサーバーの停止とか再起動とかしつつ監視ツールの動作も確認できた。
UptimeRobotを使っているけど、以前までweb以外のサーバーは名前ではなくてIPアドレス
しか設定できなかったが、気がついたら名前で設定できるようになってた。
この監視ツールは無料だし、便利なので、お勧め。
Screenshot04

さて、次は2年前に勢いで取った.asiaドメインの更新をどうするか、が懸案。