Bạn có biết?
Bạn bao giờ deploy một ứng dụng trên nhiều servers và phải quản lý container bằng tay không? Restart container này, stop container kia, roll out update…
Docker Swarm giúp bạn quản lý container trên nhiều hosts như một đơn vị – tự động distribute, scale, và heal!
Docker Swarm là gì?
Docker Swarm là native orchestration của Docker, cho phép:
- ✅ Clustering – Gộp nhiều Docker hosts thành một cluster
- ✅ Orchestration – Quản lý containers như một đơn vị
- ✅ Load Balancing – Tự động phân phối requests
- ✅ Rolling Updates – Cập nhật không down-time
- ✅ Self-healing – Tự động restart container thất bại
- ✅ Service Discovery – Containers tìm thấy nhau tự động
Khái niệm quan trọng
Node
Một Docker host trong Swarm cluster:
- Manager Node – Quản lý cluster, nhận lệnh từ user
- Worker Node – Chạy containers, nhận việc từ manager
Service
Định nghĩa các containers muốn chạy:
# Tao service
$ docker service create --name web --replicas 3 -p 80:80 nginx:latest
# Scale service
$ docker service scale web=5
# Update service
$ docker service update --image nginx:alpine web
Stack
Nhóm các services liên quan:
# Deploy stack từ docker-compose.yml
$ docker stack deploy -c docker-compose.yml myapp
Task
Đơn vị công việc cho một container:
# Mỗi task là một container
# Swarm tự động schedule tasks lên nodes
# Nếu node thất bạ, task được reschedule
0 bình luận
Đang tải bình luận...
Để lại bình luận