1. Pod
1.1. Khái niệm
Mục đích của K8s là triển khai ứng dụng dưới dạng container trên một tập hợp các worker node trong một cụm.
Ví dụ: một ứng dụng X gồm front-end và back-end. Front-end là container A, back-end là container B. Nếu dựng 2 container trên worker node, việc scaling 2 container này khi có traffic lớn khá khó khăn phức tạp, đặc biệt là nếu source code của hai container có thay đổi để cải tiến.
Vì vậy, Pod ra đời để giải quyết bài toán này, Pod là một đối tượng bao bọc hai container này ở bên trong cung cấp network space, storage space để 2 container front-end, back-end có thể giao tiếp trực tiếp với nhau thông qua địa chỉ localhost. Vấn đề scaling cũng sẽ dễ dàng hơn khi chỉ cần scale đối tượng Pod lên trên các worker node.
Pod là một instance đơn lẻ của một ứng dụng.
1.2. Khởi tạo
Có 2 cách tạo đối tượng Pod
Cách 1: bằng lệnh kubectl run
kubectl run nginx --image nginx
Cách 2: bằng file YAML (gồm tên pod, tên container, image,…)
File pod definition (pod.yaml)
apiVersion: v1
kind: Pod
metadata:
name: nginx
labels:
app: nginx
tier: frontend
spec:
containers:
- name: nginx
image: nginx
Áp dụng cấu hình
kubectl apply -f pod.yaml
1.3. Bỏ túi vài lệnh
# Kiểm tra các Pod hiện có
kubectl get pods
# Tìm hiểu sâu hơn về Pod
kubectl describe pod nginx
# Tạo Pod
kubectl run nginx --image nginx
# Xoá Pod
kubectl delete pod webapp
# Chỉnh sửa thông tin Pod
kubectl edit pod redis
Để lại một bình luận