Create a Public Cluster with Public Node Group

Prerequisites

To be able to initialize a Cluster and Deploy a Workload , you need:

  • There is at least 1 VPC and 1 Subnet in ACTIVE state . If you do not have a VPC or Subnet yet, please create a VPC or Subnet according to the instructions here .

  • There is at least 1 SSH key in ACTIVE state . If you do not have any SSH key, please create an SSH key according to the instructions here .

  • Installed and configured kubectl on your device. Please refer here if you are not sure how to install and use kuberctl. In addition, you should not use a kubectl version that is too old, we recommend that you use a kubectl version that is no more than one version different from the cluster version.


Initialize Cluster

A cluster in Kubernetes is a collection of one or more virtual machines (VMs) connected together to run containerized applications. Cluster provides a unified environment to deploy, manage, and operate containers at scale.

To initialize a Cluster, follow the steps below:

Step 1: Visit https://vks.console.vngcloud.vn/overview

Step 2: At the Overview screen , select Activate.

Step 3: Wait until we successfully create your VKS account. After Activate successfully, select Create a Cluster

Step 4: At the Cluster initialization screen, we have set up information for the Cluster and a Default Node Group for you. You can keep these default values ​​or adjust the desired parameters for the Cluster and Node Group at Cluster Configuration, Default Node Group Configuration, Plugin. By default we will create a Public Cluster for you with Public Node Group.

Step 5: Select Create Kubernetes cluster. Please wait a few minutes for us to initialize your Cluster, the Cluster's status is now Creating .

Step 6: When the Cluster status is Active , you can view Cluster information and Node Group information by selecting Cluster Name in the Name column .


Connect and check the newly created Cluster information

After the Cluster is successfully initialized, you can connect and check the newly created Cluster information by following these steps:

Step 1: Visit https://vks.console.vngcloud.vn/k8s-cluster

Step 2: The Cluster list is displayed, select the icon and select Download Config File to download the kubeconfig file. This file will give you full access to your Cluster.

Step 3 : Rename this file to config and save it to the ~/.kube/config directory

Step 4: Perform Cluster check via command:

  • Run the following command to test node

  • If the results are returned as below, it means your Cluster was successfully initialized with 3 nodes as below.


Deploy a Workload

The following is a guide for you to deploy the nginx service on Kubernetes.

Step 1 : Create Deployment and Service for Nginx app

  • Create nginx-service.yaml file with the following content:

  • Deploy This deployment equals:


Step 2: Check Deployment and Service information before exposing it to the Internet.

  • Run the following command to test Deployment

  • If the results are returned as below, it means you have successfully deployed the nginx service.

Step 3: Expose Nginx Service to the Internet

  • Run the following command to expose nginx-service to the internet:

  • If the results are returned as below, it means you have successfully exposed the Service to the Internet.


Step 4: To access the just exported Nginx app, you can use the URL with the format:

Where node_ip can be the node_port address of any node in the cluster. You can get Node's External IP information at the vServer interface. Specifically, access at https://hcm-3.console.vngcloud.vn/vserver/v-server/cloud-server .

For example, below I have successfully accessed the nginx app with the address: http://61.28.231.65:31007/

If you want to expose this service through vLB Layer4, vLB Layer7, please refer to:

Last updated