Thiết lập Kubernetes Cluster trên AWS EC2 Instance với Ubuntu bằng kubeadm

theanh

Administrator
Nhân viên
Trong bài viết này, chúng ta sẽ xem cách thiết lập cụm Kubernetes với 2 Worker Node và 1 Master Node trên Máy chủ Ubuntu 18.04 LTS. Chúng ta sẽ sử dụng công cụ "kubeadm" để thiết lập cụm. Kubeadm là công cụ được xây dựng để cung cấp "kubeadminit" và "kubeadmjoin" để tạo cụm Kubernetes. Trước khi tiến hành tạo cụm, chúng ta hãy cùng tìm hiểu sơ qua một số thuật ngữ.
  1. Docker:
    Docker là nền tảng mở để phát triển, vận chuyển và chạy ứng dụng. Docker cho phép bạn tách biệt các ứng dụng khỏi cơ sở hạ tầng để có thể phân phối phần mềm nhanh chóng. Với Docker, bạn có thể quản lý cơ sở hạ tầng theo cùng cách bạn quản lý ứng dụng.
  2. Hình ảnh:
    Hình ảnh là mẫu chỉ đọc có hướng dẫn tạo vùng chứa Docker. Thông thường, một hình ảnh dựa trên một hình ảnh khác, với một số tùy chỉnh bổ sung
  3. Container:
    Container là một phiên bản có thể chạy của một hình ảnh. Bạn có thể tạo, bắt đầu, dừng, di chuyển hoặc xóa một container bằng cách sử dụng Docker API hoặc CLI. Bạn có thể kết nối một container với một hoặc nhiều mạng, đính kèm bộ lưu trữ vào container đó hoặc thậm chí tạo một hình ảnh mới dựa trên trạng thái hiện tại của nó.
  4. Kubernetes:
    Kubernetes là một hệ thống điều phối container nguồn mở để tự động hóa việc triển khai, mở rộng quy mô và quản lý ứng dụng.
  5. Node:
    Anode đại diện cho một máy duy nhất trong cụm.
  6. Pod:
    A là một nhóm các container được triển khai cùng nhau trên cùng một máy chủ. Đây là đơn vị thực thi cơ bản của ứng dụng Kubernetes.
  7. Triển khai:
    Một Triển khai chạy nhiều bản sao của ứng dụng của bạn và tự động thay thế bất kỳ phiên bản nào bị lỗi hoặc không phản hồi. Nó cung cấp các bản cập nhật khai báo cho Pod và ReplicaSet.
  8. Bộ bản sao:
    Nó đảm bảo có bao nhiêu bản sao của một pod sẽ chạy. Nó có thể được coi là sự thay thế cho bộ điều khiển sao chép.
  • Bộ điều khiển sao chép:
    Nó là một trình giám sát cho các pod chạy lâu dài. Nó sẽ khởi chạy một số lượng pod được chỉ định gọi là bản sao và đảm bảo rằng chúng luôn chạy.
  1. Dịch vụ:
    Nó là một khái niệm trừu tượng xác định một tập hợp logic các Pod và một chính sách để truy cập chúng.

Máy chủ API, etcd, Trình quản lý bộ điều khiển & Trình lập lịch, là các thành phần của Master và Docker, Dịch vụ Kubelet & Dịch vụ Proxy Kubernetes là các thành phần của Worker Node. Chúng tôi sẽ không thảo luận về các thành phần này trong tài liệu này. Nếu bạn muốn biết về các thành phần này, bạn có thể truy cập trang chính thức của Kubernetes tại đây.

Điều kiện tiên quyết​

  1. 3 Máy chủ Ubuntu 18.04 có tối thiểu 2 GB RAM và 2 CPU.
  2. Một người dùng hệ thống có quyền truy cập "sudo" trên mỗi máy chủ.

Những gì chúng tôi sẽ do​

  1. Thiết lập cụm Kubernetes bằng kubeadm

Thiết lập cụm Kubernetes bằng kubeadm​

Tại đây,

Chúng ta có 3 máy chủ Ubuntu 18.04 LTS.

Máy chủ 1= node1
Máy chủ 2= node2
Máy chủ 3= master

Trước khi tiến hành cài đặt thực tế, hãy thay đổi tên máy chủ của các máy chủ.

Bạn có thể sử dụng các lệnh sau để đặt tên máy chủ trên mỗi máy chủ. Sau khi thực hiện các lệnh sau trên mỗi máy chủ, hãy đăng nhập lại vào máy chủ để máy chủ nhận được Tên máy chủ mới.
Mã:
sudo hostnamectl set-hostname "master"
sudo hostnamectl set-hostname "node1"
sudo hostnamectl set-hostname "node2"
Thực hiện theo các bước được đề cập bên dưới để đưa cụm Kubernets đang hoạt động lên.

Lấy khóa gpg của Docker (Thực hiện lệnh sau trên Tất cả các Nút):
Mã:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
Thêm kho lưu trữ Docker(Thực hiện lệnh sau trên Tất cả các Nút):
Mã:
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
 $(lsb_release -cs) \
 ổn định"




Lấy khóa gpg Kubernetes(Thực hiện lệnh sau trên Tất cả các Nút):
Mã:
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
Thêm kho lưu trữ Kubernetes(Thực hiện lệnh sau trên tất cả các nút):
Mã:
cat
 
Back
Bên trên