Previous Topic: Lamp - Lamp and LampX4 ApplicationsNext Topic: Windows


LampCluster - Scalable LAMP Cluster

Latest Version: 2.0.8-1

LampCluster - Scalable LAMP Cluster

LampCluster - Scalable LAMP Cluster application is a Reference design for a basic scalable lamp infrastructure. It is designed for rapid deployment and easy management. This application allows direct ssh access to the Apache and mysql server appliances, without the need to access the grid controller.

This application can be deployed on shared grids where it is not possible to give the application manger access to the CA AppLogic® Interface.

Boundary
Properties

Property Name

Type

Description

user

String

This is the user account for all services on the app. it is set as the initial system user on each of the Apache and dbase appliances that can be used for ssh logins. It is also the user for the http authentication for the web interface on the NAS and MON appliances. This property is mandatory.

user_pw

String

This is the default password set for the user property. This property is mandatory.

root_pw

String

This is the initial root password for the Apache and dbase appliances. This property is mandatory.

web_ip

IP

This is the IP assigned to the input gateway. This property is mandatory.

net_ip

IP

This is the IP assigned to the output gateway. This property is mandatory.

netmask

IP

This is the netmask for the IP network. This property is mandatory.

gateway

IP

This is the gateway for the IP network. This property is mandatory.

dns1

IP

First nameserver assigned to the output gateway. This property is mandatory.

dns2

IP

Secondary nameserver assigned to the output gateway.

srv2_standby

Int

Specifies whether the second WEB server is in standby mode. If non-zero, the second WEB server is in standby mode, otherwise it is not in standby mode. This property is valid only for the application. Default: 1 (standby mode).

srv3_standby

Int

Specifies whether the third WEB server is in standby mode. If non-zero, the third WEB server is in standby mode, otherwise it is not in standby mode. This property is valid only for the application. Default: 1 (standby mode).

srv4_standby

Int

Specifies whether the fourth WEB server is in standby mode. If non-zero, the fourth WEB server is in standby mode, otherwise it is not in standby mode. This property is valid only for the application. Default: 1 (standby mode).

mon_standby

Int

Determines whether application monitoring is disabled upon application start for the application. If non-zero, monitoring is disabled, otherwise monitoring is enabled. The monitoring can be enabled at runtime by manually starting the mon appliance. Default: 1 (monitoring is disabled).

Resources

Resource

Minimum

Maximum

Default

CPU

0.9

128

2.45

Memory

1.593 GB

150.125 GB

3.875 GB

Bandwidth

11 Mbps

20.5 Gbps

1.45 Gbps

User Volumes

The application itself uses several volumes, described in Application Architecture. They are part of the application and are already configured into the appliance instances. There are no volumes that need to be configured on the application boundary.

Implementation Details

To access these appliances point your ssh client or your browser to web_ip and the desired port.

Port

Description

2221

ssh port for srv1

2222

ssh port for srv2

2223

ssh port for srv3

2224

ssh port for srv4

2225

ssh port for dbase

2226

http port for the MON web interface

2227

http port for the NAS web interface

Each Apache (denoted as srv1 through srv4) and the MYSQL (denoted as dbase) is a basic install of CentOS-5.4. It includes a basic build environment with GCC. the following packages have been installed using yum in their default configurations:

mysql, php, php-mysql, php-pear, httpd, php-GD, ImageMagic, ImageMagic-perl

Any of the other CentOS packages can be installed by the end user, simply by running yum -y install <package> while running as root user.

On first boot the initial user is created and the system places the root password in a file. (/home/<user>/su.txt). Any of these instances can be reset to the default properties by deleting /appliance/passwd.stamp from the appliance and restarting the application.

The Apache appliances can connect to the database with the hostname "db" (e.g. "mysql -h db") the default database has sufficient permissions for the root user of any of the Apache appliances.

Initial application setup

Use the following steps to get your own LampCluster application up and running on an AppLogic grid. This example creates a LampCluster application named mylampcluster.

You now have a running LampCluster application on your grid. All that is left to do is to install your specific application onto the application volumes and your application will be ready to go.

Application Architecture

The LAMP application has the following volumes:

Volume

Description

cert

holds the ssl cert for the INSSL gateway

data

NAS volume and needs to be sized on provision. This is the primary storage for the app

dase

database volume and needs to be sized on provision. This is the MYSQL database storage

mon

mon volume and needs to be sized on provision. This is the storage for the monitor appliance

Notes
Open source and 3rd party software used inside of the appliances

The following open source 3rd party software is installed or updated in addition to the software found on the LINUX5 appliance base class.

Database Appliance (main.dbase)

Software

Version

Modified

License

Notes

mysql

5.0.77-4.el5_4.1

No

GPLv2

N/A

mysql-server

5.0.77-4.el5_4.1

No

GPLv2

N/A

perl-DBD-MySQL

3.0007-2.el5

No

Artistic/GPLv2

N/A

Web Server Appliances (main.srv1, main.srv2, main.srv3, main.srv4)

Software

Version

Modified

License

Notes

alsa-lib

1.0.17-1.el5

No

LGPLv2.1

N/A

apr

1.2.7-11.el5_3.1

No

Apache License v2.0

N/A

apr-util

1.2.7-7.el5_3.2

No

Apache License v2.0

N/A

audiofile

0.2.6-5

No

LGPLv2.0

N/A

avahi-glib

0.6.16-6.el5

No

LGPLv2.0

N/A

bind-libs

9.3.6-4.P1.el5_4.2

No

ISC

N/A

bind-utils

9.3.6-4.P1.el5_4.2

No

ISC

N/A

distcache

1.4.5-14.1

No

LGPLv2.1

N/A

esound

0.2.36-3

No

GPLv2

N/A

GConf2

2.14.0-9.el5

No

LGPLv2.0

N/A

ghostscript

8.15.2-9.11.el5

No

GPLv2

N/A

ghostscript-fonts

5.50-13.1.1

No

GPLv2

N/A

gmp

4.1.4-10.el5

No

LGPLv2.1

N/A

gnome-keyring

0.6.0-1.fc6

No

GPLv2

N/A

gnome-mime-data

2.4.2-3.1

No

GPLv2

N/A

gnome-mount

0.5-3.el5

No

GPLv2

N/A

gnome-vfs2

2.16.2-4.el5

No

LGPLv2.0

N/A

httpd

2.2.3-31.el5

No

Apache License v2.0

N/A

ImageMagick

6.2.8.0-4.el5_1.1

No

ImageMagick

N/A

ImageMagick-perl

6.2.8.0-4.el5_1.1

No

ImageMagick

N/A

libbonobo

2.16.0-1.fc6

No

LGPLv2.1

N/A

libbonoboui

2.16.0-1.fc6

No

LGPLv2.1

N/A

libc-client

2004g-2.2.1

No

FreeFork

N/A

libcroco

0.6.1-2.1

No

LGPLv2.0

N/A

libglade2

2.6.0-2

No

LGPLv2.0

N/A

libgnome

2.16.0-6.el5

No

LGPLv2.0

N/A

libgnomecanvas

2.14.0-4.1

No

LGPLv2.0

N/A

libgnomeui

2.16.0-5.el5

No

LGPLv2.0

N/A

libgsf

1.14.1-6.1

No

LGPLv2.1

N/A

libnotify

0.4.2-6.el5

No

LGPLv2.1

N/A

librsvg2

2.16.1-1.el5

No

LGPLv2.0

N/A

libutempter

1.1.4-4.el5

No

LGPLv2.1

N/A

libwmf

0.2.8.4-10.2

No

GPLv2

N/A

libwnck

2.16.0-4.fc6

No

LGPLv2.0

N/A

libXres

1.0.1-3.1

No

MIT

N/A

mod_auth_mysql

3.0.0-3.2.el5_3

No

Apache Group

N/A

mod_perl

2.0.4-6.el5

No

Apache License v2.0

N/A

mod_rpaf

0.5

Yes

Apache Group

N/A

mod_ssl

2.2.3-31.el5.centos.2

No

Apache License v2.0

N/A

mysql

5.0.77-4.el5_4.1

No

GPLv2

N/A

notification-daemon

0.3.5-9.el5

No

GPLv2

N/A

perl-BSD-Resource

1.28-1.fc6.1

No

Artistic

N/A

perl-DBD-MySQL

3.0007-2.el5

No

Artistic

N/A

perl-GD

2.35-1.el5.rf

No

Artistic

N/A

perl-Mailtools

1.77-1.el5.centos

No

Artistic

N/A

perl-TimeDate

1.16-5.el5

No

Artistic

N/A

php

5.1.6-24.el5_4.5

No

PHP v3.01

N/A

php-cli

5.1.6-24.el5_4.5

No

PHP v3.01

N/A

php-common

5.1.6-24.el5_4.5

No

PHP v3.01

N/A

php-devel

5.1.6-24.el5_4.5

No

PHP v3.01

N/A

php-gd

5.1.6-24.el5_4.5

No

PHP v3.01

N/A

php-imap

5.1.6-24.el5_4.5

No

PHP v3.01

N/A

php-mysql

5.1.6-24.el5_4.5

No

PHP v3.01

N/A

php-pdo

5.1.6-24.el5_4.5

No

PHP v3.01

N/A

php-pear

1.4.9-6.el5

No

PHP v3.0

N/A

php-pgsql

5.1.6-24.el5_4.5

No

PHP v3.01

N/A

startup-notification

0.8-4.1

No

LGPLv2.0

N/A

urw-fonts

2.3-6.1.1

No

GPLv2

N/A