A collection of common interactive command line user interfaces to setup and maintain a new kubernetes cluster.
Creating and maintaining a production-grade kubernetes cluster will incur you charges
All commands start with ops run k8s
. From there, you can run the following commands to interact with your AWS-hosted Kubernetes cluster
Things you need to do the following commands successfully:
- AWS
accessKeyId
: Can be obtained from the IAM section on your AWS console - AWS
accessKeySecret
: Can be obtained from the IAM section on your AWS console - Cluster Name: The name of the cluster you might want to deploy
- Region: The region you want to deploy the cluster to
- [Optional] Domain: For private clusters, you would need your own domain and hosted zone
- [Optional] SSH key pair in your
~/creds
folder namedcluster_rsa
andcluster_rsa.pub
for private clusters. For more information, see Generating SSH Key Pair
- Will create a new kubernetes cluster for in an AWS account for you
- Takes about ~15 minutes to finish successfully
- Will delete a cluster that has been deployed in an AWS account
- Allows you to scale the number and instance size of worker nodes in the cluster
- Takes about ~15 minutes to finish successfully
You would also need:
- Instance size: The size you want to upgrade the worker node size to
- Node Count: How many worker nodes you want the cluster to have after the update
- Allows you to deploy you app to the cluster. It can also deploy any docker image.
You would need:
- A docker image containing your application
- That image must be exposed at a certain port if you want to make it public
Below are links that can bootstrap your knowledge on technologies that is a pre-requisite to learn this op
Run the following command
mkdir creds && ssh-keygen -b 4096 -t rsa -C "cluster_rsa" -N "" -f ~/creds
- Amazon Route 53 Tutorial
- Connecting a Domain to an AWS EC2 Instance Using Route53
- Creating a Subdomain That Uses Amazon Route 53 as the DNS Service without Migrating the Parent Domain
The Op name would be k8s
, instead of kubernetes-ops
.
Please take note of this when publishing the op, as it would be under k8s
.