title: VCL 2.3 Web Code Installation

{excerpt:hidden=true} How to install and configure the frontend VCL web code. It also describes how to add local accounts to the VCL database, configure LDAP authentication, and set the timezone correctly.{excerpt}

Install & Configure the Web Components

Prerequisites

The following instructions assume these tasks have previously been completed:

Web Server:

  • Apache HTTP Server v1.3 or v2.x with SSL enabled
  • PHP 5.0 or later

{info}The VCL web frontend may run under other web server platforms capable of running PHP code, but has only been tested to work with Apache HTTP Server.{info}

Required Linux Packages:

  • httpd - Apache HTTP Server
  • mod_ssl - SSL/TLS module for the Apache HTTP server
  • php - The PHP HTML-embedded scripting language
  • libmcrypt - Encryption algorithms library (this requirement can be removed with a patch )

Required PHP Modules:

  • php-gd
  • php-json (required if your PHP version is 5.2 or later)
  • php-mysql
  • php-openssl
  • php-sysvsem
  • php-xml
  • php-xmlrpc
  • php-ldap (if you will be using LDAP authentication)
  • php-process (for RHEL/CentOS 6)
  1. If your web server is running a Red Hat-based OS, the required

components can be installed with:

For RHEL / CentOS 5 {tip} yum install httpd mod_ssl php php-gd php-mysql php-xml php-xmlrpc php-ldap -y {tip} For RHEL / CentOS 6 {tip} yum install httpd mod_ssl php php-gd php-mysql php-xml php-xmlrpc php-ldap php-process -y {tip} {info} You may need the optional server rpm repository for the php-process package to add this run the following command: rhn-channel --add --channel=rhel-x86_64-server-optional-6 {info}

  1. Configure the web server daemon (httpd) to start automatically:

{tip} /sbin/chkconfig --level 345 httpd on {tip}

  1. Start the web server daemon:

{tip} /sbin/service httpd start {tip}

  1. If SELinux is enabled, run the following command to allow the web server

to connect to the database: {tip} /usr/sbin/setsebool -P httpd_can_network_connect=1 {tip}

  1. If the iptables firewall is being used, port 80 and 443 should be opened

up: {tip}vi /etc/sysconfig/iptables{tip}

-A RH-Firewall-1-INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -p tcp --dport 443 -j ACCEPT

{tip} service iptables restart {tip}

  1. h2. Install the VCL Frontend Web Code
  2. If you have not already done so, download and extract the source files

on the web server: {tip} wget --trust-server-names ‘{nolink:http://vcl.apache.org/downloads/download.cgi?action=download&filename=%2Fvcl%2Fapache-VCL-2.3.tar.bz2}’ tar -jxvf apache-VCL-2.3.tar.bz2 {tip}

  1. Copy the web directory to a location under the web root of your web

server and navigate to the destination .ht-inc subdirectory: {tip} cp -r apache-VCL-2.3/web/ /var/www/html/vcl cd /var/www/html/vcl/.ht-inc {tip}

  1. Copy secrets-default.php to secrets.php:

{tip} cp secrets-default.php secrets.php {tip}

  1. Edit the secrets.php file:

{tip} vi secrets.php {tip}

  1. #* Set the following variables to match your database configuration:
  2. #** $vclhost
  3. #** $vcldb
  4. #** $vclusername
  5. #** $vclpassword
  6. #* Create random passwords for the following variables:
  7. #** $cryptkey
  8. #** $pemkey
  9. #* Save the secrets.php file
  10. Run the genkeys.sh

{tip} ./genkeys.sh {tip}

  1. Copy conf-default.php to conf.php:

{tip} cp conf-default.php conf.php {tip}

  1. Modify conf.php to match your site

{tip}vi conf.php{tip} {info}Modify every entry under “Things in this section must be modified”. Descriptions and pointers for each value are included within conf.php.{info}

  1. #* COOKIEDOMAIN - set this to the domain name your web server is using or leave it blank if you are only accessing the web server by its IP address
  2. Set the owner of the .ht-inc/maintenance directory to the web server

user (normally ‘apache’): {tip}chown apache maintenance{tip}

  1. Open the testsetup.php page in a web browser:

  2. #* If you set up your site to be https://my.server.org/vcl/ open [https://my.server.org/vcl/testsetup.php]
  3. #* Debug any issues reported by testsetup.php
  4. h2. Log In to the VCL Website
  5. Open the index.php page in your browser (https://my.server.org/vcl/index.php

)

  1. #* Select Local Account
  2. #* Username: admin
  3. #* Password: adminVc1passw0rd
  4. Set the admin user password (optional):

  5. Click User Preferences

  6. Enter the current password: adminVc1passw0rd

  7. Enter a new password

  8. Click Submit Changes

  9. h2. Add a Management Node to the Database
  10. Click the Management Nodes link

  11. Click Add

  12. Fill in these required fields:

  13. ##* Hostname - The name of the management node server. This value doesn't necessarily need to be a name registered in DNS nor does it need to be the value displayed by the Linux hostname command. For example, if you are installing all of the VCL components on the same machine you can set this value to localhost. {info}Take note of the value you enter for Hostname. In a later step performed during the management node installation , the value enter for Hostname must match the value you enter for FQDN in the /etc/vcl/vcld.conf file on the management node.{info}
  14. ##* IP address - the public IP address of the management node
  15. ##* SysAdmin Email Address - error emails will be sent to this address
  16. ##* Install Path - this is parent directory under which image files will be stored - only required if doing bare metal installs or using VMWare with local disks
  17. ##* End Node SSH Identity Key Files - enter /etc/vcl/vcl.key unless you know you are using a different SSH identity key file
  18. Optionally, fill in these fields:

  19. ##* Address for Shadow Emails - End users are sent various emails about the status of their reservations. If this field is configured, copies of all of those emails will be sent to this address.
  20. ##* Public NIC configuration method - this defaults to Dynamic DHCP - if DHCP is not available for the public interface of your nodes, you can set this to Static. Then, the IP configuration on the nodes will be manually set using Public Netmask, Public Gateway, Public DNS Server, and the IP address set for the computer under Manage Computers
  21. Click Confirm Management Node

  22. Click Submit

  23. Click the Management Nodes link

  24. Select Edit Management Node Grouping

  25. Click Submit

  26. Select the checkbox for your management node

  27. Click Submit Changes

  28. h2. Install & Configure phpMyAdmin (Optional): {excerpt-include:VCL 2.3 phpMyAdmin Installation & Configuration|nopanel=true} To install phpMyAdmin, follow the instructions on: VCL:VCL 2.3 phpMyAdmin Installation & Configuration

Further steps if using only VMWare

Further steps if using xCAT


Previous Step: VCL:VCL 2.3 Database Installation Next Step: VCL:VCL 2.3 Management Node Installation