r4064 add DB triggers to prevent invalid port links (#363)
[racktables] / README
1 Thank you for selecting RackTables as your datacenter management
2 solution. Feel free to address your questions to the mailing list
3 before contacting the developers directly.
4
5 Project homepage: http://racktables.org/
6 Project SF page: http://sourceforge.net/projects/racktables/
7 Documentation: http://sourceforge.net/apps/mediawiki/racktables/index.php?title=Main_Page
8 Users mailing list: <racktables-users/=@=/freelists.org>
9 Mailing list archive: http://www.freelists.org/archive/racktables-users
10 Developers: <info/=@=/racktables.org>
11
12 *******************************************************
13 * *
14 * INSTALLING RACKTABLES *
15 * *
16 *******************************************************
17
18 I. Install dependencies.
19
20 For database you must have a MySQL server installation
21 version 4.x or 5.x. InnoDB support must be enabled.
22 It is a good idea to make it use UTF-8 by default.
23
24 * Fedora 13: yum install mysql-server mysql
25 Make sure to have "character-set-server=utf8" line in "[mysqld]" section
26 of /etc/my.cnf file!
27
28 * ALTLinux Desktop 4.0: apt-get install MySQL-server
29 put "CHSET=utf8" into /etc/sysconfig/mysqld
30
31 * openSUSE 11.0: YaST -> Software -> software management -> Web and LAMP server -> mysql
32 put "default-character-set=utf8" into /etc/my.cnf
33
34 For web-frontend you must have Apache and PHP 5 with PDO and multibyte
35 extensions:
36
37 * Fedora 13: yum install httpd php php-mysql php-pdo php-gd php-snmp php-mbstring
38
39 * ALTLinux Server 4.0: apt-get install apache2-httpd-prefork php5-gd2 \
40 php5-pdo_mysql php5-pdo apache2-mod_php5 php5-mbstring
41
42 * openSUSE 11.0: use YaST to apache2-mod_php5, php5-gd, php5-mbstring, php5-mysql,
43 php5-snmp and php5-ldap
44
45 * FreeBSD 7:
46 # make -C /usr/ports/www/apache13-modssl install
47 # make -C /usr/ports/www/php5-session install
48 [X] CLI Build CLI version
49 [X] APACHE Build Apache module
50 [X] MULTIBYTE Enable zend multibyte support
51 # make -C /usr/ports/graphics/php5-gd install
52 # make -C /usr/ports/databases/php5-pdo_mysql install
53 # make -C /usr/ports/devel/pcre install
54 !!! Enable UTF-8 support ............ : yes
55 !!! Unicode properties .............. : yes
56 # make -C /usr/ports/devel/php5-pcre install
57 # make -C /usr/ports/converters/php5-mbstring install
58 [X] REGEX Enable multibyte regex support
59
60 # make -C /usr/ports/net-mgmt/php5-snmp install
61 # make -C /usr/ports/net/php5-ldap install
62
63 II. Prepare the files and database.
64 1. Unpack the tarball and make it web-accessible, e.g. http://yourcompany.com/racktables
65 or http://racktables.mysite.org.
66
67 2. Setup MySQL database:
68 mysql> CREATE DATABASE racktables_db CHARACTER SET utf8 COLLATE utf8_general_ci;
69 mysql> grant all privileges on racktables_db.* to XXX@YYY identified by 'ZZZ';
70
71
72 III. Finish the installation.
73 Open your RackTables URL and follow the instructions. In a suitable
74 environment everything should take a minute or so.
75
76 *******************************************************
77 * *
78 * UPGRADING RACKTABLES *
79 * *
80 *******************************************************
81 RackTables (since 0.14.6) provides an automatic database upgrade feature.
82 If you already have a working installation, the following procedure
83 should be sufficient:
84
85 0. BACKUP YOUR DATABASE
86 1. Remove all existing files except inc/secret.php, gateways'
87 configuration (in the gateways directory) and local mod (inc/local.php).
88 2. Unpack the new tarball into the place.
89 3. Open the RackTables page in your browser. The software detects version
90 mismatch and displays a message telling to log in as admin to finish
91 the upgrade.
92 4. Do that. Normally, everything should be Ok. If there are
93 errors displayed, copy and send them to us for review.
94
95 *******************************************************
96 * *
97 * RELEASE NOTES *
98 * *
99 *******************************************************
100
101 *** Upgrading to 0.19.x ***
102
103 This release utilizes database triggers, which are only available in
104 MySQL >= 5.0.2.
105
106 *** Upgrading to 0.18.x ***
107
108 RackTables from its version 0.18.0 and later is not compatible with
109 RHEL/CentOS (at least with versions up to 5.5) Linux distributions
110 in their default installation. There are yet options to work around that:
111 1. Install RackTables on a server with a different distribution/OS.
112 2. Request Linux distribution vendor to fix the bug with PCRE.
113 3. Repair your RHEL/CentOS installation yourself by fixing its PCRE
114 RPM as explained here: http://bugs.centos.org/view.php?id=3252
115
116 *** Upgrading to 0.17.0 ***
117
118 One can always install RackTables 0.17.0 from scratch. However, upgrading
119 an existing installation to 0.17.0 implies a certain upgrade path. If the
120 existing database version is less, than 0.16.4, it must first be upgraded
121 to version 0.16.4, 0.16.5 or 0.16.6 (at one's choice) using appropriate
122 tar.gz distribution. The resulting 0.16.4+ database can be upgraded to
123 0.17.0 (or later version) in a normal way (with tar.gz of the desired 0.17.x
124 release).
125
126 LDAP options have been moved to LDAP_options array. This means, that if you were
127 using LDAP authentication for users in version 0.16.x, it will break right after
128 upgrade to 0.17.0. To get things working again, adjust existing secret.php file
129 according to secret-sample.php file provided with 0.17.0 release.
130
131 This release is the first to take advantage of the foreign key support
132 provided by the InnoDB storage engine in MySQL. The installer and
133 upgrader scripts check for InnoDB support and cannot complete without it.
134 If you have trouble, the first step is to make sure the 'skip-innodb'
135 option in my.cnf is commented out.
136
137 Another change is the addition of support for file uploads. Files are stored
138 in the database. There are several settings in php.ini which you may need to modify:
139 file_uploads - needs to be On
140 upload_max_filesize - max size for uploaded files
141 post_max_size - max size of all form data submitted via POST (including files)
142
143 User accounts used to have 'enabled' flag, which allowed individual blocking and
144 unblocking of each. This flag was dropped in favor of existing mean of access
145 setup (RackCode). An unconditional denying rule is automatically added into RackCode
146 for such blocked account, so the effective security policy remains the same.