# 1. Khởi tạo Kubernetes cluster

{% hint style="info" %}
**Điều kiện cần thiết:** Để tạo Kubernetes Cluster cần có các tài nguyên sa&#x75;**:**

* Quota CPU, RAM, Storage, Instance đủ cho Cluster với cấu hình mong muốn.
* 01 Public IP Available: Sử dụng cho Kubernetes API và Ingress.
* 01 VM Network: Network được sử dụng cho Kubernetes Nodes, được người sử dụng tạo ở menu Networking > Subnet. Cần tạo Subnet có “Static IP Pool” với option Advanced.
  {% endhint %}

**Bước 1:** Sau khi kích hoạt dịch vụ FKE, trên **Menu** chọn mục **Kubernetes** > **Create**.

![](https://2837260264-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F18Kpdo0VNH9pUQatMCfo%2Fuploads%2F94xwZmpKPQj50Wb0hc9R%2Fcreate.jpg?alt=media\&token=9a9083cc-a8a0-40c6-bf71-e3b2aae9e4a9)

**Bước 2:** Màn hình Create New Kubernetes Cluster hiện ra, người dùng nhập các thông tin cần thiết để khởi tạo Kubernetes Cluster.

![](https://2837260264-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F18Kpdo0VNH9pUQatMCfo%2Fuploads%2F5x5NIStwslxVJJEgaqHJ%2Fcreate1.jpg?alt=media\&token=b1021374-b382-445f-94b5-8b87548576b2)

**Information common**

* **Name:** Tên Cluster.
* **Public IP:** Chọn Public IP sử dụng cho Kubernetes Cluster. IP này sẽ được gán với các Virtual IP của LB cho các chức năng sau: k8s API (TCP-6443), k8s ingress (TCP-80, TCP-443).
* **Version:** Version của Cluster.
* **Network:** Subnet sử dụng để deploy các VM của Kubernetes Cluster.

**Master Configuration**

* **Type:** Loại cấu hình VM instance (CPU & Memory) cho Master Node.
* **Disk (GB):** Dung lượng root disk của Master Node.
* **High Availability:**

  Disable: Quantity (1) tương ứng là số VM instance Master Node cho cụm k8s là 01.

  Enable: Quantity (3) tương ứng là số VM instance Master Node cho cụm k8s là 03.

**Worker Configuration:**

* **Type:** Loại cấu hình VM instance (CPU & Memory) cho Worker Node.
* **Disk (GB):** Dung lượng root disk của Worker Node.
* **Quantity:** số VM instance Worker Node cho cụm k8s.

**Storage Policy & Load Balancer**

* **Policy:** Chọn Storage Policy sử dụng cho Disk của các VM trong Kubernetes Cluster.
* **LB Size:** Cấu hình của Load Balancer.\
  Standard: Max 2000 CCU, 4000 http req/s, bandwidth 100Mbps.\
  Advanced: Max 4000 CCU, 8000 http req/s, bandwidth 100Mbps.\
  Premium: Max 8000 CCU, 16000 http req/s, bandwidth 100Mbps.

**Nodes Credentials**

* Password: Password sử dụng để đăng nhập vào VM Node (user root)
* Public Key: Key sử dụng để đăng nhập vào VM Node (user root). Người sử dụng tạo trong menu “SSH Management”

**NFS Storage**

* Check box: Chọn để deploy NFS Persistent Storage cùng với Kubernetes Cluster.
* Disk (GB): Dung lượng của NFS Storage. Lưu ý sizing phù hợp, việc thay đổi dung lượng disk sẽ thực hiện manual bởi người sử dụng.

**Advance Config**

Chọn biểu tượng hình “con mắt” để hiển thị các thông tin nâng cao cho Kubernetes Cluster. Nếu bạn không hiểu rõ các tham số này, để mặc định.

* Pod Network: Network sử dụng cho Pod trong cluster.
* Service network: Network sử dụng cho Service trong cluster.
* Network Node Prefix: Subnet Prefix cho Pod trong Node
* Max Pod per Node: Số Pod tối đa trên mỗi Kubernetes Node.

**Bước 3:** Kiểm tra lại toàn bộ các thông số đã nhập, chọn **Create**.

Quá trình Create Cluster sẽ thực hiện, trong khi thực hiện người sử dụng không thể thao tác chỉnh sửa Cluster cho đến khi quá trình hoàn tất.
