WikiIndex:Recipe for server moves: Difference between revisions
MarkDilley (talk | contribs) (→Post move: remove outdated locations) |
Hoof Hearted (talk | contribs) m (Text replacement - "Wiki Backups" to "Wiki database backup") |
||
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
'''WikiIndex: Recipe for server moves''' — this meta page here on {{tag|WikiIndex}} was originally created to document the procedure of the [[WikiIndex:Server move 2014]]. It may also be useful for any future [[:Category:Server|server]] moves for [[WikiIndex]], or indeed any other [[WhatIsWiki|wiki site]]. | '''WikiIndex: Recipe for server moves''' — this meta page here on {{tag|WikiIndex}} was originally created to document the procedure of the [[WikiIndex:Server move 2014]]. It may also be useful for any future [[:Category:Server|server]] moves for [[WikiIndex]], or indeed any other [[WhatIsWiki|wiki site]]. | ||
{{ | {{TOC right}} | ||
==About the move== | ==About the move== | ||
There should be few (if any) visible differences to WikiIndex once the move is complete. It is simply moving from one [[:Category:Web hosting|hosting]] platform to another. Here are some good steps to follow during the move. | There should be few (if any) visible differences to WikiIndex once the move is complete. It is simply moving from one [[:Category:Web hosting|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 [[:Category:Server|server]] before, during, and after the move is to set it the wiki site [[:Category: | Note: The only thing that will be changed on the current [[:Category:Server|server]] before, during, and after the move is to set it the wiki site [[:Category:Read-only|read-only]], and add a [[MediaWiki:Sitenotice]] banner during the move itself. Not mucking with the server preserves a working server that we can fail back to if something unforeseen happens. | ||
# Make a complete [[:Category:Wiki | # Make a complete [[:Category:Wiki database backup|backup]] of the wiki. (as of November 14, 2014 ... gzipped up without the cache the backup is 517Mb). | ||
# Restore the backup at another temporary domain on the new server. | # Restore the backup at another temporary domain on the new server. | ||
# Upgrade [[:Category:MediaWiki|MediaWiki]] to the most recent version (also upgrade the [[MediaWiki extension|extensions]]) on the temporary domain. | # Upgrade [[:Category:MediaWiki|MediaWiki]] to the most recent version (also upgrade the [[MediaWiki extension|extensions]]) on the temporary domain. | ||
Line 15: | Line 15: | ||
===The actual move=== | ===The actual move=== | ||
# Switch the current WikiIndex [[wiki]] site into [[:Category: | # Switch the current WikiIndex [[wiki]] site into [[:Category:Read-only|read-only]] mode; to ensure that the [[:Category:Database|database]] is in a consistent state, and that no [[:Category:WikiIndex account|accounts]] or [[edit]]s are created (and subsequently lost) during the move. | ||
# Add a [[MediaWiki:Sitenotice|site message]] banner to the top of the wiki site on every page that indicates the move is in progress. | # Add a [[MediaWiki:Sitenotice|site message]] banner to the top of the wiki site on every page that indicates the move is in progress. | ||
# Make a new complete dump of the database and [[:Category:Images|images]]. That means a new [[:Category:Wiki | # Make a new complete dump of the database and [[:Category:Images|images]]. That means a new [[:Category:Wiki database backup|backup]] will be created which contains all changes to wiki until that point in time. | ||
# Restore the fresh dump at the temporary domain. | # Restore the fresh dump at the temporary domain. | ||
# Upgrade the database to the most recent schema. | # Upgrade the database to the most recent schema. | ||
Line 33: | Line 33: | ||
===Post move=== | ===Post move=== | ||
# Are automated [[:Category:Wiki | # Are automated [[:Category:Wiki database backup|backups]] working? | ||
[[Category:Admin]] | [[Category:Admin]] |
Latest revision as of 20:23, 7 July 2024
WikiIndex: Recipe for server moves — this meta page here on WikiIndex was originally created to document the procedure of the WikiIndex:Server move 2014. It may also be useful for any future server moves for WikiIndex, or indeed any other wiki site.
About the move[edit]
There should be few (if any) visible differences to WikiIndex 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[edit]
Note: The only thing that will be changed on the current server before, during, and after the move is to set it the wiki site read-only, and add a MediaWiki:Sitenotice banner during the move itself. Not mucking with the server preserves a working server that we can fail back to if something unforeseen happens.
- Make a complete backup of the wiki. (as of November 14, 2014 ... gzipped up without the cache the backup is 517Mb).
- Restore the backup at another temporary domain on the new server.
- Upgrade MediaWiki to the most recent version (also upgrade the extensions) on the temporary domain.
- 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.
The actual move[edit]
- Switch the current WikiIndex wiki 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.
- Add a site message banner to the top of the wiki site on every page that indicates the move is in progress.
- 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.
- Restore the fresh dump at the temporary domain.
- Upgrade the database to the most recent schema.
- Switch DNS to the new new server's IP address.
- As DNS propagates visitors will start to go to the new server.
- For most people DNS will propagate within a couple of hours, and within 24 hours it will have propagated for everyone.
- The new server is not in read-only mode, and does not have the site 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[edit]
- Once DNS has propagated, you will see the wiki site looking and acting like it did before (no longer read-only, no longer having a site banner).
- 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).
Post move[edit]
- Are automated backups working?