/lab1-deploy-tidb-cluster-on-aws-eks

Primary LanguageTypeScriptGNU General Public License v2.0GPL-2.0

Lab 1: Deploy TiDB Cluster on AWS EKS

This lab deploys a TiDB cluster on an AWS EKS. The TiDB cluster is managed by TiDB-Operator, and the deployment process is automated with Pulumi.

Introduction

Cloud computing is the delivery of computing services -- including servers, storage, databases, networking, software, analytics, and intelligence -- over the internet ("the cloud") to offer faster innovation, flexible resources, and economies of scale, as your business needs change.

Amazon EKS is a managed Kubernetes service that makes it easy for you to run Kubernetes on AWS. Kubernetes offers automating deployment, scaling, and management of containerized applications.

TiDB is an open-source distributed SQL database that supports HTAP workloads. It provides users with a one-stop database solution, and helps improve scalability, availability and reliability for users' data storage systems.

When deploying TiDB clusters on AWS EKS, users can gain all features provided by TiDB, while leverage the benefits of operating TiDB clusters on managed Kubernetes services.

Learning Objectives

  • Understand basic usage of Kubernetes
  • Understand basic usage of AWS Kubernetes service (EKS)
  • Understand the fundamentals of operator pattern
  • Learn to deploy TiDB clusters on Kubernetes with TiDB Operator
  • Understand basic usage of TiDB cluster
  • Automate deployment process with Pulumi IaC framework

Pre-Requisites

  • An AWS account
  • VPN for connecting to AWS API and GitHub
  • Linux or MacOS or WSL2 environments

Syllabus

100 basic points + 20 bonus points = 120 total points.

  1. (25 points) Create an EKS cluster 1-create-an-eks-cluster
  2. (25 points) Deploy TiDB with TiDB Operator 2-deploy-tidb-with-tidb-operator
  3. (20 points) Explore TiDB basic usage 3-explore-tidb-basic-usage
  4. (20 points) Scale up TiDB cluster with TiDB Operator 4-scale-up-tidb-cluster-with-tidb-operator
  5. (10 points) Cleanup: Destroy the EKS cluster finished-destroy-the-eks-cluster-via-pulumi

AWS billing price

This lab will incur charges under the AWS account, described in detail at:

  • New EKS cluster control plane, 1 cluster x 0.10 USD per hour
  • Two EKS worker EC2 t2.medium instances, 2 instances * 0.0464 USD per hour
  • 4 EBS of size 1 GiB, with negligible cost

Total 0.1928 USD per hour.