Ubuntu 14.04 から Ubuntu 16.04 への Drupal サイト移行メモ
Nid: 757
Drupalサイトの移行メモです。
旧環境 @ linode Ubuntu 14.04, Apache, PHP 5, SSLなし, APC, Memcached, varnish |
新環境 @ ovh Ubuntu 16.04, Nginx, SSL, PHP 7(APCu / OPCache), Redis |
|
---|---|---|
1 | dumpファイル取得
$ for website in `ls -d /var/www/html/*/ | xargs -l basename` ; do cd /var/www/html/$website; sudo sh -c "sudo drush archive-dump --destination=/var/www/html/db_${PWD##*/}.`date +%Y%m%d_%H%M%S`.tar.gz"; done 設定ファイル等 /etc/nginx/sites-available/* /etc/drush/allsites.aliases.drushrc.php /etc/nginx/snippets/* /home/username $ crontab -e |
|
2 | dumpファイル、設定ファイル、homeディレクトリ等をコピー
$ sudo rsync -PaAXv -e ssh pericles@old.octaviadata.com:/var/www/html/db_* /var/www/html $ sudo rsync -aAXv pericles@old.octaviadata.com:/etc/nginx/sites-available/ /etc/nginx/sites-available/ $ sudo rsync -aAXv pericles@old.octaviadata.com:/etc/drush/allsites.aliases.drushrc.php /etc/drush/allsites.aliases.drushrc.php $ sudo rsync -aAXv pericles@old.octaviadata.com:/etc/nginx/snippets/ /etc/nginx/snippets $ rsync -aAXv --exclude={".ssh/*",".cache/*"} old.octaviadata.com:/home/pericles/ /home/pericles/ dumpのリストア $ sudo drush archive-restore /tmp/db_filename.tar.gz --destination=./sitename --db-url=mysql://dp_db_admin:dp_db_password@localhost/databasename --db-su=root --db-su-pw=dbrootpassword モジュールの無効化、有効化 $ cd ./sitename $ sudo drush -y dis apc apc_status varnish memcache memcache_admin $ sudo drush -y en redis entitycache 設定削除: Reverse Proxy, APC, Memcached $ cd sites/all/libraries && sudo git clone https://github.com/nrk/predis.git && sudo chown -R www-data:www-data predis && cd - $ sudo vim sites/default/settings.php /** * Redis */ $conf['redis_client_interface'] = 'Predis'; $conf['lock_inc'] = 'sites/all/modules/redis/redis.lock.inc'; $conf['path_inc'] = 'sites/all/modules/redis/redis.path.inc'; $conf['cache_backends'][] = 'sites/all/modules/redis/redis.autoload.inc'; $conf['cache_default_class'] = 'Redis_Cache';httpsを使用するので、$base_url を設定しないこと。 |
|
3 | Nginxにポート番号80でサイト追加
$ sudo vim /etc/nginx/sites-available/sitename $ cd ../sites-enabled $ sudo ln -s /etc/nginx/sites-available/sitename $ sudo nginx -t && sudo nginx -s reload |
|
4 | DNS A Record IPアドレス変更、アドレス反映確認
$ nslookup sitename.com 8.8.8.8 |
|
5 |
$ sudo mv /var/www/html/sitename /tmp/ |
|
6 | 動作確認、status確認 | |
7 | 接続確認後、証明書取得。同一ドメインは週に20個の制限あり。
$ sudo letsencrypt certonly -a webroot --webroot-path=/var/www/html/example.com -d example.com SSL設定 $ sudo vim /etc/nginx/snippets/ssl-example.com.conf ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; SSL設定、80番から443転送設定。 $ sudo vim /etc/nginx/sites-available/sitename $ sudo nginx -t && sudo nginx -s reload |
|
8 | 動作確認: 楽天広告や忍者AdMaxなどSSL未対応コンテンツは表示されない。 | |
9 | バックアップ
$ cd /var/www/html/sitename $ drush archive-dump |
|
10 | 46GB
$ sudo du -hs /var/log /var/lib/mysql /var/www/html 7G /var/log 19G /var/lib/mysql 20G /var/www/html 使用メモリ 5GB〜8GB $ free -h total used free shared buffers cached Mem: 7.8G 7.2G 635M 92M 172M 1.4G -/+ buffers/cache: 5.6G 2.2G Swap: 511M 114M 397M |
34GB
$ sudo du -hs /var/log /var/lib/mysql /var/www/html 65M /var/log 17G /var/lib/mysql 17G /var/www/html 使用メモリ 1GB程度 $ free -h total used free shared buff/cache available Mem: 11G 1.2G 607M 175M 9.6G 9.7G Swap: 0B 0B 0B |
関連記事
- 1 of 2
- next ›