Danh sách bài viết trong series Kubernetes cơ bản
- Bài 1: Kubernetes Cơ Bản – Cài Đặt Minikube Và Chạy Pod Đầu Tiên
- Bài 2: Kubernetes Pod Deployment – Triển Khai Ứng Dụng Đầu Tiên
- Bài 3: Kubernetes Service Ingress – Quản Lý Truy Cập Ứng Dụng
- Bài 4: Kubernetes ConfigMap Secret – Quản Lý Cấu Hình Ứng Dụng
- Bài 5: Kubernetes EKS AWS – Triển Khai Cluster Trên AWS
- Bài 6: Kubernetes Helm – Tự Động Triển Khai Ứng Dụng Dễ Dàng
- Bài 7: Kubernetes CI/CD – Tự Động Triển Khai Với GitHub Actions
- Bài 8: Kubernetes Monitoring – Giám Sát Với Prometheus Và Grafana
- Bài 9: Kubernetes Autoscaling – Tối Ưu Hóa Cluster Hiệu Quả
Kubernetes Là Gì?
Kubernetes cơ bản là bước đầu tiên để làm quen với Kubernetes, một nền tảng mã nguồn mở giúp quản lý ứng dụng container hóa. Kubernetes (K8s) tự động hóa việc triển khai, mở rộng, và vận hành ứng dụng, được sử dụng rộng rãi trong DevOps. Trong bài này, mình sẽ hướng dẫn bạn cài đặt Minikube (một công cụ chạy Kubernetes local) và tạo Pod đầu tiên để hiểu cách Kubernetes hoạt động.
Lưu ý: Bạn cần máy tính có ít nhất 4GB RAM và đã cài Docker trên Ubuntu 22.04. Nếu bạn dùng Windows hoặc macOS, các bước tương tự nhưng cần điều chỉnh lệnh cài đặt.
Bước 1: Cài Đặt Minikube Trên Máy Local
- Hành động:
- Cài đặt Minikube:
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 sudo install minikube-linux-amd64 /usr/local/bin/minikube
- Kiểm tra phiên bản Minikube:
minikube version
- Cài đặt Minikube:
- Kết quả thực tế:
- Sau khi cài đặt, lệnh
minikube version
sẽ hiển thị:minikube version: v1.33.1 commit: 1e6c92d...
(Xác nhận Minikube đã được cài đặt).
- Sau khi cài đặt, lệnh
Bước 2: Khởi Động Cluster Minikube
- Hành động:
- Khởi động cluster Minikube với driver Docker:
minikube start --driver=docker
- Khởi động cluster Minikube với driver Docker:
- Kết quả thực tế:
- Terminal sẽ hiển thị:
minikube v1.33.1 on Ubuntu 22.04 Using the docker driver based on user configuration Starting control plane node in cluster minikube Pulling base image ... Creating docker container (CPUs=2, Memory=2200MB) ... Preparing Kubernetes v1.29.0 on Docker 24.0.5 ... Verifying Kubernetes components... Done! kubectl is now configured to use "minikube" cluster
(Dòng “Done!” xác nhận cluster đã khởi động).
- Kiểm tra trạng thái cluster:
minikube status
Output:
minikube type: Control Plane host: Running kubelet: Running apiserver: Running kubeconfig: Configured
- Terminal sẽ hiển thị:
Bước 3: Tạo Pod Đầu Tiên Và Kiểm Tra
- Hành động:
- Tạo file
nginx-pod.yaml
:touch nginx-pod.yaml
Mở file và dán nội dung:
apiVersion: v1 kind: Pod metadata: name: nginx-pod spec: containers: - name: nginx image: nginx:latest ports: - containerPort: 80
- Triển khai Pod:
kubectl apply -f nginx-pod.yaml
- Kiểm tra trạng thái Pod:
kubectl get pods
- Tạo file
- Kết quả thực tế:
- Sau khi chạy
kubectl apply
, terminal hiển thị:pod/nginx-pod created
- Lệnh
kubectl get pods
hiển thị:NAME READY STATUS RESTARTS AGE nginx-pod 1/1 Running 0 10s
(Pod
nginx-pod
ở trạng tháiRunning
).
- Sau khi chạy
Bước 4: Xóa Tài Nguyên Để Dọn Dẹp
- Hành động:
- Xóa Pod:
kubectl delete -f nginx-pod.yaml
- Dừng và xóa cluster Minikube:
minikube stop minikube delete
- Xóa Pod:
- Kết quả thực tế:
- Sau khi chạy
kubectl delete
, terminal hiển thị:pod "nginx-pod" deleted
- Sau khi chạy
minikube delete
, terminal hiển thị:Deleting "minikube" in docker ... Deleted minikube cluster
(Xác nhận cluster đã bị xóa).
- Sau khi chạy
Lưu Ý Quan Trọng
- Yêu cầu hệ thống: Minikube cần ít nhất 2 CPU và 2GB RAM. Đảm bảo Docker đang chạy trước khi khởi động Minikube.
- Driver: Bài này dùng driver Docker. Nếu bạn dùng VirtualBox hoặc HyperKit, thay
--driver
tương ứng. - Tài liệu tham khảo: Xem thêm về Minikube (Minikube Documentation) và Kubernetes cơ bản (Kubernetes Basics).