Trang chủ Thủ Thuật Cách chạy cụm Kubernetes của riêng bạn với MicroK8s

Cách chạy cụm Kubernetes của riêng bạn với MicroK8s

0
92

Cách chạy cụm Kubernetes của riêng bạn với MicroK8s

Graphic showing the Kubernetes logo

MicroK8s là một bản phân phối Kubernetes gói đơn nhẹ được phát triển bởi Canonical, được biết đến nhiều nhất với hệ điều hành Ubuntu. MicroK8s tuân theo các bản phát hành Kubernetes ngược dòng và tập trung vào việc cung cấp trải nghiệm cài đặt và quản lý dễ dàng. Đây là cách bắt đầu chạy cụm của riêng bạn.

Cài đặt

MicroK8s có sẵn trên Linux, Windows và macOS. Một trình cài đặt Windows đồ họa được cung cấp trên trang web của dự án. người dùng macOS nên sử dụng Brew trong khi người dùng Linux được phục vụ nhanh chóng.

Làm theo các bước cài đặt Snap riêng biệt nếu bạn thiếu snapd trên hệ thống của mình. Sau đó, sử dụng lệnh snap install để thêm MicroK8s:

sudo snap cài đặt microk8s --classic

ff29a96f

Điều này cài đặt phiên bản MicroK8s mới nhất. Bạn có thể chọn một thông cáo cụ thể bằng cách sử dụng --channel cờ:

sudo snap cài đặt microk8s --classic --channel = 1.19 / ổn định

Điều này sẽ cung cấp cho bạn phiên bản MicroK8s dựa trên Kubernetes v1.19.

Quảng cáo

Quá trình cài đặt có thể mất một lúc để hoàn tất khi các dịch vụ Kubernetes khởi động. microk8s status --wait-ready đang chạy – sẵn sàng cho phép bạn kiểm tra tiến trình để biết khi nào MicroK8s sẵn sàng sử dụng.

Tương tác với nhóm của bạn

MicroK8s đóng gói phiên bản riêng của công cụ dòng lệnh Kubectl. Sử dụng microk8s kubectl để tương tác với cụm của bạn, thêm một lệnh kubectl

sudo microk8s kubectl nhận tất cả - tất cả các không gian tên

Lệnh này hiển thị tất cả các tài nguyên trong cụm của bạn.

78ff86b4

Tiếp theo, tạo một tệp kê khai cơ bản để triển khai:

 apiVersion : v1
loại : Pod
siêu dữ liệu :
  tên : my-pod
đặc điểm kỹ thuật :
  thùng chứa :
    - tên : nginx
      hình ảnh : nginx: mới nhất
      các cổng :
        - tên : http
          containerPort : 80
          giao thức : TCP

Áp dụng tệp kê khai cho cụm của bạn:

sudo microk8s kubectl áp dụng -f ./manifest.yaml

MicroK8s sẽ tạo một Pod mới chạy máy chủ web NGINX. Nó sẽ hiển thị khi bạn chạy lại microk8s kubectl get all .

afc4893e

MicroK8s tương thích với tất cả các lệnh Kubectl. Nếu bạn muốn bỏ microk8s , bạn có thể sử dụng kubectl nhị phân kubectl “thực” để thay thế:

sudo microk8s kubectl config view --raw> $ HOME / .kube / config

Thao tác này xuất thông tin kết nối MicroK8s vào tệp cấu hình Kubernetes của bạn, cho phép kubectl đơn giản truy cập vào cụm của bạn.

Hầu hết các lệnh của MicroK8s đều yêu cầu quyền truy cập siêu người dùng. Để sử dụng lâu dài, hãy thêm tài khoản người dùng của bạn vào microk8s để bạn không cần sử dụng sudo mỗi lần:

sudo usermod -aG microk8s $ USER

Truy cập hình ảnh Docker

MicroK8s không thể tự động truy cập hình ảnh Docker cục bộ của bạn. Nếu bạn muốn triển khai một hình ảnh mà bạn vừa tạo, hãy nhập thủ công nó vào sổ đăng ký MicroK8s bằng cách xuất nó dưới dạng kho lưu trữ tar

docker lưu hình ảnh của tôi: mới nhất> my-image.tar
hình ảnh ctr microk8s nhập my-image.tar
Quảng cáo

Bây giờ Pod của bạn có thể tham chiếu thành công hình ảnh. Bạn có thể liệt kê tất cả các hình ảnh đã biết trong sổ đăng ký MicroK8s bằng lệnh microk8s ctr images ls .

Ngoài việc sử dụng đơn giản trên máy cục bộ, bạn nên thiết lập sổ đăng ký hình ảnh Docker chuyên dụng để lưu giữ hình ảnh của bạn. Đẩy hình ảnh vào đó và cấp quyền truy cập kéo cho MicroK8s để nó có thể truy xuất chúng từ bộ nhớ của bạn. Các bước để làm theo tùy thuộc vào cấu hình đăng ký của bạn.

Bật Bảng điều khiển Kubernetes

Bảng điều khiển web Kubernetes đi kèm với MicroK8s nhưng bị tắt theo mặc định. Bạn có thể kích hoạt nó bằng cách bật addon của nó, sau đó điều hướng đến địa chỉ IP của dịch vụ bảng điều khiển.

microk8s kích hoạt bảng điều khiển

263ff993

Dịch vụ có thể mất một vài phút để bắt đầu. Chạy microk8s kubectl get services --namespace kube-system và đợi kubernetes-dashboard hiển thị. Ghi lại CLUSTER-IP của nó và truy cập địa chỉ của nó trong trình duyệt của bạn. Bảng điều khiển Kubernetes sẽ xuất hiện, cho phép bạn tương tác với các tài nguyên của mình bằng giao diện đồ họa.

Sử dụng thêm Addon

MicroK8s đi kèm với một số bổ trợ tùy chọn khác cho các trường hợp sử dụng phổ biến. dns bổ sung hỗ trợ cho việc triển khai DNS, storage cung cấp lớp lưu trữ mặc định dựa trên các thư mục máy chủ và việc ingress cung cấp bộ điều khiển nhập cho phép bạn tạo tài nguyên định tuyến Ingress

Quảng cáo

registry là một dịch vụ đặc biệt triển khai sổ đăng ký Docker sẵn sàng sử dụng trên localhost:32000 . Sử dụng sổ đăng ký cung cấp không gian lưu trữ riêng tư mà bạn có thể đẩy hình ảnh của mình lên trước khi sử dụng chúng trong Kubernetes Pods của bạn. Tương tự, istio khởi chạy lưới Istio để cung cấp các chức năng khám phá dịch vụ.

Mô tả đầy đủ về các addon này được cung cấp trong tài liệu MicroK8s. Bạn có thể xem tất cả các phần bổ trợ có sẵn trong cài đặt của mình bằng cách chạy microk8s enable mà không có bất kỳ đối số nào. Theo mặc định, chỉ có chức năng Kubernetes tối thiểu nhất là hoạt động vì MicroK8s tập trung vào việc cung cấp trải nghiệm hợp lý.

Quản lý cụm của bạn

Tất cả các chức năng quản lý cụm được cung cấp bởi lệnh microk8s microk8s status đang chạy hiển thị tổng quan về cụm của bạn, bao gồm cả việc nó có đang chạy hay không và danh sách các phần bổ trợ đang hoạt động.

Để tắt cụm của bạn, hãy chạy microk8s stop . Thao tác này sẽ dừng tất cả các dịch vụ, đưa mọi thứ vào ngoại tuyến. Bạn khởi động lại cụm bằng lệnh microk8s start Có thể mất một vài phút để tất cả các dịch vụ của bạn chạy.

c349b824

Bạn có thể xem chi tiết kết nối cụm của mình bằng cách chạy microk8s config . Điều này tạo ra một tệp YAML tương thích với Kubectl, sẵn sàng để sử dụng với các công cụ khác.

Chạy microk8s reset sẽ đặt lại cụm của bạn về trạng thái ban đầu sau khi cài đặt. Đây là một hoạt động phá hủy tốn thời gian sẽ phá hủy tất cả tài nguyên của bạn. Nó tạo điều kiện thuận lợi cho việc thử nghiệm bằng cách cho phép bạn chia nhỏ mọi thứ mà không cần tháo chụp MicroK8s. Ổ đĩa lưu trữ Kubernetes sẽ được giữ lại theo mặc định; bạn cũng có thể xóa chúng bằng cách thêm --destroy-storage .

Các cụm nhiều nút

Mặc dù MicroK8s bắt đầu như một dự án một nút, giờ đây bạn có thể thêm các nút phụ vào cụm của mình. Các nút bổ sung cung cấp cho bạn khả năng dự phòng, cũng như tăng khả năng khối lượng công việc. Mỗi nút yêu cầu môi trường cách ly hoàn toàn của riêng nó – một máy vật lý, máy ảo hoặc vùng chứa riêng biệt. Bạn không thể chạy hai phiên bản công nhân MicroK8s trong cùng một môi trường.

Quảng cáo

Đầu tiên hãy chạy microk8s add-node trên nút ban đầu của bạn. Đây sẽ trở thành bậc thầy điều khiển điều khiển máy bay điều khiển Kubernetes.

nút bổ sung microk8s

aaff5aeb

Lệnh tạo đăng ký tạm thời cho nút mới. Nó sẽ xuất ra một microk8s join sẽ tham gia nút vào mặt phẳng điều khiển. Quá trình tham gia sẽ mất vài giây để hoàn tất. Nút phải có thể liên hệ với chủ của bạn qua địa chỉ mạng được hiển thị.

Sau khi nút được thêm, nó sẽ đủ điều kiện để lưu trữ Nhóm của bạn. Bạn có thể xem tất cả các nút có sẵn bằng cách chạy microk8s kubectl get nodes .

Loại bỏ một nút khỏi cụm là một bài tập về đảo ngược. Đầu tiên, chạy microk8s leave trên nút đích. Sau đó, chạy microk8s remove-node 10.108.0.1 trên chính, thay thế bằng địa chỉ IP của nút đã xóa. Điều này sẽ thông báo cho tất cả các nút khác về việc loại bỏ. Nút đích sẽ hoàn nguyên về cài đặt MicroK8s độc lập thông thường, trở thành nút chính của chính nó.

Sự kết luận

MicroK8s là một bản phân phối Kubernetes tối thiểu, dễ dàng tự lưu trữ trên phần cứng của riêng bạn. Nó hoàn toàn tuân thủ CNFC và đi kèm với các phần bổ trợ tích hợp cho bảng điều khiển Kubernetes chính thức, định tuyến Ingress và lưới dịch vụ Istio. Những điều này giúp bạn nhanh chóng thiết lập cụm sẵn sàng sản xuất của riêng mình có khả năng khớp với các dịch vụ Kubernetes được quản lý từ các nhà cung cấp đám mây công cộng.

Quảng cáo

MicroK8s hỗ trợ một loạt các kiến trúc phần cứng và triển khai. Nó hoạt động trên các máy trạm của nhà phát triển, trong các môi trường sản xuất có tính khả dụng cao và trên Raspberry Pi. Tính linh hoạt này cho phép bạn sử dụng chính xác cùng một công nghệ trong quá trình phát triển và sản xuất, ngay cả khi triển khai Kubernetes.

So với các dự án đối thủ như Minikube, MicroK8s vượt trội khi chạy trong môi trường hạn chế tài nguyên với chi phí tối thiểu. Nó được hưởng lợi từ việc lưu trữ riêng, sử dụng định dạng gói snap, vì vậy không có máy ảo nặng nào để chạy. Điều này giúp bạn có nhiều khả năng hơn để lưu trữ khối lượng công việc của mình và các công cụ dành cho nhà phát triển khác.

Mặc dù MicroK8s bắt đầu hoạt động như một dự án lấy nhà phát triển làm trung tâm, nhắm mục tiêu thử nghiệm và tạo mẫu cục bộ, nhưng giờ đây nó được tính là một bản phân phối Kubernetes sẵn sàng sản xuất với hồ sơ đã được chứng minh về việc theo sát các bản phát hành ngược dòng. Các cụm có thể được nâng cấp lên các bản phát hành Kubernetes mới bằng cách sử dụng lệnh snap refresh microk8s .

How to Quickly Deploy WordPress as a Docker Container

Cách nhanh chóng triển khai WordPress dưới dạng Docker Container

What Is a Race Condition?

Điều kiện Cuộc đua là gì?

How Deepfakes Are Powering a New Type of Cyber Crime

Deepfakes đang thúc đẩy một loại tội phạm mạng mới như thế nào

Why Compliance Complacency is Another Form of Technical Debt

Tại sao Tuân thủ Sự tự mãn là một dạng Nợ kỹ thuật khác

How the New Intersection Types in PHP 8.1 Give You More Flexibility

Cách các kiểu giao điểm mới trong PHP 8.1 mang lại cho bạn sự linh hoạt hơn

How to Migrate Away From GitLab Managed Kubernetes Apps

Cách di chuyển khỏi các ứng dụng Kubernetes được quản lý trên GitLab

Dịch từ: https://www.cloudsavvyit.com/13024/how-to-run-your-own-kubernetes-cluster-with-microk8s/

BÌNH LUẬN

Vui lòng nhập bình luận của bạn
Vui lòng nhập tên của bạn ở đây