CentOS7Install: Difference between revisions

From Request Tracker Wiki
Jump to navigation Jump to search
(Original Draft of page from notes created on google drive.)
 
m (Updated Formatting)
Line 1: Line 1:
- RT 4.4.1 installation on CentOS 7.2.1511 -
== RT 4.4.1 installation on CentOS 7.2.1511 ==


Assumptions:
----
1. Access to the internet and CentOS OS and update repositories is available.
1. Installation testing was completed using CentOS 7.2.1511 minimal boot ISO.


Installation Steps:
== Assumptions ==
1. Install OS.  Install the OS from ISO or PXE boot using your normal methodology.
 
* Access to the internet and CentOS OS and update repositories is available.
* Installation testing was completed using CentOS 7.2.1511 minimal boot ISO.
* httpd (Apache) 2.4 and mod_fcgid Apache modules were used as the host environment.
* Testing was conducted in both KVM and vSphere environments.
 
----
 
== Installation Steps ==
 
=== OS Installation and Initial Configuration ===
 
<!> It is possible to automate the majority of this section using kickstart files.
 
# Install OS.  Install the OS from ISO or PXE boot using your normal methodology.
   * Install prerequisites for RT from OS repository.
   * Install prerequisites for RT from OS repository.
   * yum install expat gd graphviz mariadb-server openssl expat-devel gd-devel graphviz-devel mariadb-devel openssl-devel perl perl-CPAN wget screen mod_fcgid
   {{{yum install expat gd graphviz mariadb-server openssl expat-devel gd-devel graphviz-devel mariadb-devel openssl-devel perl perl-CPAN wget screen mod_fcgid
  * yum groupinstall "Development Tools" "Web Server"
yum groupinstall "Development Tools" "Web Server"
}}}
 
# Patch OS
{{{ yum update
}}}
  * reboot the OS.


1. Patch OS
<#> If you are continuing to next step immediately, do not reboot.
  * yum update
  * reboot (unless you are doing step 4 immediately)


1. Disable selinux, by editing /etc/sysconfig/selinux:
# Disable selinux, by editing /etc/sysconfig/selinux:
   * SELINUX=disabled
   * '''SELINUX=disabled'''
   * reboot
   * reboot


1. Adjust local services:
# Adjust local services:
   * systemctl enable mariadb.service
   * systemctl enable mariadb.service
   * systemctl enable httpd.service
   * systemctl enable httpd.service
Line 27: Line 43:
   * NOTE:  httpd service needs to be stopped to allow RT web based configuration later in process.
   * NOTE:  httpd service needs to be stopped to allow RT web based configuration later in process.


1. Configure root password for mariadb:
=== Configure Supporting Software ===
 
# Configure root password for mariadb:
   * mysqladmin -u root password
   * mysqladmin -u root password
   * NOTE:  configure the internal DB password for the local instance of mysqld or mariadb
   * NOTE:  configure the internal DB password for the local instance of mysqld or mariadb


1. Install CPAN minus.
# Install CPAN minus.
   * curl -L http://cpanmin.us | perl - --sudo App::cpanminus
   * curl -L http://cpanmin.us | perl - --sudo App::cpanminus


1. Get RT and extract to /tmp.
# Configure RT to use cpanm for fixdeps:
  * export RT_FIX_DEPS_CMD=/usr/local/bin/cpanm
 
=== RT Dependencies and Installation ===
 
# Get RT and extract to /tmp.
   * wget https://download.bestpractical.com/pub/rt/release/rt-4.4.1.tar.gz
   * wget https://download.bestpractical.com/pub/rt/release/rt-4.4.1.tar.gz
   * tar xvzf rt-4.4.1.tar.gz -C /tmp
   * tar xvzf rt-4.4.1.tar.gz -C /tmp
   * cd /tmp/rt-4.4.1
   * cd /tmp/rt-4.4.1


1. Configure RT:
# Configure RT:
   * ./configure --enable-graphviz --enable-gd --with-web-user=apache --with-web-group=apache
   * ./configure --enable-graphviz --enable-gd --with-web-user=apache --with-web-group=apache


1. Configure RT to use cpanm for fixdeps:
# Test the dependencies:
  * export RT_FIX_DEPS_CMD=/usr/local/bin/cpanm
 
1. Test the dependencies:
   * make testdeps
   * make testdeps


1. Fix the dependencies:
# Fix the dependencies:
   * make fixdeps
   * make fixdeps
   * NOTE:  You may need to run the command more than once.  On RHEL 6.8, you may need to manually force the addition of the GD perl module via “cpanm GD --force”
   * NOTE:  You may need to run the command more than once.  On RHEL 6.8, you may need to manually force the addition of the GD perl module via “cpanm GD --force”


1. Confirm the dependencies are complete:
# Confirm the dependencies are complete:
   * make testdeps
   * make testdeps


1. Install RT (default install is to the /opt/rt4 directory):
# Install RT (default install is to the /opt/rt4 directory):
   * make install
   * make install


1. Modify /etc/httpd/conf.d/fcgid.conf.  Add:
=== RT Configuration using Web Interface ===
  * FcgidMaxRequestLen 1073741824


1. Create /etc/httpd/conf.d/rt.conf:
<!> It is possible to complete this step by editing the RT files directly, and creating the database. Refer to the RT documentation for manual steps.
# RT4 configuration for Apache
 
# Run the first run installation instance:
  * /opt/rt4/sbin/rt-server
  * Access the server using a web browser on the http 80 port.
 
# Configure the rt instance (fill this section in).
 
# When completed Ctrl-C the rt-server instance started above.
 
=== Configure RT for hostname.domain.name/rt directory ===
 
<!> This is a personal preference.  The web server example below assumes /rt is used.
 
# Modify /opt/rt4/etc/RT_SiteConfig.pm.  Add the following line:
{{{ Set( $WebPath, '/rt' );
}}}
 
=== Configure web server ===
 
# Modify /etc/httpd/conf.d/fcgid.conf.  Add:
{{{ FcgidMaxRequestLen 1073741824
}}}
 
# Create /etc/httpd/conf.d/rt.conf:
{{{# RT4 configuration for Apache


### Optional apache logs for RT
### Optional apache logs for RT
Line 88: Line 130:
   AddHandler fcgid-script fcgi
   AddHandler fcgid-script fcgi
</Location>
</Location>
}}}


1. Run the first run installation instance:
# Start apache:
  * /opt/rt4/sbin/rt-server
  * Access the server using a web browser on the http 80 port.
 
1. Configure the rt instance (fill this section in).
 
1. When completed Ctrl-C the rt-server instance started above.
 
1. Modify /opt/rt4/etc/RT_SiteConfig.pm.  Add the following line:
  * Set( $WebPath, '/rt' );
 
1. Start apache:
systemctl start httpd.service
systemctl start httpd.service


1. Modify firewalld configuration to suite your local requirements.
# Modify firewalld configuration to suite your local requirements.
  * NOTE:  Depending on install method, firewalld may not be installed.  You can also stop it for testing with the "systemctl stop firewalld" command.
<!>NOTE:  Depending on install method, firewalld may not be installed.  You can also stop it for testing with the "systemctl stop firewalld" command.

Revision as of 16:35, 11 October 2016

RT 4.4.1 installation on CentOS 7.2.1511


Assumptions

  • Access to the internet and CentOS OS and update repositories is available.
  • Installation testing was completed using CentOS 7.2.1511 minimal boot ISO.
  • httpd (Apache) 2.4 and mod_fcgid Apache modules were used as the host environment.
  • Testing was conducted in both KVM and vSphere environments.

Installation Steps

OS Installation and Initial Configuration

<!> It is possible to automate the majority of this section using kickstart files.

  1. Install OS. Install the OS from ISO or PXE boot using your normal methodology.
 * Install prerequisites for RT from OS repository.
 {{{yum install expat gd graphviz mariadb-server openssl expat-devel gd-devel graphviz-devel mariadb-devel openssl-devel perl perl-CPAN wget screen mod_fcgid

yum groupinstall "Development Tools" "Web Server" }}}

  1. Patch OS

{{{ yum update }}}

 * reboot the OS.

<#> If you are continuing to next step immediately, do not reboot.

  1. Disable selinux, by editing /etc/sysconfig/selinux:
 * SELINUX=disabled
 * reboot
  1. Adjust local services:
 * systemctl enable mariadb.service
 * systemctl enable httpd.service
 * systemctl start mariadb.service
 * systemctl stop httpd.service
 * NOTE:  httpd service needs to be stopped to allow RT web based configuration later in process.

Configure Supporting Software

  1. Configure root password for mariadb:
 * mysqladmin -u root password
 * NOTE:  configure the internal DB password for the local instance of mysqld or mariadb
  1. Install CPAN minus.
 * curl -L http://cpanmin.us | perl - --sudo App::cpanminus
  1. Configure RT to use cpanm for fixdeps:
 * export RT_FIX_DEPS_CMD=/usr/local/bin/cpanm

RT Dependencies and Installation

  1. Get RT and extract to /tmp.
 * wget https://download.bestpractical.com/pub/rt/release/rt-4.4.1.tar.gz
 * tar xvzf rt-4.4.1.tar.gz -C /tmp
 * cd /tmp/rt-4.4.1
  1. Configure RT:
 * ./configure --enable-graphviz --enable-gd --with-web-user=apache --with-web-group=apache
  1. Test the dependencies:
 * make testdeps
  1. Fix the dependencies:
 * make fixdeps
 * NOTE:  You may need to run the command more than once.  On RHEL 6.8, you may need to manually force the addition of the GD perl module via “cpanm GD --force”
  1. Confirm the dependencies are complete:
 * make testdeps
  1. Install RT (default install is to the /opt/rt4 directory):
 * make install

RT Configuration using Web Interface

<!> It is possible to complete this step by editing the RT files directly, and creating the database. Refer to the RT documentation for manual steps.

  1. Run the first run installation instance:
 * /opt/rt4/sbin/rt-server
 * Access the server using a web browser on the http 80 port.
  1. Configure the rt instance (fill this section in).
  1. When completed Ctrl-C the rt-server instance started above.

Configure RT for hostname.domain.name/rt directory

<!> This is a personal preference. The web server example below assumes /rt is used.

  1. Modify /opt/rt4/etc/RT_SiteConfig.pm. Add the following line:

{{{ Set( $WebPath, '/rt' ); }}}

Configure web server

  1. Modify /etc/httpd/conf.d/fcgid.conf. Add:

{{{ FcgidMaxRequestLen 1073741824 }}}

  1. Create /etc/httpd/conf.d/rt.conf:

{{{# RT4 configuration for Apache

      1. Optional apache logs for RT
  1. Ensure that your log rotation scripts know about these files
  2. ErrorLog /opt/rt4/var/log/apache2.error
  3. TransferLog /opt/rt4/var/log/apache2.access
  4. LogLevel debug

AddDefaultCharset UTF-8

Alias /rt/NoAuth/images /opt/rt4/share/html/NoAuth/images/

ScriptAlias /rt /opt/rt4/sbin/rt-server.fcgi/

DocumentRoot "/opt/rt4/share/html"

<Location /rt>

 # For Centos7/Apache 2.4 this line:
 Require all granted
 # For Centos6/Apache 2.2 these two lines:
 # Order allow,deny
 # Allow from all
 Options +ExecCGI
 AddHandler fcgid-script fcgi

</Location> }}}

  1. Start apache:

systemctl start httpd.service

  1. Modify firewalld configuration to suite your local requirements.

<!>NOTE: Depending on install method, firewalld may not be installed. You can also stop it for testing with the "systemctl stop firewalld" command.