aws-templateslamp-production-ready

Launch a new Bitnami LAMP Production-Ready Stack deployment on AWS

Introduction

Amazon Web Services (AWS) is one of the world’s most popular and reliable cloud computing platforms. It provides a comprehensive set of compute, storage and delivery services to build, deploy and manage enterprise, mobile and Web applications in the cloud.

If you’re looking to deploy production-ready applications in the AWS cloud, the easiest way to get started is with Bitnami. Bitnami provides production-ready solutions for AWS servers, so that you can get begin using your new application for mission-critical use cases immediately. You can access and launch these production-ready solutions through the AWS Marketplace.

In this tutorial, I’ll walk you, step by step, through the process of using the AWS Marketplace to create and provision a production-ready application on AWS.

Assumptions and prerequisites

This guide assumes that:

Overview

Here are the steps you’ll follow in this tutorial:

  • Create a Route53 hosted zone (optional)
  • Subscribe to and configure the CloudFormation template from the AWS Marketplace
  • Deploy Bitnami LAMP Production-Ready Stack on AWS

The next sections will walk you through these steps in detail.

Step 1: Create a Route53 hosted zone (optional)

At the end of this step, you will have create a new Hosted Zone on Amazon Route53. This is an optional step; if you do not wish to configure a domain name for the Production-Ready solution, you may skip it.

NOTE: This section assumes you own a domain for which you can configure DNS settings

  • Access the Route53 console and click the “Create Hosted Zone” link.
  • Enter your domain name, select the type as “Public Hosted Zone”, and click “Create”.

    Hosted Zone

  • Set Route53 as the DNS for your existing domain. Refer to the Route53 documentation to complete this step.

  • Click the “Hosted zones” tab in the left panel and obtain the “Hosted Zone ID”.

    Hosted Zone

Step 2: Subscribe to and configure the CloudFormation template from the AWS Marketplace

At the end of this step, you will have subscribed to and configured the CloudFormation template for Bitnami LAMP Production-Ready Stack.

The next step is to launch Bitnami LAMP Production-Ready Stack on AWS. The AWS Marketplace lets you do this in just a couple of clicks. Follow these steps:

  • From the AWS Marketplace, search for “lamp production-ready bitnami”. Select the solution from the search results.
  • Review the details provided and click the “Continue to Subscribe” button to proceed.
  • Review the terms and conditions and click “Continue to Configuration”.

    Check the terms and conditions of this software

  • On the “Configure” page, specify the following information:

    • Fulfillment Option: LAMP Production-Ready by Bitnami.
    • Software Version: select the latest version for this offering.
    • Region: enter the region where you want to deploy this solution.
  • Click “Continue to Launch” to finish the process.

  • Verify that the fulfillment option, version, and region are correct. Review the usage instructions, and select “Launch CloudFormation” as the chosen action for launching the solution. This will redirect you to the Cloudformation Console.

  • Click “Launch” to proceed.

    Launch the solution

Step 3: Deploy Bitnami LAMP Production-Ready Stack on AWS

At the end of this step, all nested templates will be launched in the AWS CloudFormation Console and you will be able to navigate to the solution’s welcome page.

Now that you have configured the basic information to launch the CloudFormation template, it is time to create the stack for running the solution on an AWS instance. Follow the instructions below to finish the deployment process:

  • On the “Create Stack” page, ensure that the “Choose a template” -> “Specify an Amazon S3 template URL” option is selected. The URL should already be present and this should not be changed. Click “Next” to proceed.

    Marketplace

  • In the “Specify Details” section, enter a name which identifies the deployment on AWS.

    Template name

  • Enter the details needed to properly configure the deployment. Find below the different sections you must complete before launch the instance:

TIP: Check the list of available parameters for an extended description of each of the parameters available in the CloudFormation template.

Network Configuration

  • In the “Network Configuration” section, make the following choices:

    • Choose the availability zones for the solution. You must select at least two availability zones.
    • To allow public access from any IP address to your site, set the “Allowed CIDR block for ALB access” to “0.0.0.0/0”.

    Template network access

Linux Bastion Configuration

  • In the “Linux Bastion configuration” section, make the following choices:

    • To allow SSH access from any IP address, set the “Allowed Bastion External Access CIDR” to “0.0.0.0/0”. Note that the default setting for the template is set to “127.0.0.132”, which disables remote SSH access.
    • Select your AWS SSH key pair to connect to your instances via SSH. If you don’t have a key pair, check these instructions.

    Template bastion host configuration

Amazon RDS (Aurora) Configuration

  • In the “Amazon RDS (Aurora) Configuration” section, enter an administrator password for the MariaDB database. You will need this password to perform operations directly on the database server.

    Template RDS configuration

DNS and SSL Configuration

  • Optionally and only if you wish to use a domain name, in the “DNS and SSL configuration” section:

    • Set the domain name to use with your Bitnami LAMP Production-Ready Stack site (you must own this domain).
    • Set the “Route 53 Hosted Zone ID” value to the value you obtained in Step 1.

    Template DNS configuration

ElastiCache Configuration

  • Leave the values in the “ElastiCache Configuration” and “Assets configuration” sections at their defaults.
  • Click “Next” to proceed.

Review your instance configuration

  • On the “Options” page, tag your stack so you can easily identify its resources in the future. This is a template configuration variable to find the nested templates.

    Template tags

  • Click “Next” to proceed.

  • On the “Review” page, review the details of the template and confirm your acceptance of the terms.

    Template Details

  • Click “Create” to proceed.

The CloudFormation console will now spin up the infrastructure and instances defined in the CloudFormation template. The process usually takes between 45 minutes to an hour. Use the CloudFormation dashboard to check the status of the task.

CF Dashboard

Once the deployment is ready, the CloudFormation dashboard will display the status CREATE_COMPLETE for the stack. Obtain the load balancer’s public DNS name, as follows:

  • In the stack details pane, choose the “Outputs” tab.
  • Find the URL in the “Value” column for the “ELBURL” key, as shown below:

    ELB URL

At this point, you should be able to browse to the LAMP site, by entering the DNS name directly into your browser’s address bar. You should now see the welcome page, as shown below.

LAMP home page

To learn more about the topics discussed in this tutorial, use the links below:

Last modification July 11, 2019