Site icon saotuvi.com

Kubernetes (K8s) là gì? Khi nào nên dùng Kubernetes?

Kubernetes là gì? Thuật ngữ này không còn xa lạ với những developer có kinh nghiệm lâu năm, tuy nhiên với những coder còn mới thì đó là thuật ngữ khá mới. Nếu bạn muốn tìm hiểu kỹ hơn về Kubernetes thì hãy xem bài viết dưới đây nhé!

Kubernetes (K8s) là gì?

Kubernetes là gì?

Theo wikipedia định nghĩa

Kubernetes is an open-source container orchestration system for automating software deployment, scaling, and management. Originally designed by Google, the project is now maintained by the Cloud Native Computing Foundation.

Dịch nôm na có nghĩa Kubernetes viết tắt K8s là một hệ thống điều phối container mã nguồn mở (open sources container orchestration tool) được phát triển bởi Google.

K8s là thuật ngữ được rút gọn từ Kubernetes. “K” là chữ cái đầu tiên, “s” là chữ cái cuối và số “8” là chỉ 8 chữ cái nằm giữa “K” và “s”.

Lấy cảm hứng từ hệ thống cluster management của Google, Borg , Kubernetes giúp mọi việc liên quan đến deploy và quản lý ứng dụng của bạn diễn ra dễ dàng hơn.

Bạn có thể xem ví dụ đơn giản dưới đây để hiểu rõ hơn về Kubernetes.

Trong một dàn nhạc sẽ có một nhạc trưởng và rất nhiều nhạc công. Nhạc trưởng sẽ có nhiệm vụ chỉ huy dàn nhạc, giúp các nhạc công giữ lửa và truyền cảm xúc cho họ. Tất nhiên các bản nhạc thì được biên soạn, sáng tác bởi các nhà soạn nhạc.

Tương tự như trên, Kubernetes sẽ là nhạc trưởng, Container hoặc Services sẽ là những nhạc công. Để có thể hoạt động trơn tru cần có file config có đuôi yaml, yml và chúng đóng vai trò là nhà soạn nhạc.

Nên dùng Kubernetes khi nào?

Nên dùng Kubernetes khi nào?

Kubernetes (k8s) được sử dụng khi bạn cần quản lý và triển khai một hệ thống phức tạp với nhiều container hoặc microservices. K8s là một lựa chọn tốt cho các dự án có nhu cầu:

Tóm lại, nếu bạn đang xây dựng một hệ thống phức tạp với nhiều container hoặc microservices, sử dụng k8s có thể giúp bạn quản lý và triển khai hệ thống một cách dễ dàng hơn.

Một số hạn chế của Kubernetes

Một số hạn chế của Kubernetes

Kubernetes (k8s) là một công cụ quản lý container và triển khai microservices rất mạnh mẽ, nhưng cũng có một số hạn chế và nhược điểm sau:

Kubernetes Architecture

Một số khái niệm cần biết trong Kubernetes Architecture

K8s cluster

K8s cluster là một machine được gọi là nodes được sử dụng để chạy các ứng dụng containerized.

Có 2 thành phần cốt lõi trong K8s cluster control plane worker nodes.

Control plane

Control plane chịu trách nhiệm quản lý trạng thái của cluster. Trong môi trường sản xuất, control plane thường chạy trên nhiều nodes và trải rộng trên một số vùng trung tâm dữ liệu (data).

Control Plane

Control plane sẽ bao gồm một số thành phần cốt lõi như:

Worker nodes

Các thành phần cốt lõi của K8s chạy trên worker nodes bao gồm Kubelet, Container runtime và Kube proxy.

Kubernetes và Docker

Kubernetes và Docker thường bị hiểu nhầm là đối thủ cạnh tranh trực tiếp nhưng điều đó không đúng vì Kubernetes và Docker là những công nghệ khác nhau chúng bổ sung cho nhau để chạy các ứng dụng container.

Bạn có thể tham khảo thêm bài viết này để hiểu rõ hơn về Docker.

Docker là gì? Khi nào nên dùng Docker?

Docker là một nền tảng mở để phát triển và triển khai ứng dụng dễ dàng hơn bằng cách sử dụng các “container”. Qua đó, Docker giúp các nhà phát triển có thể dễ dàng phân tách được ứng dụng khỏi sự lệ thuộc với hạ tầng (phần cứng máy chủ, mạng, ổ đĩa,…)

200Lab BlogViệt Trần

Docker là gì?

Lời kết

Hy vọng bài viết trên của 200Lab sẽ giúp bạn hiểu hơn về Kubernetes giúp bạn đưa ra được những quyết định đúng đắn khi sử dụng Kubernetes.

Nếu bạn có định hướng trở thành DevOps chuyên nghiệp thì bạn có thể tham khảo khoá học DevOps for Backend Developer tại đây.

Bài viết liên quan:

Exit mobile version