The Forge

Welcome to the Forge where you can build applications and expansion packs to enhance your Application Delivery Platform.(Download a Platform here)

There are 4 types of Application you can build:

 Add-Ons  Health-Monitors flightPATH jetPACKS

 Add-Ons

 Health Monitors

  flightPATHS

jetPACKS

  Docker based applications  – Perl Based monitors   Advanced layer 7 rules  Configuration expansion packs

The Forge is where Docker containers are turned into Smart-file applications ready for secure deployment onto an ADP.

Applications can be built and then packaged to Docker where the Edgenexus Forge can access them and built a Smart-file Application that can be deployed to their ADP.

If you think your App is useful to others or even valuable then you can apply to have it uploaded to the app store where it can be sold or provided for free.

Smart files are encoded and 3DES encrypted to a specific Machine ID.

I’m Ready to build – Take me to the Forge 🙂 

How do i do it?

All Applications and expansion packs must first be built into a smart file format. The Smart fire format is 3des encrypted and contains information about your application. Its also encoded to only run on certain machines by using the MachineID. If the smartfile is distributed by the Appstore then its re encrypted for each download.

All apps require the following base information to create a smart file.

Application Name

 Application name, for example: Hello world version 10

 MachineID

 The unique identifier of an ALB, that can be found in the System -> Licence page of ALB GUI.

 Description

 Description of application

 Application Version

 Version number of application.

 Vendor

 Your company name.

Icon File

Application logo in PNG format. Logo size must be less than 90 Kbytes.
Add-Ons

Add-Ons

Add Ons are base on Docker images with enhanced metadata and scripting.

You can either direct convert an existing Docker image to an app or you can download the edgeNEXUS Docker base template (Right here) that contains a web server that can be used to configure and deploy scripts.

The base image will read the smart file content into the Web server GUI like below.

basedockerimage

Once you have created your amazing new version of Hello world you can save it to a private repo on docker and then go to the Forge

The Forge will need additional information to create a Docker Add-On App

Docker Image Repository

Docker image name, for example: mysql/mysql-server, httpd, tomcat.

Docker Image Tag

Docker image version, for example: latest, 14.10, centos6.

Docker Registry

Address of a server that stores Docker images.

Docker Email

If a Docker registry requires authentication, please supply your email. (not saved)

Docker Password

If a Docker registry requires authentication, please supply your password. (not saved)

Docker Options

You may supply options to ‘docker run’ command, for example to mount a host file or directory inside a container: -v /host/somedir:/container/otherdir

Docker Environment Variables

You may set environment variables in a container, for example: HOME=/root\nTERM=xterm.

Please use \n as a delimiter in case you supply more than one environment variable.

Application GUI URL: If a Docker application has a web-based user interface, you may supply its URL here. The special term <IP> will be substituted with the IP address of a container.
Additional Application Files: You may upload additional files that will be added to the Smart-File and will reside in the addon directory /add-ons/<Vendor>/<Application Name>/. These files can be made available to a container with the mount (-v) Docker option.

Health-Monitors

Health checks

The Edgenexus load balancer and ADP platform can run customised application health checks.

They are based on Perl and can be passed a number of  parameters from the GUI.

There are a number of examples on github you can use

Information is passed to the script using the following variables:

my $host            = $_[0];               ### Host IP or name taken from the Real server IP address

my $port            = $_[1];               ### Host Port taken from the Real Server config

my $content      = $_[2];               ### INPUT: required content to check e.g. Server Up

my $notes          = $_[3];               ### INPUT: url/Path i.e.  192.168.101.201/gary/index.html

my $page           = $_[4];                ### Data GET request path (part of the URL after host address and port)

my $user            = $_[5];                ### Username

my $password  = $_[6];                ### Password

The script will return the following values

1 is the test is successful

2 if the test is un-successful

 

flightPATH

flightPATH

flightPATH is the Layer 7 rules engine. More information can be found in the User guide.

Rules can be created in the GUI. The config file can then be exported and the rules removed and placed in a separate file that can be used with the forge.

The top top of each file should start with

#!jetpack

Example rules can be found on github here

Support is provided by the community here

jetPACKS

jetPACKS

jetPACKS are application templates

They can be downloaded form the app store or created in much the same way as a flightPATH

The top top of each file should start with

#!jetpack

Example jetPACKS can be found on github here

Support is provided by the community here

Log in with your credentials

or    

Forgot your details?

Create Account