Table of Contents

Purpose of this exercise

Goal 1 - Get the Operating system of all the environments to Newest -1
Goal 2 - Validate the existing documentation and confirm that the we will be able to bring up the server to the correct state
Goal 3 - Add a dashboard to facilitate dev and ops interactions using ELK
Goal 4 - find out any latent issues for migrating out from NA1 to OVH or any other provider
Goal 5 - induct other DevOps team members to cover Learnexa support more effectively.

Additional Costs involved

For the duration of about 3 weeks 26th Nov - 10th Dec, 2016 there will be 3 additional boxes getting prepped before being taken offline.

Current usage CPU Hours 31248 0.034000 10% 956.19 956.19
RAM Hours 68448 0.021250 10% 1309.07 1309.07
Storage Hours 3199200 0.000300 10% 863.78 863.78

additional cost based on the above costs is USD 1100/-
We will maintain a tight deadline and ensure that the boxes are decommissioned at the earliest possible moment.

Week 1

21st Nov, 2016 - 25th Nov,2016 - Change on 26th Nov, 2016
MySQL Slave OS upgrade from 5.7 to Centos 6.7- MySQL version will remain the same
App server OS upgrade from 5.7 to Centos 6.7 - All the web /app components will remain the same

Steps to do for the App Server
https://wiki.exphosted.com/doku.php/setup_app_server_centos-6.5?s[]=production&s[]=environment

Steps to do for the MySQL Server
https://wiki.exphosted.com/doku.php/na3setup?s[]=mysql&s[]=database&s[]=role

Changes on 26th Nov -

(1) add a new app server to haproxy - LB reload < 2 min
(2) add a new slave server to MySQL - dump with read lock < 5 min

Total downtime of about 30 minutes needed

Week 2

27th Nov, 2016 - 03rd Dec, 2016
MySQL Master OS upgrade from 5.7 to CentOS 6.7
AppServer OS upgrade from 5.7 to CentOS 6.7

Steps to do for the App Server
https://wiki.exphosted.com/doku.php/setup_app_server_centos-6.5?s[]=production&s[]=environment

Steps to do for the MySQL Master Server
https://wiki.exphosted.com/doku.php/na3setup?s[]=mysql&s[]=database&s[]=role

Changes on 03rd Dec, 2016 -

(1) add a new app server to haproxy - LB reload < 2 min
(2) add a new master server to MySQL - move the database of 1 GB from current master to the new master
(3) validate capistrano scripts on the new prdapp01

Downtime on 03rd Dec, 2016 - 4 hours downtime

Week 3

10th Dec, 2016
Haproxy to CentOS 6.7
CollabServer from Ubuntu 10 to 14.04

Changes on 10th Dec, 2016

Change the Natting on NA1 Firewall from existing haproxy to new haproxy < 30 min
Estimating the downtime for Collabserver