WikiIndex:Recipe for server moves: Difference between revisions

From WikiIndex
Jump to navigation Jump to search
(Moved from WikiIndex:ServerMove)
 
(Turn it into an article about how to do server moves)
Line 1: Line 1:
== About the Move ==
== About the Move ==


There should be few (if any) visible differences for WikiIndex.org once the move is complete.  It is simply moving from one hosting platform to another.  Here are the steps I, [[User:BrandonCsSanders|BrandonCsSanders]] ([[User talk:BrandonCsSanders|talk]], plan to follow during the move.
There should be few (if any) visible differences once the move is complete.  It is simply moving from one hosting platform to another.  Here are some good steps to follow during the move.


=== Prior to the move ===
=== Prior to the move ===
Note: The only thing that will be changed on the current server before, during, and after the move is to set it to read-only and add a banner during the move itself.  Not mucking with the server preserves a working server that we can fail back to if something unforeseen happens.
Note: The only thing that will be changed on the current server before, during, and after the move is to set it to read-only and add a banner during the move itself.  Not mucking with the server preserves a working server that we can fail back to if something unforeseen happens.


# A complete backup of the wiki will be made (done as of November 14, 2014 ... gzipped up without the cache the backup is 517Mb)
# Make a complete backup of the wiki. (as of November 14, 2014 ... gzipped up without the cache the backup is 517Mb)
# The backup of WikiIndex will be restored at another temporary domain.
# Restore the backup at another temporary domain on the new server.
# MediaWiki will be upgraded to the most recent version (as will the extensions) on the temporary domain.
# Upgrade MediaWiki to the most recent version (also upgrade the extensions) on the temporary domain.
# Once I've fixed and tested everything I can think of I'll invite the WikiIndex regulars to come poke around on the temporary domain to make sure everything looks right and is working.
# Once everything is fixed and tested by the person doing the move, invite the regular contributors to come poke around on the temporary domain to make sure everything looks right and is working.
#* Use /etc/hosts to pretend like the the move is already complete and the domain points to the new server so we can test the virtual host configuration as well.
# Once given the thumbs up from the community the actual move will begin.
# Once given the thumbs up from the community the actual move will begin.


=== The actual move ===
=== The actual move ===
# WikiIndex.org will be switched into read-only mode to ensure that the database is in a consistent state and that no accounts or edits are created (and subsequently lost) during the move.
# Switch the current site into read-only mode to ensure that the database is in a consistent state and that no accounts or edits are created (and subsequently lost) during the move.
# A site message banner will be added to the top of the site on every page that indicates the move is in progress.
# Add a site message banner to the top of the site on every page that indicates the move is in progress.
# A new complete dump of the database and images will be made. That means a new backup will be created which contains all changes to wiki until that point in time.
# Make a new complete dump of the database and images. That means a new backup will be created which contains all changes to wiki until that point in time.
# That dump will be restored at the temporary domain.
# Restore the fresh dump at the temporary domain.
# The database will be upgraded to the most recent schema.
# Upgrade the database to the most recent schema.
# The DNS for wikiindex.org will be pointed to the new server's IP address.
# Switch DNS to the new new server's IP address.
# As the DNS propagates visitors will start to go to the new server.
# As DNS propagates visitors will start to go to the new server.
# For most people the DNS will propagate within a couple of hours and within 24hrs it will have propagated for everyone.
# For most people DNS will propagate within a couple of hours and within 24hrs it will have propagated for everyone.
# The new server is not in read-only mode and does not have the banner on it telling about the move.
# The new server is not in read-only mode and does not have the banner on it telling about the move.


I expect the move to take 1-2 hours, with the site in read-only mode and displaying the banner for most visitors for 2-3 hours.
A move with a significant database upgrade will take around 1 hour, with the site in read-only mode and displaying the banner for most visitors for 2-3 hours. Getting a good result is prioritized over keep the read-only period short.
 
:I think a period of 24 hours is perfectly acceptable. Priority should lay on optimal result, not on shortest time of move. [[User:Manorainjan|Manorainjan]] ([[User talk:Manorainjan|talk]])


=== Burn-in ===
=== Burn-in ===
# Once DNS has propagated for you you will see WikiIndex.org looking and acting like it did before (no longer read-only, no longer having a banner).
# Once DNS has propagated you will see the site looking and acting like it did before (no longer read-only, no longer having a banner).
# Use it just like you normally would and report any issues to me, [[User:BrandonCsSanders|BrandonCsSanders]] ([[User talk:BrandonCsSanders|talk]].
# Use it just like you normally would and report any issues to the person moving the site on their talk page.
# Once we feel good that all is as it should be the original server will be decommissioned.  Until that time it is available as a failsafe backup server that we can revert to (unlikely that we'll need to do that).
# Once we feel good that all is as it should be the original server will be decommissioned.  Until that time it is available as a failsafe backup server that we can revert to (unlikely that we'll need to do that).


=== Post move ===
=== Post move ===
# If the community wants to switch canonical domains from wikiindex.org to index.wiki that can be arranged.
# Are automated backups working?
# On the new platform backups of all wikis are made every hour and the last 12 hours of backups are retained on the server itself.  Every 24hrs a backup of the wiki is uploaded to s3 (an offsite backup) and these backups are slowly pruned over time in a manner similar to how Apple's Time Machine works.
# Have you updated the http://www.aboutus.org article? How about the Wiki.Wiki entry (if it is hosted there)?
# Who will do an update on http://www.aboutus.org/WikiIndex.org? Or create the entry about <s>[[create.wiki]]</s>? (Update: redirect to [[Wiki.Wiki]])

Revision as of 19:24, 13 March 2015

About the Move

There should be few (if any) visible differences once the move is complete. It is simply moving from one hosting platform to another. Here are some good steps to follow during the move.

Prior to the move

Note: The only thing that will be changed on the current server before, during, and after the move is to set it to read-only and add a banner during the move itself. Not mucking with the server preserves a working server that we can fail back to if something unforeseen happens.

  1. Make a complete backup of the wiki. (as of November 14, 2014 ... gzipped up without the cache the backup is 517Mb)
  2. Restore the backup at another temporary domain on the new server.
  3. Upgrade MediaWiki to the most recent version (also upgrade the extensions) on the temporary domain.
  4. Once everything is fixed and tested by the person doing the move, invite the regular contributors to come poke around on the temporary domain to make sure everything looks right and is working.
    • Use /etc/hosts to pretend like the the move is already complete and the domain points to the new server so we can test the virtual host configuration as well.
  5. Once given the thumbs up from the community the actual move will begin.

The actual move

  1. Switch the current site into read-only mode to ensure that the database is in a consistent state and that no accounts or edits are created (and subsequently lost) during the move.
  2. Add a site message banner to the top of the site on every page that indicates the move is in progress.
  3. Make a new complete dump of the database and images. That means a new backup will be created which contains all changes to wiki until that point in time.
  4. Restore the fresh dump at the temporary domain.
  5. Upgrade the database to the most recent schema.
  6. Switch DNS to the new new server's IP address.
  7. As DNS propagates visitors will start to go to the new server.
  8. For most people DNS will propagate within a couple of hours and within 24hrs it will have propagated for everyone.
  9. The new server is not in read-only mode and does not have the banner on it telling about the move.

A move with a significant database upgrade will take around 1 hour, with the site in read-only mode and displaying the banner for most visitors for 2-3 hours. Getting a good result is prioritized over keep the read-only period short.

Burn-in

  1. Once DNS has propagated you will see the site looking and acting like it did before (no longer read-only, no longer having a banner).
  2. Use it just like you normally would and report any issues to the person moving the site on their talk page.
  3. Once we feel good that all is as it should be the original server will be decommissioned. Until that time it is available as a failsafe backup server that we can revert to (unlikely that we'll need to do that).

Post move

  1. Are automated backups working?
  2. Have you updated the http://www.aboutus.org article? How about the Wiki.Wiki entry (if it is hosted there)?