AWS & Marketplace
#
IntroductionKupboard can be run in any environment where Docker runtime is installed. This section explains how to install and run kupboard registered with AWS Marketplace, and how to use the kupboard commands to build cloud native environment with a simple configuration.
note
If you use a kupboard container of Dockerhub instead of AWS Marketplace, skip the subscription process and move to Servers to create EC2 instances.
#
SubscriptionTo use Kupboard, you should search for kupboard
in the AWS Marketplace and select [Continue to Subscribe].
When the subscription process is complete, select [Continue To Configuration] to go to the settings page.
Select Delivery Method and Software Version from the settings menu and select [Continue to Launch].
Now you are ready to run Kupboard. Select the [View container image details] link at the bottom of the page to see commands for pulling the Kupboard container image.
#
InstallationYou must first install awscli
to use a maintainer registered with AWS Marketplace. If it's not installed, please visit Installing, updating, and uninstalling the AWS CLI
note
Before using awscli
, you must define the credentail of your AWS account as follows. If you're not familiar with awscli
, please check Set up AWS Credentials and Region for Development.
#
Login to registryBefore you pull a container image from AWS Marketplace, you must first sign in to the registry of AWS Marketplace.
#
Pull kupboard imageIf the login is successful, pull the container image.
#
Run kupboardIf the kupboard container is pulled properly, you should see the following results when using the docker run
command.
#
Bash script for running kupboard (Recommended)Instead of using docker run
to run the kupboard container, you can use bash script below, which is much simpler.
This is an example of using the bash script to run kupboard.
To mount a data
folder, use -v
option.
#
ServersKupboard clusters can be configured in a variety of ways depending on the service and application. In this example, we will create 1 server for the admin cluster, 1 server for the gateway cluster, and 4 servers for the service cluster.
note
Ec2 instances are manually created and managed in version kupboard0.9, but the feature to automatically manage instances will be added in a future release.
#
EC2 InstanceYou need to create 6 EC2 instances as the table below. OS for all instances must be Ubuntu18.04 or 20.04, and all instances must use the same key pair. The size of EBS volumes should change depending services or pakcages installed on the service cluster.
Cluster | EC2 Type | Quantity | Boot Volume | EBS Volume |
---|---|---|---|---|
Admin | t3.meidum < | 1 | 50GB | N/A |
Gateway | t3.meidum < | 1 | 50GB | N/A |
Service | t3.large < | 4 | 50GB | 50GB < |
info
Instances of the service cluster must have EBS volumes. This does not require an additional format or mount operation because they are automatically controled by kupboard during cluster initialization.
note
kupboard-0.9 only supports Ubuntu hosts, but future versions will also support CentOS.
#
Security GroupCreate security groups for kupboard clusters and set Inbound and Outbound as shown below.
Cluster | Inbound | Source |
---|---|---|
All | 22 | 0.0.0.0/0 |
1 - 65535 | kupboard cluster | |
Admin | 80,443 | 0.0.0.0/0 |
Gateway | 80,443 | 0.0.0.0/0 |
Cluster | Outbound | Destination |
---|---|---|
All | 1 - 65535 | 0.0.0.0/0 |
#
DataMove to Data