Previous Topic: Ready-made Pre-installed Application TemplatesNext Topic: SugarCRM: a scalable CRM application


TWiki - reference design for a scalable, structured wiki application

Latest Version: 4.3.2-3

The application infrastructure is shown below:

Twiki Application

This application is fully featured, scalable, structured wiki, based on TWiki 4.3.2 (http://twiki.org/). This version of TWiki is distributed under GPLv2. The scalable infrastructure is built using CA AppLogic® and CA AppLogic®'s catalog appliances.

TWiki is a flexible, powerful, and easy to use enterprise collaboration platform and knowledge management system. It is a Structured Wiki, typically used to run a project development space, a document management system, a knowledge base, or any other groupware tool, on an intonate or on the internet. Web content can be created collaboratively by using only a browser.

The TWiki application is packaged as an appliance. All required configuration is exposed on the boundary of the application, so that the application can be configured as a single appliance (using the Application Configuration property sheet in the editor).

Boundary
Properties

These are the only settings that you must configure to start the application. Certain settings are automatically distributed to multiple appliances (such as the DNS servers, the admin e-mail, and so on). You don't need to understand the internal structure of the application to be able to configure it.

Property Name

Type

Description

usr_ip

IP_owned

This is the IP address at which the application provides services to users. This property is mandatory

mail_ip

IP_owned

This is the IP address that the mail gateway is going to use to send e-mail from. This property is mandatory. In the future, we may provide auto assignment of IP addresses to output gateways.

mail_server

String

Host name of the SMTP mail server through which TWiki should send e-mail notifications. The mail server can be specified as a host name (for example, mail.CA.com) or as an IP address (for example, 12.34.56.78). Use 0.0.0.0 to disable. This property is mandatory.

netmask

IP

Netmask for the network on which usr_ip and mail_ip reside. This property is mandatory

gateway

IP

Address of IP gateway to be used to route traffic. This property must be specified in order to access the TWiki application from hosts outside of the IP network on which TWiki is running (that is, most cases). Use 0.0.0.0 to disable. This property is mandatory.

dns1

IP

IP address of a DNS server for host name resolutions. Used to resolve the mail server name. This property is mandatory.

dns2

IP

IP address of a backup DNS server for host name resolutions. Used to resolve the mail server name. Default: 0.0.0.0.

allowed_hosts

String

List of hosts or subnets allowed to connect. Separate multiple entries with spaces or commas. Supported format example: 192.168.1.2 192.168.1.0/24 192.168.2.0/255.255.255.0. Default: 0.0.0.0/0 (all allowed)

timezone

String

Specifies the time zone used in the application. If this property is empty, the timezone is not modified and left as-is. A list of supported time zones is available here. Default: empty

mon_standby

Int

Determines whether application monitoring is disabled upon application start. 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).

Important! The IP addresses configured in the usr_ip and mail_ip properties must be IP addresses available on your CA AppLogic® grid. You can find them, together with the netmask, gateway and dns servers on the dashboard of your grid. We are working to make it possible for CA AppLogic® to provide these addresses automatically.

Resources

Resource

Minimum

Maximum

Default

CPU

0.35

44

1.25

Memory

736MB

70 GB

1.25 GB

Bandwidth

5 Mbps

8.5 Gbps

900 Mbps

User Volumes

The application itself uses a single volume, described below. It is part of the application and is already configured into the appliance instances. There are no volumes that need to be configured on the application boundary.

Application Volumes

The TWiki application has the following volumes:

Volume

Description

data

Shared file system holding TWiki content, web logs and additional perl modules needed by the TWiki app. This volume is configured as the data volume of the data NAS appliance.

mon

Monitoring data volume. This volume is configured as the data volume of the mon monitoring appliance.

Description

Users of the TWiki application can access it at the usr input (defined by the usr_ip address).

Operation

This application is a fully featured, scalable, structured wiki, based on TWiki 4.3.2 (http://twiki.org/). This version of TWiki is distributed under GPLv2. The scalable infrastructure is built using CA AppLogic® and CA AppLogic®'s catalog appliances.

To start using the application

  1. SSH to the web appliance and edit /mnt/content/twiki/lib/LocalSite.cfg and delete the line:
    $TWiki::cfg{Password} = '...';
  2. Access the application at its IP or resolvable domain name and configure TWiki (for example, http://192.168.100.100/bin/configure):
    1. Under General path settings, set the DefaultUrlHost to the IP address or resolvable domain name of the application
    2. Under Mail and Proxies, set the WebMasterEmail to the e-mail address of the TWiki webmaster. This is required for registration to work.

(Optional) Once you are done configuring your TWiki, it is recommended to restrict access to the configure section. To do this, have a look at the twiki/.htconf file on the data volume, it has a commented section that limits access to the configure section only to localhost. Feel free to uncomment that and edit it to suit your needs.