さくらのVPS512から1Gへ移行。
apacheコンテンツ移行。DBインポート完了。設定まだ。wiki.rutake.com移行完了
DB設定完了。cakephp,blog.rutake.com移行完了
SVN移行完了。SSLはIP指定をしているのでそこを変えないといけなかった。
Cronジョブ移行。バックアップでDBパスワードが変わっていたためそれなりにシェルを変更
一か月かけて準備。普段からrsyncでデータの同期はとっていた。
IP変えて再起動したら反応せず。コンソールから復旧させたが、原因不明だった。 ファイヤーウォールでSquidのポートを通していなかった。こちら設定漏れが多いので注意。Sambaのユーザー移行漏れ!
まずは、それほどアクセスのないページや自分専用コンテンツなどを自作サーバーに移行する。基本的にhttpd.confとssl.confを持ってきて、SVNのアクセス制限元を変更するぐらいで動いた。ssl.conf持ってこないとSSLに強制接続になるので今後の課題。
psql: FATAL: Ident authentication failed for user "postgres" SQLSTATE[08006] [7] FATAL: Ident authentication failed for user "postgres"
# "local" is for Unix domain socket connections only local all all trust
#host all all 127.0.0.1/32 ident sameuser host all all 127.0.0.1/32 md5
2.4にしてみた。いつものようにhttpd.confの設定が必要。 appのみSVNからコピーして無事接続成功
DB単位でエクスポート mysqldump -u root -p MYDATABASE > /var/tmp/MYDATABASEdmp.sql 移行元のDBを消す。 [root@epox cake2.4]# mysqladmin -u root -p drop MYDATABASE 空のDBを作成 mysql> create database MYDATABASE default charset utf8; インポート mysql -u root -p MYDATABASE < MYDATABASEdmp.sql
目的のディレクトリの一階層上に移動 cd /var/www/UPPER_DIR tar cvzf blog.tar.gz blog/
DBも同じようにバックアップして圧縮しておく(18Mが十分の一に)
受け取りサーバー側では同じく一階層上で解凍 DBもインポートしておく 空のDBを作成(utf-8でOK) mysql> create database MYDATABASE default charset utf8; インポート mysql -u root -p MYDATABASE < MYDATABASEdmp.sql
移行元 mysqldump -u root -p --add-drop-table cakephp rooms > rooms.sql gzip rooms.sql 移行先 gzip -d rooms.sql.gz mysql -u root -p cakephp < /var/tmp/rooms.sql
mysql> CREATE TABLE httpd_count ( -> recorded DATETIME not null, -> httpd_count int unsigned not null -> ); mysql> LOAD DATA LOCAL INFILE '/var/log/httpd_count.log' INTO TABLE httpd_count FIELDS TERMINATED BY ',';
svnadmin dump /home/svn/repos | gzip > /var/tmp/myrepos.tar.gz
サーバー再インストールからコンソール上がりきるまで10分は見ておいたほうがよい。DNSがなかなか切替わらず見切り発車で実施。SSLの秘密鍵のバックアップを忘れてSSL月だと起動失敗したのでSSLは後日。blogとwikiは移行完了。cronの改行コードがおかしくてエラーとなっていた。LFじゃないとNG
SVN移行,hosts設定,
SSL証明書,.htpasswd
createdb homedb_uft -E UTF-8 -T template0 ダンプSQLをUTF-8に変換 SET client_encoding = 'UTF-8';
データベース移行は順調。 シンボリックリンクを介してのリライトはNGのようなのでディレクトリ名変更 DBアクセス。ユーザーを追加していなくてアクセス失敗。 simple_dom_htmlライブラリを入れてなくて失敗
内部向けは自宅サーバーにおいておくか? wikiはアクセス数が減少しているのでどうする? 旧MTのコンテンツを廃止したい。
11/17-12/07 | KAGOYA VSPでCentOS7検証。wiki |
12/07- | Azureにてより自動構築重視の設定。wiki,postgresqlのtools |
0,20,40 | 道路情報 |
0,15,30,45 | 道路情報jpeg |
0,15,30,45 | 株式情報5時に終了して7時に開始 |
毎時10分 | 鉄道情報。4-23まで |
毎時15分 | 空室情報、10-24まで |
毎日13時5分 | スキーエリア情報 |
結論毎時45-00までが一番あいている時間帯。 jpegも20分単位にできないか見直す。
項目 | 計画日 | 実施日 | 備考 |
wiki | 11/16 | 11/16 | |
S3バックアップ | 11/16 | 11/17 | バックアップスクリプト修正 |
toolsアプリのみ | 11/17 | 11/17 | cake2.6で動かしてみる。.htacessではまった |
バッチをローカルDBにて動かす | 11/17 | 11/17 | すんなり動いた。 |
cake2.6プロビジョニング | 11/18 | 11/19 | ちょいと後回しで、無事成功。 |
cronプロビジョニング | 11/18 | 11/18 | ansible化するが、cronファイルを復元するのでもよいかも |
postgresリモート接続にて、tftool移植 | 11/18 | 11/18 | postgresql.conf,hg_hda.conf,iptables,postgresユーザー以外での接続に変更など結構大変だったがphpモジュールは普通に動いた |
postgres移植 | 11/20 | 11/20 | ローカルから接続させる |
postgresバックアップansible化 | 11/20 | 11/20 | ローカルから接続させる |
CentOS7 iptables化 | 11/25 | ほんとはfirewalldにしたいが、共存させたいので! | |
Azureに舞台を移し,postgresアプリAnsible化 | 12/05 | 12/05 | OK |
postgre設定をAnsible化 | 12/07 | 12/07 | ローカル接続はOK! |
IP更新できない理由を突き止める | 12/07 | publicipは取得できている | |
S3バックアップジョブ分離 | 12/16 | 12/18 | credential周りでcron経由だとトラブルあり! |
svn移行 | 12/26 | 12/25 | ほぼ自動で行けた。svnだけ証明書があるので手動となる。 |
tools移行 | 12/25 | 12/25 | MySQLと管理ツールは残して、postgresは完全移行 |
Kagoyaのcron | 12/26 | 12/28 | なぜか動かなかったがいろいろインストールしてたら動くようになった。cronie-noanacronかな? |
cakephp DB完全移行 | 01/09 | 01/09 | DB単位の移行が思いのほか簡単だったので一気に作り込みしてbatchはリモートを見るようにしてみた。 |
cakephp バッチ部分移行 | 01/10 | 01/10 | SNOW,ROOM,TRAIN,ROADでSTOCKのみ残り。起動スクリプトコミット漏れ発覚で注意 |
GRANT ALL ON テーブル名 TO ユーザー名; GRANT ALL ON シーケンス名 TO ユーザー名;
aws s3 lsで設定の確認をすること
/etc/cron.daily/s3_backup.shがさくらだけ上記のエラーがでる。 5分ごとに実行だとでないのに!