Out-of-the-box installation on AWS

This is a guide to help you get an out-of-the-box Charmed Kubeflow solution on AWS. In order to to achieve that, you will need to follow the steps below by configuring the EC2 instance.

Please bear in mind that once it is set, there is a need for you to wait for the Charmed Kubeflow Appliance to be deployed. Depending on your network, it will take between 30 to 60 minutes.


Install Kubeflow with AWS CloudFormation template

You can find the latest cloud formation template in this repo. Clone the repo and log in to the AWS console. Head to the cloudFormation service. Click on create stack > with new resources (standard) option. Choose the template is ready > Upload a template file.

Set Form Parameters

Following are the fields needed to run the Kubeflow AWS appliance:

By default the template provides reasonable defaults.

Instance type parameter

The appliance will create a single EC2 instance with Kubeflow. Make sure to choose an instance type more powerful than t2.2xlarge (at least 32GB of RAM and 4vCPU). Get yourself informed about the pricing for each instance before committing.

Instance volume size

Size of the gp2 volume attached to the EC2 instance. Recommended value is 100GB at least. As mentioned in the note the volume will be deleted on instance deletion so make sure to backup your work.

Key Pair

You need to specify the keypair in order to ssh to the instance. Make sure that you have your keypair created before the appliance creation (manual).

Note: By default the security group for instance will not allow you to ssh (security feature). In order to later ssh to the instance you need to enable the port for SSH in the security group (after the appliance is deployed).

Kubeflow Dashboard Username/Password

Credentials for Kubeflow dashboard. Changing the default is highly recommended.

Public Subnet CIDR/VPC CIDR

The appliance creates a private VPC with a public subnet connected to the internet gateway. With these settings you can override the default values.

Please make sure that the Subnet CIDR is within VPC CIDR

Allow ssh to the instance

By Default the ssh port is disabled for the security group connected with the EC2 instance. In order to ssh to the instance you need to enable it as follows. Go to EC2 service and locate the instance

Click on the security group connected with the instance.

Now create new Inbound rule for ssh (click on edit inbound rules) and add rule like this

Now you should be able to ssh with the key you provided in the form.

$ ssh -i <key-pair>.pem -D 9999 ubuntu@<ec2-ip>

Waiting for deployment

After the appliance deployment you need to wait until Kubeflow is ready. The whole setup takes around 40 minutes. You can ssh into the instance and run

juju status --watch 5s

Wait until all listed units are in Active state

Access the Dashboard

In order to access the dashboard you should setup socks proxy in your browser. In case of Mozila Firefox head over to Settings > Network settings. Set the Socks Host to localhost with the port you open with ssh command.

Head over to the to access the Dashboard. Use the credentials from the form.

Last updated 6 days ago.