Provisioning a SmartSimple Private Cloud environment on Amazon Web Services (AWS) requires setting up the underlying infrastructure before SmartSimple can be installed. These instructions assume a setup from scratch; existing AWS components may require adjusting the steps to fit the environment.
For infrastructure specifications, see Private Cloud Infrastructure Requirements Reference.
After completing this infrastructure setup, contact Support to install the SmartSimple application components.
Who: Global administrators
When to Set Up SmartSimple on Amazon Web Services
Set up SmartSimple on Amazon Web Services in the following scenarios:
- Setting up a new Amazon Web Services environment from scratch.
- The organization has chosen AWS as its hosting platform.
- A high-availability clustered environment is needed using an AWS RDS instance.
Prerequisites
The following prerequisite must be met before starting this procedure:
A registered Amazon Web Services account.
Create the Initial Infrastructure
To create the foundational AWS infrastructure for your SmartSimple environment:
Create a Virtual Private Cloud
To create a Virtual Private Cloud (VPC):
- Select a Region in which to operate from the drop-down menu.
- For example, US East (N. Virginia)
- Click the VPC service menu and create a VPC with default tenancy.
- Create a Subnet within the VPC and select an Availability Zone from the drop-down menu.
- Create an Internet Gateway and attach it to the VPC.
- Edit the Route Table associated with the VPC and add the following route:
- Destination: 0.0.0.0/0 Target: the Internet Gateway created in step 4
Create Security Groups
To create Security Groups to define the network security:
- Create a Security Group for the web layer.
- Configure inbound rules for ports 80 (HTTP) and 443 (HTTPS) to be open from all sources (0.0.0.0/0).
- Create a Security Group for SSH access.
- Configure inbound rules for port 22 (SSH) to be open from SmartSimple office environments.
- Contact SmartSimple for the list of static IPs.
- Create a Security Group for the database layer.
- Configure inbound rules for port 3306 (MySQL) to be open from the Web Security Group.
Create an Encryption Key
To create an Encryption Key:
- Click the IAM service menu.
- Create an Encryption Key.
- This key is used for volume encryption.
Launch an EC2 Instance
To launch an EC2 Instance:
- Click the EC2 service menu and launch an EC2 Instance.
- From the AWS Marketplace, select CentOS 7 (x86_64) - with Updates HVM from the CentOS 7 image drop-down menu.
- Select m4.xlarge from the Instance Type drop-down menu.
- Click the VPC and corresponding Subnet that were created earlier.
- Create three storage Volumes. Configure the volumes as follows:
- GB root volume (/dev/sda1)
- 500 GB SmartSimple volume (/dev/sdf)
- 20 GB ext volume (/dev/sdg)
- Enable encryption using the Encryption Key created above.
- Associate the Security Groups created for the web layer and SSH access.
Add an RDS Instance (Optional)
While the above steps are sufficient for a base SmartSimple environment, the following instructions are optional if provisioning a high availability clustered environment by adding an AWS Relational Database Service (RDS) instance.
- Click the RDS service menu, create a new DB Subnet Group and add Subnets for two different Availability Zones.
- Create a new Parameter Group based on the default "mariadb10.0". Set the following parameters:
- character_set_server - utf8mb4
- connect_timeout - 60
- delayed_insert_limit - 92233720368
- delayed_insert_timeout - 31536000
- delayed_queue_size - 9222337220
- interactive_timeout - 60
- log_bin_trust_function_creators - 1
- max_allowed_packet - 1073741824
- max_heap_table_size - 1073741824
- sql_mode - no_auto_create_user,no_engine_substitution
- time_zone - your local timezone
- tmp_table_size - 1073741824
- wait_timeout - 60
- Launch a DB Instance.
- Click the MariaDB database engine (version 10.4.x).
- Select db.m4.large from the Instance Class drop-down menu.
- You may choose whether to enable Multi-AZ Deployment or not.
- Click Allocated Storage and enter 200GB.
- Select the VPC, Subnet Group, Security Group, and DB Parameter Group previously created.
- Click No in the Publicly Accessible field.
- Click Yes in the Enable Encryption field.
- Select the Encryption Key previously created.
- Click Yes in the Auto Minor Version Upgrade field to allow for automatic updates.
Create Additional Environments
To create additional environments for disaster recovery backups or development and testing, take snapshots of the EC2 and RDS instances and deploy new images from those snapshots. New VPC containers may need to be created for these environments first.