Part II - Project Upgrade

7 – Evolution

Introduction

In the life of a computing system, the administrator and stakeholders can choose not to change the existing system, or move forward to the latest upgrades.  On January 13, 2016 after more than two months of research and testing, the administrators chose to move Pressbooks from CentOs 7 to a Ubuntu OS 15.10 with approximately 60 seconds of interruption in services.  Upgrading included WordPress 4.4.1, WordPress plugins, Pressbooks, Pressbooks Textbook, PHP, and MYSQL applications.

Plugins

Table 7.1 WordPress Pressbooks Enabled Network Plugins

Plugin Description
Enable Media Replace Enable replacing media files by uploading a new file in the “Edit Media” section of the WordPress Media Library.
Version 3.0.4 | By Måns Jonasson
jQuery Smooth Scroll The plugin not only add smooth scroll to top feature/link in the lower-right corner of long pages while scrolling but also makes all jump links to scroll smoothly.
Version 1.4.0 | By BlogSynthesis
Pressbooks Simple Book Production
Version 3.5.2 | By BookOven Inc.
Pressbooks mPDF Open source PDF generation for Pressbooks via the mPDF library.
Version 1.0.1 | By Brad Payne
Pressbooks Textbook A plugin that extends Pressbooks for textbook authoring
Version 2.2.2 | By Brad Payne
Simple Comment Editing Simple comment editing for your users.
Version 1.9.1 | By Ronald Huereca
SVG Support Allow SVG file uploads using the WordPress Media Library uploader plus direct styling of SVG elements using CSS.
Version 2.2.2 | By Benbodhi
Thin Out Revisions A plugin for better revision management. Enables flexible management for you.
Version 1.8.3 | By Hirokazu Matsui
UpdraftPlus – Backup/Restore Backup and restore: take backups locally, or backup to Amazon S3, Dropbox, Google Drive, Rackspace, (S)FTP, WebDAV & email, on automatic schedules.
Version 2.11.29.22 | By UpdraftPlus.com, David Anderson
Wordfence Security Wordfence Security – Anti-virus, Firewall and High Speed Cache
Version 6.0.24 | By Wordfence
WP First Letter Avatar Set custom avatars for users with no Gravatar. The avatar will be the first (or any other) letter of the user’s name on a colorful background.
Version 2.2.3 | By Dev49.net
WP Slimstat Analytics The leading web analytics plugin for WordPress
Version 4.3 | By Camu
WP SlimStat – Default Filters Determine what filters should be loaded by default when your reports are initialized.
Version 1.4 | By Slimstat
WP SlimStat – Email Reports Override your sites’ settings with a global configuration
Version 2.2 | By WP Slimstat
WP SlimStat – Export to Excel Export your reports as a CSV file.
Version 2.5.2 | By WP Slimstat
WP SlimStat – Firewall Fix Fix the collection of IP addresses when the webserver is behind a proxy, firewall or load balancer.
Version 1.6.1 | By WP Slimstat
WP SlimStat – Network Settings Override your sites’ settings with a global configuration
Version 1.2.1 | By Camu
WP SlimStat – Network Analysis Access a network view of your reports.
Version 1.4 | By Camu
WP SlimStat – Track Cookies Collect all the cookies associated with the domain sent by the browser.
Version 1.5 | By WP Slimstat

The new WordPress plugins were: Plugin Activation Status, Pressbooks mPDF, Simple Comment Editing, and WP First Letter Avatar. The Responsive Scrolling Tables and Plugin Activation Status plugins were uninstalled, as both were redundant with latest WordPress and Pressbook upgrade. The Simple Comment Editing plugin was added to enhance the commenting option. The epub-fhd.athabascau.ca site is primarily for authoring and distribution of mobile file formats, with support from web page versions. Hence, commenting supports the content, rather than an extension to further discussions appropriate to blogs or forum based systems. Comment spam can become a concern that can be partially mitigated with an anti-spam plugin that is compatible with the native WordPress commenting system. In general, more plugins increase the potential security risk, hence less is better for the overall health of the e-publishing system. The value of each plugin has to be “weighed” in comparison to its value for the end-users. Another factor, is the WordPress core that continues to improve and may include functionality that previously existed as a plugin. Care in selection of appropriate plugins to the Pressbook site is a challenge in a constantly changing digital environment. In example, an aggregate multisite RSS feed plugin may be useful in pushing the latest page changes to end-users from the main site.  However, WordPress already has built-in RSS feed functionality for each sub-site.

Pressbooks has dropped mPDF from its core plugin.  Fortunately, BC Campus programmer Brad Payne[1] has created a Pressbooks mPDF plugin to restore open source mPDF generation[2].  Currently the Pressbooks symbionts folder includes a prince folder that suggest Pressbooks will continue to include commercialware support for PDF generation in its core plugin.

Same Domain Different Server

The workflow to achieve minimal interruption in services between the old production server on CentOS and the new server on Ubuntu was achieved through the following process based on key preparations.

Preparations

  • Old WordPress multisite updated to latest version.
  • Database checked for data integrity
  • Files scanned for malware and data integrity
  • Configured two domains – production and development
  • Virtualization application – Linux KVM [3]

Workflow

  1. Development Domain – Create a fresh install of the latest WordPress on new server.
    1. Setup the WordPress multisite configuration.
    2. Copy the Database from production domain server to new server.
    3. Copy the wp-content folder from production domain server to new server.
    4. Modify htaccess and wp-config files to conform to development domain URL.
    5. Change all URL’s from epub-fhd to dev-fhd via PHP script[4] – Search Replace DB version 3.1.0
    6. Check that site is working correctly and upgrade WordPress plugins.
    7. Check that site is working correctly.
    8. Switch domain name from development to production via local host file.
    9. Return to step 4 and repeat
    10. Return to step 5 and do the opposite operation – change all URL’s from dev-fhd to epub-fhd.
  2. Production Domain
    1. Switch IP from old server to new server.
    2. Check that site is working correctly.

The resulting upgraded production server ran the latest WordPress multisite Pressbooks, on an Apache server in a Ubuntu OS.  The entire system had been virtualized on CentOS 7.  Figure 7.1 is an overview of the layers to achieve the Athabasca University open source e-textbook website.

Athabasca University site

Figure 7.1 Pressbooks e-Publishing Application Ecosystem

Virtualization

The advantages of virtualizing a server are:

  • Copy to backup routine is efficient
  • Virtualized package is portable
  • Isolation from hardware
  • Open source
  • Easy porting to other computer systems

Some disadvantages of a virtualized platform are:

  • Requires faster CPU and memory
  • Specific virtual format file
  • Dependent on host operating system.
  • Dependent on virtual application

Leave a Reply

Your email address will not be published. Required fields are marked *

Top