Skip to main content

Kubernetes từ đầu ...

Một công nghệ xây dựng dựa trên 15 tinh hoa vận hành hệ thống Google.
Một sản phẩm của chính Google, viết trên ngôn ngữ lập trình phát triển tại Google (Golang).
Một công nghệ mới được công bố từ giữa năm 2014, nhưng đã chiếm lĩnh thị phần không nhỏ trên các hệ thống cloud.
Một từ khoá nóng nhất mà các sysadmin/devops đều muốn có trong danh sách kỹ năng của mình.
Đó là Kubernetes !


Kubernetes là gì

Kubernetes hay K8s là một hệ thống để quản lý các "container".
Theo Kubernetes GitHub repository:
Kubernetest - Production-Grade Container Scheduling and Management
Kubernetes is an open source system for managing containerized applications across multiple hosts, providing basic mechanisms for deployment, maintenance, and scaling of applications.
Nói một cách dễ hiểu, nếu bạn biết dùng Docker hoặc rkt [0] để chạy các container, thì K8s là giải pháp để quản lý chúng (quản lý bao gồm: tạo, sửa, xoá, xếp lịch(schedule), hay mở rộng (scale)...) trên nhiều máy. Như vậy, để có thể sử dụng được K8s, bạn phải biết dùng Docker.

Ai cần Kubernetes?

- Các doanh nghiệp lớn, có nhu cầu thực sự phải scaling hệ thống nhanh chóng, và đã sử dụng container (Docker).
- Các dự án cần chạy >= 5 container CÙNG LOẠI cho 1 dịch vụ. (Ví dụ dùng >=5 máy cùng để chạy code website XYZ). Còn nhỏ hơn thì tốt nhất không dùng - đừng mang dao mổ trâu đi giết gà.
- Các startup hiện đại, chịu đầu tư vào công nghệ, để nhỡ về sau có to ra, thì to rất dễ 🙄
- Các sysadmin/DevOps muốn tăng lương, nhảy việc, vọc công nghệ mới 🤑

K8s là gì?

Là viết tắt của Kubernetes (K-8 chữ cái-s).
Trang chủ của Kubernetes là https://k8s.io  hay https://kubernetes.io/

Kubernetes nghĩa là gì

Đây không phải một từ tiếng Anh, vậy nên khó đọc/viết cho cả ta lẫn tây. Kubernetes là phiên bản tiếng Anh mô phỏng theo một từ tiếng Hy Lạp: κυβερνήτης [1] có nghĩa là "pilot" [1] /"sailing master" [3] - hoa tiêu (trên tàu biển).

 

 Phát âm Kubernetes thế nào?

Đọc là "ku-bơ-ne-títs" [2] hay /koo-ber-nay'-tace/ [3], hoặc đơn giản là "K-8s": kei-eights

Các hệ thống cung cấp Kubernetes cài đặt sẵn:
Google container engine (GKE): https://cloud.google.com/container-engine/ (free 300$ cho tài khoản mới - dùng hết thì thôi cũng được)
CoreOS techtonic: https://coreos.com/tectonic/
RedHat Openshift: https://www.openshift.com/

 

Các sản phẩm dựa trên Kubernetes

Cũng là nơi ta có thể nhìn rõ hơn K8s làm được gì, hay tìm tài liệu nếu trang chủ là không đủ:
- RedHat Openshift 3: https://www.openshift.org/
- Deis Workflow - opensource platform as a service (PaaS): https://deis.com/paas/
- Rancher - container management platform: http://rancher.com/rancher/

 

Các cách để cài đặt K8s

K8s là một hệ thống, gồm nhiều thành phần tương tác với nhau. Tuy không tới nỗi phức tạp như cài một hệ thống cloud IaaS như OpenStack, nhưng cũng không phải chỉ gõ 3, 5 cái là xong. Vậy là người ta đẻ ra hàng chục cách khác nhau để cài K8s, đang kể nhất có:

- Minikube để cài 1 cluster test chơi chơi trên máy của bạn
- kubeadm đang trong giai đoạn phát triển, để cài trên hệ thống máy vật lý / máy ảo dùng Ubuntu 16.04 hay CentOS 7
- Kargo - phần mềm dựa trên Ansible để cài trên rất nhiều nơi bao gồm cả máy vật lý/máy ảo/AWS/GCE
- Dùng SaltStack để cài https://github.com/kubernetes/kubernetes/tree/master/cluster/saltbase/
- Cài bằng tay trên CoreOS Container Linux
- kops để cài trên AWS (Amazon cloud) 
- Và rất nhiều các giải pháp khác nữa xem tại đây

 

Các đối thủ cạnh tranh

- Docker Swarm https://docs.docker.com/engine/swarm/
- Apache Mesos https://mesos.apache.org/
- Google để được so sánh, ở đây không làm việc ấy 🤑

Phần sau - "đến đít" sẽ trình bày toàn bộ kinh nghiệm làm việc / vận hành hệ thống Kubernetes.

Mi và Đồ
Hãy share và tín dụng để tác giả có động lực hơn 😘
Thảo luận, hỏi đáp Python, Django, Docker, Golang, hệ thống ... vào ngay http://invite.pymi.vn/ nhập email để nhận thư mời sau 1 phút và tham gia phòng chat của PyMi
 
Tham khảo:
[0] https://coreos.com/rkt/
[1] https://en.wikipedia.org/wiki/Kubernetes#History
[2] https://www.youtube.com/channel/UCZ2bu0qutTOM0tHYa_jkIwg
[3] https://twitter.com/francesc/status/487412202932936704?lang=en


Phần sau: http://www.familug.org/2017/04/kubernetes-end.html

HVN at http://www.familug.org/ and http://pymi.vn

Comments

Post a Comment

Popular posts from this blog

Tài liệu và hướng dẫn học Python

Để tiết kiệm thời gian, tốt nhất là đi học PyMI Updated: 130617 Sau đây là các tài liệu khuyên dùng: Vì nhiều lý do, nên học python2.7 tại thời điểm hiện tại (giờ là tháng 6/2013 - muốn biết tại sao thì tự tìm hiểu) python 3.5+ (giờ là tháng 2/2017) Chuẩn bị: 1. biết bật tắt máy 2. biết cài python 3. tập gõ 10 ngón - gõ 2 ngón hay 1 ngón cũng không sao, nhưng 10 ngón là cách dễ nhất để gõ nhanh nhất. Tài liệu - Nên dùng tài liệu tại trang chủ của Python làm chính, tham khảo thêm các tài liệu khác tại http://www.familug.org/2016/12/free-ebook.html Căn bản, mới học 1.1 Python PyMI.vn https://pymi.vn/tutorial/ 1.2. Python offical tutorial kết hợp làm bài tập trên HackerRank  (đề bài bằng tiếng Anh, nhưng Google translate 1 lúc cũng ra vì có nhiều ví dụ mẫu đi kèm). Học viên của Pymi.vn có rất nhiều học viên đã tự học với Learn Python the hard way nhưng chưa thấy ai thành công cả. Hai link dưới nên đọc sau khi đã nắm được những phần cơ bản của ngôn ngữ pytho...

The PyMiers

New FAMILUG