WordPress移行作業まとめ

やったこと

国内VPSサーバで運用していたWordPressをダウンタイムなしでGoogle Cloud Engineへ移転した。

UNIX哲学に基づき手順を分解し様々なところに投稿してしまったのでここに纏めておく。

関連技術(キーワード)

LEMP, WordPress, GCP(GCE), LetsEncrypt, Ansible

手順

1. LEMP+WordPressを構築するAnsible Playbookを作成

qiita.com

リポジトリ

github.com

2. 移転先のGCEにWordPress環境をAnsibleで構築

taumu.hatenablog.com

3. ファイルとデータベースの移行作業

qiita.com

4. TLS証明書の移行作業

taumu.hatenablog.com

5. DNSの切替

taumu.hatenablog.com

Let's EncryptでHTTPS化したサイトを移転する手順

自分用メモ。ダウンタイムなしで移行したい。

前もって実施する作業

1. httpでサイトを構築

今回はLEMP+WP環境を作ったがWordPressのインストールは不要だったかも

2. データをコピー ( UNIXコマンドのみで行うWordPressサーバ移転 - Qiita  を参照)

移転時に実施する作業

3. 証明書をコピー(/etc/letsencryptを丸ごとコピー)

4. cron再登録

$ sudo crontab -e

00 05 01 * * sudo systemctl stop nginx; sudo letsencrypt renew; sudo systemctl start nginx

letsencryptをUbuntu16.04 + Nginxで使ってみた - Qiita

5. nginxの設定ファイルを書き換える

6. nginx再起動

7. DNS書き換え

うまく行かなかった場合

8. 証明書を削除

9. 証明書を再発行

/etc/letsencryptについて

実際使っているのは/etc/letsencrypt/live以下のみのような気がするがよくわかっていないので全部コピーした

サーバ証明書(公開鍵)

/etc/letsencrypt/live/ドメイン名/cert.pem

中間証明書

/etc/letsencrypt/live/ドメイン名/chain.pem

サーバ証明書と中間証明書が結合されたファイル

/etc/letsencrypt/live/ドメイン名/fullchain.pem

秘密鍵

/etc/letsencrypt/live/ドメイン名/privkey.pem

 

サーバをGCPに移転する際のDNSの設定メモ

自分用メモ。

背景

GCP側の設定

1. Cloud DNSへアクセス

https://console.cloud.google.com/net-services/dns/zones

2. 「ゾーンを作成」をクリック

3.  レコードセットを2つ追加

レジストラの設定

1. ネームサーバ設定変更へアクセス

https://muumuu-domain.com/?mode=conpane&state=dns_list

2. 実際にネームサーバのドメインを指定する

Cloud DNSに書かれたNSレコードを記載

この時末尾のドットは削除すること

f:id:taumu:20181223203804p:plain

参考文献

qiita.com