One Click Multi-Server Applications (on DigitalOcean)

Phil Dougherty
ContainerShip Articles
5 min readNov 11, 2015

Enabling developers by providing easy access to the tools and applications they need on-demand.

We’re happy to announce the initial availability of the ContainerShp Cloud Integration Marketplace with support for DigitalOcean! Marketplace makes launching the applications and tools you need dead simple, and let’s you easily scale vertically and horizontally later. We’ve provided 30 initial integrations ranging from databases, queues, and key value stores, to logging pipelines and blogging software. With just a few clicks you can launch a cluster of as many servers as you want, running the software of your choosing, and you’ll be emailed a link to access and manage the cluster. Read on to see how easy it is.

Launching an Application from Marketplace

Visit the Marketplace section of our website to get started.

ContainerShip Cloud Marketplace

Click on the integration you’d like to launch. We’ll choose ELK, the ElasticSearch, Logstash, and Kibana log analytics stack but you can choose whatever interests you. If you are not logged in you will be prompted to create an account or sign in.

If you don’t already have a ContainerShip Cloud account, you can create one using your email or a GitHub account.

ContainerShip Cloud Sign Up Page

If you are just now creating an account, you will need to attach your DigitalOcean account as well.

Once signed in with your DigitalOcean account attached, you will be redirected back to the application integration you chose so that you can configure it before launching.

The Marketplace Deployment Configuration Screen

You’ll need to choose a few options before you can launch the application.

  • DigitalOcean reigon to deploy to
  • SSH Key Pairs to install on each server
  • Environment specific options that are different for each application in the Marketplace. In the case of ELK, you’ll need to specify a name for your ElasticSearch cluster, and optionally specify a comma-delimited list of ElasticSearch plugins to install.
Filling in Optons

You can also select advanced options which will allow you to use larger instances or run more instances than the default amount. Click the Advanced Deployment button to view these options.

Setting Advanced Options

Once you’re satisfied with the options, click the Deploy to ContainerShip Cloud button. ContainerShip Cloud will begin provisioning your cluster on your DigitalOcean account and you will get an email when it is ready for action! It will take around five minutes to boot the DigitalOcean droplets, install ContainerShip, and deploy the 5-tier application stack.

Managing Your ContainerShip Cluster and Applications

When your application is ready for use, ContainerShip Cloud will send you an email to let you know. Click on the link in the email to manage your cluster, where you can find important information like DNS entries and ports that you will need to access the application you launched.

When you first click the link in the email, you’ll see the cluster overview page.

Cluster Overview Page

Click on the Applications button on the upper right part of the page to see the running containerized applications on the cluster.

The ELK stack we launched has 4 different services that will start up, redis for log ingestion (you can send your logs here), logstash that will pull logs out of redis for processing, elasticsearch running across each server in the cluster for log storage, and kibana for search, analytics, and visualizations.

Visit Kibana using the automatically generated DNS entry to view the dashboard. You can find it by clicking on the Kibana application. You’ll also need to use the Discovery Port to access it unless you setup a Load Balancer.

Kibana Application Details
Kibana Automatic DNS entry and Discovery Port
Kibana Dashboard

Success!

Next Steps

You can now start sending logs to your redis Application and they will show up in Kibana!

You may also want to perform some of the following actions:

  • Setup a load balancer for your redis and kibana applications so they respond on a specific port of your choosing, like port 80 for kibana, and 6379 for redis.
  • Take a backup of your Cluster so it can be easily restored later or moved to a different provider or region.
  • Scale up the cluster or individual applications to increase capacity.
  • Launch your personal containerized apps and send their log output to the ELK setup automatically by deploying the Logspout integration.

Conclusion

ContainerShip Cloud makes it incredibly easy to launch any containerized application anywhere. The building blocks are available to deploy and manage any kind of application, clustered or non. Give it a try and let us know how it goes!

--

--

Phil Dougherty
ContainerShip Articles

Co-Founder @containershipio, Husband, Systems Engineer, Manager, Pittsburgher, Pitbull lover.