Author: jfthomps
Date: Mon Jul 17 19:43:23 2017
New Revision: 1802200
URL: http://svn.apache.org/viewvc?rev=1802200&view=rev
Log:
initial set of updates for 2.5
Modified:
vcl/site/trunk/content/docs/UpgradePreviousVersions/UpgradeFrom2.4.2to2.5.mdtext
Modified:
vcl/site/trunk/content/docs/UpgradePreviousVersions/UpgradeFrom2.4.2to2.5.mdtext
URL:
http://svn.apache.org/viewvc/vcl/site/trunk/content/docs/UpgradePreviousVersions/UpgradeFrom2.4.2to2.5.mdtext?rev=1802200&r1=1802199&r2=1802200&view=diff
==============================================================================
---
vcl/site/trunk/content/docs/UpgradePreviousVersions/UpgradeFrom2.4.2to2.5.mdtext
(original)
+++
vcl/site/trunk/content/docs/UpgradePreviousVersions/UpgradeFrom2.4.2to2.5.mdtext
Mon Jul 17 19:43:23 2017
@@ -1,4 +1,4 @@
-Title: Upgrade From 2.3.2 to 2.4.2
+Title: Upgrade From 2.4.2 to 2.5
Notice: Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
@@ -18,20 +18,20 @@ Notice: Licensed to the Apache Softwa
# Scripted Upgrade
-VCL 2.4.2 is the first release to include an upgrade script. All you need to
+VCL 2.5 is the second release to include an upgrade script. All you need to
upgrade VCL is the script. It will download and validate the VCL software and
then upgrade your system. The script can be used to upgrade all three parts of
VCL (database, web portal, and management node) or to upgrade each part
individually. It works for upgrading from any previous version of Apache VCL.
-[Download Upgrade Script
(vcl-upgrade.sh)](https://www.apache.org/dist/vcl/2.4.2/vcl-upgrade.sh)
+[Download Upgrade Script
(vcl-upgrade.sh)](https://www.apache.org/dist/vcl/2.5/vcl-upgrade.sh)
:::BashLexer
- wget https://www.apache.org/dist/vcl/2.4.2/vcl-upgrade.sh.sha1
+ wget https://www.apache.org/dist/vcl/2.5/vcl-upgrade.sh.sha1
sha1sum -c vcl-upgrade.sh.sha1
wget https://www.apache.org/dist/vcl/KEYS
gpg --import KEYS
- wget https://www.apache.org/dist/vcl/2.4.2/vcl-upgrade.sh.asc
+ wget https://www.apache.org/dist/vcl/2.5/vcl-upgrade.sh.asc
gpg --verify vcl-upgrade.sh.asc
Running the upgrade script with no arguments will step you through upgrading
@@ -65,29 +65,29 @@ for the code to run.
# Manual Upgrade Instructions
-These instructions explain how to upgrade from VCL 2.3.2 to VCL 2.4.2. Please
note
-it only applies for the upgrade from 2.3.2 to 2.4.2, this may or may not work
for other
+These instructions explain how to upgrade from VCL 2.4.2 to VCL 2.5. Please
note
+it only applies for the upgrade from 2.4.2 to 2.5, this may or may not work
for other
versions.
**The basic steps that will be performed**
- - Download and Extract 2.4.2 code
+ - Download and Extract 2.5 code
- Shutdown httpd and vcld services
- Create backup of vcl database
- Update mysql schema
- Update web code, create a backup, copy in new, make changes
- Restart httpd service
- - Update management node vcl code, create a backup, copy in new, make
changes
+ - Update management node VCL code, create a backup, copy in new, make
changes
- Restart vcld service
### Upgrade steps
1. follow instructions on the [VCL
download](http://vcl.apache.org/downloads/download.cgi)
-page to download and verify apache-VCL-2.4.2.tar.bz2 and put in in /root
-2. **extract VCL 2.4.2 code**
+page to download and verify apache-VCL-2.5.tar.bz2 and put in in /root
+2. **extract VCL 2.5 code**
:::BashLexer
- tar xf apache-VCL-2.4.2.tar.bz2
+ tar xf apache-VCL-2.5.tar.bz2
3. **Shutdown** the httpd and vcld services
@@ -99,42 +99,47 @@ page to download and verify apache-VCL-2
necessary.
:::BashLexer
- mysqldump vcl > ~/vcl-pre2.4.2-upgrade.sql
+ mysqldump vcl > ~/vcl-pre2.5-upgrade.sql
5. This step **updates the database** schema.
:::BashLexer
- mysql vcl < /root/apache-VCL-2.4.2/mysql/update-vcl.sql
+ mysql vcl < /root/apache-VCL-2.5/mysql/update-vcl.sql
-6. **Update the web code**. This step we will move the 2.3.2 web directory out
of the
-way, so we can copy in the new web code base. After copying in the new code,
we will
-migrate your configuration changes. These instructions assume that you
installed the
+6. **Move old web code**. If /var/www/html/vcl is a directory, rename it to
+/var/www/html/vcl-2.4.2. These instructions assume that you installed the
VCL web code at /var/www/html/vcl. If you installed it elsewhere, replace
/var/www/html/vcl with your vcl web root.
:::BashLexer
- mv /var/www/html/vcl /var/www/html/vcl-2.3.2
+ mv /var/www/html/vcl /var/www/html/vcl-2.4.2
7. **Disable access** to the old web code
:::BashLexer
- echo "Deny from all" > /var/www/html/vcl-2.3.2/.htaccess
+ echo "Require all denied" > /var/www/html/vcl-2.4.2/.htaccess
7. **Copy the new code** in place
:::BashLexer
- cp -r /root/apache-VCL-2.4.2/web /var/www/html/vcl-2.4.2
- ln -s /var/www/html/vcl-2.4.2 /var/www/html/vcl
+ cp -ar /root/apache-VCL-2.5/web /var/www/html/vcl-2.5
+ ln -sfn /var/www/html/vcl-2.5 /var/www/html/vcl
-8. **Copy your 2.3.2 config files**
+8. **Copy your 2.4.2 config files**
:::BashLexer
- cd /var/www/html/vcl-2.3.2/.ht-inc
+ cd /var/www/html/vcl-2.4.2/.ht-inc
cp conf.php secrets.php pubkey.pem keys.pem /var/www/html/vcl/.ht-inc
-9. **Add new items to conf.php**. The following items need to be added to the
conf.php
-file (they can be added anywhere as long as it is not inside an
-array() definition):
+8. **Set SELinux context** If you are using SELinux, set the correct context:
+
+ :::BashLexer
+ chcon -R -t httpd_sys_content_t /var/www/html/vcl-2.5
+ chcon -t httpd_sys_rw_content_t
/var/www/html/vcl-2.5/.ht-inc/maintenance
+ chcon -t httpd_sys_rw_content_t /var/www/html/vcl-2.5/.ht-inc/cryptkey
+
+9. **Add new items to conf.php**. The following item needs to be removed from
the conf.php
+file:
:::BashLexer
(don't forget to edit conf.php in the **new** location)
@@ -142,59 +147,62 @@ array() definition):
<br>
:::PhpLexer
- define("SEMTIMEOUT", "45");
-
- define("MAXINITIALIMAGINGTIME", 720); // for imaging reservations,
users will have at least this long as the max selectable duration
+ define("MAXVMLIMIT", "100");
- define("MAXSUBIMAGES", 5000); // maximum allowed number for subimages
in a config
+9. **Set new value for $cryptkey in secrets.php** $cryptkey in secrets.php
needs to be generated
+using openssl. Generate the value and set it in secrets.php:
- # boolean value of 0 or 1 to enable documentation links on login page
and page
- # where authentication method is selected
- # 0 = disables; 1 = enabled
- define("NOAUTH_HOMENAV", 0);
-
- # boolean value of 0 or 1 to control logging of non SELECT database
queries for auditing or debugging purposes; queries are logged to the querylog
table
- define("QUERYLOGGING", 1);
-
- # boolean value of 0 or 1 to control logging of XMLRPC calls for
auditing or debugging purposes; queries are logged to the xmlrpcLog table
- define("XMLRPCLOGGING", 1);
-
- # documentation links to display on login page and page
- # where authentication method is selected when NOAUTH_HOMENAV is set
to 1
- $NOAUTH_HOMENAV = array (
- "What is VCL" => "http://vcl.apache.org/",
- "How to use VCL" =>
"https://cwiki.apache.org/confluence/display/VCL/Using+VCL",
- "Report a Problem" => "mailto:" . HELPEMAIL,
- );
+ :::BashLexer
+ openssl rand 32 | base64
+ <br>
+ vim /var/www/html/vcl/.ht-inc/secrets.php
+ $cryptkey = 'xxxxxxxxxxxxxxxxxxxxxxxxx';
-9. **Make the maintenance directory writable** by the web server user.
Normally this is
-the apache user, if using a different user change below cmd accordingly.
+9. **Make the maintenance and cryptkey directories writable** by the web
server user. Normally this is
+the apache user, if using a different user change below command accordingly.
:::BashLexer
chown apache /var/www/html/vcl/.ht-inc/maintenance
+ chown apache /var/www/html/vcl/.ht-inc/cryptkey
-11. **Start httpd service**
+10. **Start httpd service**
:::BashLexer
service httpd start
-12. **Backup management node code**. This step will make a backup copy of the
2.3.2
+11. **Check testsetup.php** Check that everything is correct by viewing the
testsetup.php
+script in your browser. This script is located in the same directory as the
index.php script.
+I.e.
+
+ :::BashLexer
+ https://your.site.url/vcl/testsetup.php
+
+12. **Backup management node code**. This step will make a backup copy of the
2.4.2
management node code. These instructions assume that you installed the
VCL management node code at /usr/local/vcl. If you installed it elsewhere,
replace
/usr/local with your management node path.
:::BashLexer
- cp -r /usr/local/vcl /usr/local/vcl-2.3.2
+ cp -r /usr/local/vcl /usr/local/vcl-2.4.2
-13. **Copy in the 2.4.2 management node code** to /usr/local. First, rename
the existing
-management node code directory to vcl-2.4.2 so that any drivers or other files
you've
-added are preserved. Then, create a symlink for /usr/local/vcl and copy the
new
-management code over top of it.
-
- :::BashLexer
- mv /usr/local/vcl /usr/local/vcl-2.4.2
- ln -s /usr/local/vcl-2.4.2 /usr/local/vcl
- /bin/cp -r /root/apache-VCL-2.4.2/managementnode/* /usr/local/vcl
+13. **Copy old management node code** If /usr/local/vcl is a directory, copy
it to
+/usr/local/vcl-2.4.2, rename /usr/local/vcl to /usr/local/vcl-2.5, and create
a symlink.
+If /usr/local/vcl is a symlink to vcl-2.4.2, copy /usr/local/vcl-2.4.2 to
/usr/local/vcl-2.5
+and update the symlink.
+
+ :::BashLexer
+ (for directory)
+ cp -ar /usr/local/vcl /usr/local/vcl-2.4.2
+ mv /usr/local/vcl /usr/local/vcl-2.5
+ ln -s /usr/local/vcl-2.5 /usr/local/vcl
+ <br>
+ (for symlink)
+ cp -ar /usr/local/vcl-2.4.2 /usr/local/vcl-2.5
+ ln -sfn /usr/local/vcl-2.5 /usr/local/vcl
+
+13. **Copy new code in place** Copy the new management node code over the old
code:
+
+ /bin/cp -r /root/apache-VCL-2.5/managementnode/* /usr/local/vcl-2.5
14. **Run install_perl_libs.pl** to add any new perl library requirements: