Author: jfthomps
Date: Tue Dec 11 15:16:41 2012
New Revision: 1420214

URL: http://svn.apache.org/viewvc?rev=1420214&view=rev
Log:
initial add of 2.2 to 2.3.1 upgrade page

Added:
    
vcl/site/trunk/content/docs/UpgradePreviousVersions/UpgradeFrom2.2to2.3.1.mdtext
      - copied, changed from r1419718, 
vcl/site/trunk/content/docs/UpgradePreviousVersions/UpgradeFrom2.2to2.3.mdtext

Copied: 
vcl/site/trunk/content/docs/UpgradePreviousVersions/UpgradeFrom2.2to2.3.1.mdtext
 (from r1419718, 
vcl/site/trunk/content/docs/UpgradePreviousVersions/UpgradeFrom2.2to2.3.mdtext)
URL: 
http://svn.apache.org/viewvc/vcl/site/trunk/content/docs/UpgradePreviousVersions/UpgradeFrom2.2to2.3.1.mdtext?p2=vcl/site/trunk/content/docs/UpgradePreviousVersions/UpgradeFrom2.2to2.3.1.mdtext&p1=vcl/site/trunk/content/docs/UpgradePreviousVersions/UpgradeFrom2.2to2.3.mdtext&r1=1419718&r2=1420214&rev=1420214&view=diff
==============================================================================
--- 
vcl/site/trunk/content/docs/UpgradePreviousVersions/UpgradeFrom2.2to2.3.mdtext 
(original)
+++ 
vcl/site/trunk/content/docs/UpgradePreviousVersions/UpgradeFrom2.2to2.3.1.mdtext
 Tue Dec 11 15:16:41 2012
@@ -1,4 +1,4 @@
-Title:
+Title: Upgrade From 2.2 to 2.3.1
 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
@@ -16,11 +16,12 @@ Notice:    Licensed to the Apache Softwa
            specific language governing permissions and limitations
            under the License.
 
-This page provides information on how to upgrade from VCL 2.2 to VCL 2.3. 
Please note it only applies for the upgrade from 2.2 to 2.3, this may or may 
not work for other versions.
+This page provides information on how to upgrade from VCL 2.2 to VCL 2.3.1. 
Please note it only applies for the upgrade from 2.2 to 2.3.1, 
+this may or may not work for other versions.
 
 **The basic steps that will be performed**
 
- - Download and Extract 2.3 code
+ - Download and Extract 2.3.1 code
  - Shutdown httpd and vcld services
  - Create backup of vcl database
  - Update mysql schema
@@ -29,173 +30,187 @@ This page provides information on how to
  - Update Management node vcl code, create a backup, copy in new, make changes
  - Restart vcld service
  
-# Detailed steps for upgrade from 2.2 to 2.3 #
+# Detailed steps for upgrade from 2.2 to 2.3.1 #
 
-1. follow instructions on VCL 2.3 Release page to download and verify 
apache-VCL-2.3.tar.bz2 and put in in /root
-2. **extract VCL 2.3 code**
+1. follow instructions on VCL 2.3.1 Release page to download and verify 
apache-VCL-2.3.1.tar.bz2 and put in in /root
+1. **extract VCL 2.3.1 code**
     
         :::BashLexer
-        tar xjf apache-VCL-2.3.tar.bz2
+        tar xjf apache-VCL-2.3.1.tar.bz2
 
-3. **Shutdown** the httpd and vcld services
+1. **Shutdown** the httpd and vcld services
            
         :::BashLexer
         service httpd stop or /etc/init.d/httpd stop
         service vcld stop or /etc/init.d/vcld stop
 
-4. We will **create a backup of the vcl database**. This will provide a 
restore point if necessary.
+1. We will **create a backup of the vcl database**. This will provide a 
restore point if necessary.
 
         :::BashLexer
-        mysqldump vcl > ~/vcl-pre2.3-upgrade.sql
+        mysqldump vcl > ~/vcl-pre2.3.1-upgrade.sql
 
-5. This step **updates the mysql schema**. *Note*: A new resource group is 
added in update-vcl.sql - **all profiles**. Access to manage the group is added 
to the VCL->admin node in the privilege tree if that node exists. If not, you 
will need to add it manually after starting httpd again. To add it manually, 
pick a node in the privilege tree, scroll to Resources, click Add Resource 
Group, select serverprofile/all profiles from the drop-down box, check 
available, administer, manageGroup, and manageMapping, and click Submit New 
Resource Group.
+1. This step **updates the mysql schema**. *Note*: A new resource group is 
added in update-vcl.sql - **all profiles**. 
+Access to manage the group is added to the VCL->admin node in the privilege 
tree if that node exists. If not, you will 
+need to add it manually after starting httpd again. To add it manually, pick a 
node in the privilege tree, scroll to 
+Resources, click Add Resource Group, select serverprofile/all profiles from 
the drop-down box, check available, 
+administer, manageGroup, and manageMapping, and click Submit New Resource 
Group.
 
         :::BashLexer
-        cd /root/apache-VCL-2.3
+        cd /root/apache-VCL-2.3.1
         mysql vcl < mysql/update-vcl.sql
 
-5. If you want to use libvirt provisioning for KVM, you need to add one entry 
to the database that was left out of the release.
+1. Grant CREATE TEMPORARY TABLES to mysql user
+The web code now requires access to create temporary tables in mysql. You need 
to grant the user your web code uses 
+to access mysql the "CREATE TEMPORARY TABLES" permission. Look at the 
secrets.php file in your web code for the user 
+and hostname. For example, if your web code is installed at /var/www/html/vcl, 
your secrets.php file would be 
+/var/www/html/vcl/.ht-inc/secrets.php. Look for $vclhost and $vclusername. The 
secrets.php file might have something like:
 
         :::BashLexer
-        echo "INSERT IGNORE provisioningOSinstalltype (provisioningid, 
OSinstalltypeid) SELECT provisioning.id, OSinstalltype.id FROM provisioning, 
OSinstalltype WHERE provisioning.name = 'libvirt' AND OSinstalltype.name = 
'vmware';" | mysql vcl
-
-6. Grant CREATE TEMPORARY TABLES to mysql user
-The web code now requires access to create temporary tables in mysql. You need 
to grant the user your web code uses to access mysql the "CREATE TEMPORARY 
TABLES" permission. Look at the secrets.php file in your web code for the user 
and hostname. For example, if your web code is installed at /var/www/html/vcl, 
your secrets.php file would be /var/www/html/vcl/.ht-inc/secrets.php. Look for 
$vclhost and $vclusername. The secrets.php file might have something like:
-
-       
-        :::BashLexer
         $vclhost = 'localhost';
         $vcluser = 'vcluser';
 
-7. Then, you need to issue the grant command to mysql. Using the values from 
above as examples, connect to mysql and then issue the grant command:
+1. Then, you need to issue the grant command to mysql. Using the values from 
above as examples, connect to mysql and then issue the grant command:
 
         :::BashLexer
         mysql
         GRANT CREATE TEMPORARY TABLES ON `vcl`.* TO 'vcluser'@'localhost';
         exit
 
-8. **Update the web code**. This step we will move the 2.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 vcl web code at /var/www/html/vcl. If you installed it 
elsewhere, replace /var/www/html/vcl with your vcl web root.
+1. **Update the web code**. This step we will move the 2.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 vcl web code at /var/www/html/vcl. If you installed it 
elsewhere, replace /var/www/html/vcl 
+with your vcl web root.
 
         :::BashLexer
         cd /var/www/html
         mv vcl ~/vcl_2.2_web
 
-9. **Copy the new code** in place
+1. **Copy the new code** in place
        
         :::BashLexer
-        cd /root/apache-VCL-2.3
+        cd /root/apache-VCL-2.3.1
         cp -r web /var/www/html/vcl
 
-10. **Copy your 2.2 config files**
+1. **Copy your 2.2 config files**
        
         :::BashLexer
-        cd ~/vcl_2.2.1_web/.ht-inc
+        cd ~/vcl_2.2_web/.ht-inc
         cp conf.php secrets.php pubkey.pem keys.pem /var/www/html/vcl/.ht-inc
 
-11. **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.
+1. **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.
        
         :::BashLexer
         chown apache /var/www/html/vcl/.ht-inc/maintenance
 
-12. **Make changes to conf.php**:
+1. **Make changes to conf.php**:
 
-    a. A new user group permission that controls who can manage block 
allocations globally or for a specific affiliation has been added. It can be 
granted to any user group under Privileges->Additional User Permissions->Manage 
Block Allocations. Users with this permission are notified of new block 
allocation requests. **Remove the following from conf.php**.
+    a. A new user group permission that controls who can manage block 
allocations globally or for a specific affiliation 
+has been added. It can be granted to any user group under 
Privileges->Additional User Permissions->Manage Block Allocations. 
+Users with this permission are notified of new block allocation requests. 
**Remove the following from conf.php**.
        
             :::BashLexer
             $blockNotifyUsers
 
-
-    b. A new user group permission that controls who can look up users 
globally or for a specific affiliation has been added. It can be granted to any 
user group under Privileges->Additional User Permissions->User Lookup. Users 
with this permission can look up information about other users. **Remove the 
following from conf.php** 
+    b. A new user group permission that controls who can look up users 
globally or for a specific affiliation has been 
+added. It can be granted to any user group under Privileges->Additional User 
Permissions->User Lookup. Users with this 
+permission can look up information about other users. **Remove the following 
from conf.php** 
        
             :::BashLexer
             $userlookupUsers
 
-    c. **Multilingualization** has been added VCL. So, **DEFAULTLOCALE** has 
been added to conf.php to set the default locale. **Add the following to 
conf.php**, changing en_US if needed to match your locale. You can look in 
/var/www/html/vcl/locale to see which ones are available.
-
+    c. **Multilingualization** has been added VCL. So, **DEFAULTLOCALE** has 
been added to conf.php to set the default 
+locale. **Add the following to conf.php**, changing en_US if needed to match 
your locale. You can look in 
+/var/www/html/vcl/locale to see which ones are available.
        
             :::BashLexer
             define("DEFAULTLOCALE", "en_US");
-
  
-    d. Users authenticated using Shibboleth without also having an LDAP server 
can now be added before they log in. **Add the following to conf.php**  If you 
are using Shibboleth and would like to be able to add users to groups before 
the user has ever logged in to VCL, you can set this to 1. However, please note 
that if you typo the userid, there is no way to verify it, and the user will be 
added with the typoed userid.
-
+    d. Users authenticated using Shibboleth without also having an LDAP server 
can now be added before they log in. **Add 
+the following to conf.php**  If you are using Shibboleth and would like to be 
able to add users to groups before the user 
+has ever logged in to VCL, you can set this to 1. However, please note that if 
you typo the userid, there is no way to 
+verify it, and the user will be added with the typoed userid.
        
             :::BashLexer
             define("ALLOWADDSHIBUSERS", 0);
 
-
-    e. LDAP related items have been simplified in the code using additional 
options in $authMechs. For any LDAP entries, add two options. 
"lookupuserbeforeauth" is used if you need VCL to look up the full DN of a user 
and use that when doing the bind that authenticates the user (if you don't know 
what this means, leave it set to 0). If you need to set it to 1, then you will 
need to set "lookupuserfield" to what LDAP attribute to use when looking up the 
user's DN (typically either 'cn', 'uid', or 'samaccountname'). In conf.php, 
**Add the following to each LDAP** array you have in the $authMech array.
+    e. LDAP related items have been simplified in the code using additional 
options in $authMechs. For any LDAP entries, 
+add two options. "lookupuserbeforeauth" is used if you need VCL to look up the 
full DN of a user and use that when doing 
+the bind that authenticates the user (if you don't know what this means, leave 
it set to 0). If you need to set it to 1, 
+then you will need to set "lookupuserfield" to what LDAP attribute to use when 
looking up the user's DN 
+(typically either 'cn', 'uid', or 'samaccountname'). In conf.php, **Add the 
following to each LDAP** array you have in the $authMech array.
        
             :::BashLexer
             "lookupuserbeforeauth" => 0,
             "lookupuserfield" => '',
-
  
     f. The way the authentication functions toward the bottom of conf.php are 
initialized has been simplified. Make the following changes:
-       
 
-            :::BashLexer
-            REMOVE
-            $affilValFunc
-            $affilValFuncArgs 
-            $addUserFunc
-            $addUserFuncArgs
-            $updateUserFunc
-            $updateUserFuncArgs
- 
+        * REMOVE
+
+                :::PhpLexer
+                $affilValFunc
+                $affilValFuncArgs 
+                $addUserFunc
+                $addUserFuncArgs
+                $updateUserFunc
+                $updateUserFuncArgs
                    
-            ADD
-            $affilValFunc = array();
-            $affilValFuncArgs = array();
-            $addUserFunc = array();
-            $addUserFuncArgs = array();
-            $updateUserFunc = array();
-            $updateUserFuncArgs = array();
-            foreach($authMechs as $key => $item) {
-                 if($item['type'] == 'ldap') {
-                    $affilValFunc[$item['affiliationid']] = 'validateLDAPUser';
-                    $affilValFuncArgs[$item['affiliationid']] = $key;
-                    $addUserFunc[$item['affiliationid']] = 'addLDAPUser';
-                    $addUserFuncArgs[$item['affiliationid']] = $key;
-                    $updateUserFunc[$item['affiliationid']] = 'updateLDAPUser';
-                    $updateUserFuncArgs[$item['affiliationid']] = $key;
-                }
-                elseif($item['type'] == 'local') {
-                    $affilValFunc[$item['affiliationid']] = 
create_function('', 'return 0;');
-                    $addUserFunc[$item['affiliationid']] = create_function('', 
'return NULL;');
-                    $updateUserFunc[$item['affiliationid']] = 
create_function('', 'return NULL;');
+        * ADD
+
+                :::PhpLexer
+                $affilValFunc = array();
+                $affilValFuncArgs = array();
+                $addUserFunc = array();
+                $addUserFuncArgs = array();
+                $updateUserFunc = array();
+                $updateUserFuncArgs = array();
+                foreach($authMechs as $key => $item) {
+                     if($item['type'] == 'ldap') {
+                        $affilValFunc[$item['affiliationid']] = 
'validateLDAPUser';
+                        $affilValFuncArgs[$item['affiliationid']] = $key;
+                        $addUserFunc[$item['affiliationid']] = 'addLDAPUser';
+                        $addUserFuncArgs[$item['affiliationid']] = $key;
+                        $updateUserFunc[$item['affiliationid']] = 
'updateLDAPUser';
+                        $updateUserFuncArgs[$item['affiliationid']] = $key;
+                    }
+                    elseif($item['type'] == 'local') {
+                        $affilValFunc[$item['affiliationid']] = 
create_function('', 'return 0;');
+                        $addUserFunc[$item['affiliationid']] = 
create_function('', 'return NULL;');
+                        $updateUserFunc[$item['affiliationid']] = 
create_function('', 'return NULL;');
+                    }
                 }
-            }
  
 
-13. **Restart httpd service**
+1. **Restart httpd service**
 
             :::BashLexer
             service httpd start or /etc/init.d/httpd start
 
-14. **Update management node code** This step will make a backup copy of the 
2.2 vcl code base and then copy the new code over the existing code to preserve 
any drivers or other files you've added.
+1. **Update management node code** This step will make a backup copy of the 
2.2 vcl code base and then copy the new code 
+over the existing code to preserve any drivers or other files you've added.
        
             :::BashLexer
             cd <your vcl MN code root path>
             ie. cd /usr/local/
             cp -r vcl ~/vcl_2.2_managementnode
 
-15. **Copy in the 2.3 code base to /usr/local**, copying in should preserve 
any drivers or other files you've added.
+1. **Copy in the 2.3.1 code base to /usr/local**, copying in should preserve 
any drivers or other files you've added.
        
             :::BashLexer
-            /bin/cp -r /root/apache-VCL-2.3/managementnode/* /usr/local/vcl
+            /bin/cp -r /root/apache-VCL-2.3.1/managementnode/* /usr/local/vcl
 
-16. **Run install_perl_libs.pl** to add any new perl library requirements:
+1. **Run install_perl_libs.pl** to add any new perl library requirements:
        
             :::BashLexer
             /usr/local/vcl/bin/install_perl_libs.pl
 
-17. **Restart vcld service**
+1. **Restart vcld service**
        
             :::BashLexer
             service vcld start or /etc/init.d/vcld start
 
-18. Make some test reservations and watch the vcld.log to verify everything is 
working correctly.
+1. Make some test reservations and watch the vcld.log to verify everything is 
working correctly.
 
             :::BashLexer
             tail -f /var/log/vcld.log
\ No newline at end of file


Reply via email to