‫Đối với cụm đầu tiên của bạn, thậm chí có thể là một
‫vài cụm đầu tiên của bạn, bạn sẽ không phải lo lắng quá
‫nhiều về khái niệm không gian tên và ngữ cảnh này.
‫Tuy nhiên, bạn cần lưu ý rằng nó
‫tồn tại trong trường hợp bạn cần sử dụng.
‫Không gian tên về cơ bản là các cụm ảo, hoặc khung
‫nhìn ảo, bên trong một cụm duy nhất.
‫Nó không chỉ lọc chế độ xem của lệnh để bạn chỉ
‫thấy một số thứ nhất định khi
‫nhập lệnh mà còn với các plugin chính sách mạng phù
‫hợp, có thể kiểm soát mạng.
‫Điều này hơi khác một chút so với Swarm ở chỗ Swarm,
‫ngoài hộp, bạn sẽ tạo các mạng lớp phủ khác nhau và mọi
‫thứ về cơ bản là riêng tư.
‫Trong Kubernetes, việc kết nối mạng và kiểm soát các ứng dụng cũng như quyền riêng tư
‫của chúng cũng như những gì chúng có thể xem và truy cập cũng
‫như những gì được kiểm soát về mặt vật lý ở đó thực sự phụ thuộc
‫vào plugin mạng của bạn.
‫Bản thân không gian tên không liên quan đến không gian tên Docker
‫mà bạn có thể đã nghe nói đến, nó thực sự là
‫một phần của hệ thống con Linux và đó là cách các
‫vùng chứa hoạt động. Đây không phải là bất cứ điều gì để làm với điều đó.
‫Đây chỉ đơn giản là Kubernetes nói, này, bạn có thể có rất
‫nhiều thứ đang diễn ra trong cụm của mình và tôi đang cho
‫bạn cơ hội tạo các cụm nhỏ nhỏ nơi bạn đặt
‫không gian tên với ngữ cảnh và đó là cách nhìn
‫của bạn thay đổi bối cảnh của bạn.
‫Bạn có thể thay đổi những gì bạn thấy.
‫Sau đó, không gian tên là các phân đoạn
‫khác nhau để lọc các lệnh, cũng như có
‫thể là mạng. Trên hệ thống của tôi ở đây trên
‫máy tính để bàn của tôi, tôi chỉ thấy kubectl get namespace và lệnh đó
‫hiển thị cho tôi 4. Đó là
‫tiêu chuẩn bạn sẽ thấy.
‫Mặc định là những gì bạn đã làm việc cho đến nay.
‫Điều đó được tạo cho không gian tên mặc định của các
‫ứng dụng của bạn. Điều duy nhất mà nó thực sự
‫cho bạn thấy khi bạn thực hiện một
‫kubectl nhận được tất cả là bản thân điểm cuối API Kubernetes, đúng không.
‫Cho đến khi chúng tôi bắt đầu thêm ứng dụng, chúng tôi thực
‫sự không thấy gì ở đó. Về mặt kỹ thuật, tất cả
‫những thứ này đang chạy trong nền, đúng không. Đó là những gì kubectl nhận được tất cả -
‫tất cả các không gian tên.
‫Bạn có thể xem tất cả các vùng chứa
‫API và những thứ không chạy bên trong chính
‫Kubernetes bằng lệnh đó. Nếu tôi xem xét tất cả các không gian tên cùng
‫một lúc, tôi nhận được mọi thứ bao gồm cả nội dung hệ thống.
‫Đây là một cái nhìn về những gì nó sẽ trông
‫như thế nào trên minikube đặt mọi thứ vào các pod của riêng chúng
‫để chạy chính cụm.
‫Có rất nhiều điều đang diễn ra ở đó.
‫Nhận ra rằng khi bạn thường sử dụng
‫Kubernetes, theo mặc định, dòng lệnh sẽ tập trung vào không
‫gian tên mặc định.
‫Bạn sẽ chỉ thấy các ứng dụng của mình thực sự
‫ở đó, ngoài điểm cuối API.
‫Đó là một điều tốt, đúng. Nó che giấu sự phức
‫tạp của những gì đang diễn ra trong nền từ
‫lệnh hàng ngày của bạn, bởi vì bạn không thực sự
‫cần phải xem những thứ đó trừ khi bạn cần nâng cấp hoặc thay đổi nó
‫hoặc nếu bạn gặp sự cố. Bối cảnh có tác dụng
‫thiết lập chế độ xem của bạn khi bạn đang chạy các lệnh.
‫Kubectl làm được rất nhiều thứ, đúng không.
‫Nó có thể kết nối với các cụm khác nhau.
‫Nó có thể thay đổi xác thực hoặc người dùng mà
‫bạn đang sử dụng để nói chuyện với cụm mà chúng
‫ta chưa nói đến hoặc không gian tên.
‫Vì vậy, có ba phần này, thực sự, của một bối cảnh.
‫Đó là cụm, xác thực hoặc người dùng, và sau đó
‫là không gian tên mà bạn muốn xem.
‫Tất cả những gì được xác định, theo mặc
‫định, trong một tệp bên trong. thư mục kube của thư mục
‫chính của bạn.
‫Trong đó có một tệp được gọi là cấu hình, và
‫về cơ bản nó sẽ là tệp YAML của tất cả, ba phần trong số đó.
‫Bạn có thể có nhiều mục trong đó và bạn có thể chỉnh
‫sửa nó theo cách bạn muốn.
‫Bạn có thể có một loạt các cụm khác nhau và miễn là bạn có
‫chứng chỉ để nói chuyện với họ, xác thực phù hợp, bạn có
‫thể đặt tất cả nội dung đó vào tệp đó và đó là thứ
‫bạn muốn giữ bí mật. Nó không phải
‫là thứ bạn thực sự muốn chia sẻ vì nó
‫thường có các khóa xác thực của bạn để
‫nói chuyện với một cụm. Nếu bạn sử dụng
‫lệnh cấu hình kubectl với lệnh phụ của ngữ cảnh lấy, đó là số nhiều, về
‫cơ bản bạn có thể thấy kết quả
‫đầu ra của tệp đó. Thay vì đổ nó thô, bạn
‫thực sự có thể thấy một danh sách nhỏ
‫về những gì nó có bên trong nó.
‫Trong trường hợp của tôi, tôi đã có Máy tính để bàn Docker tiêu chuẩn
‫trên máy cục bộ của mình. Mục nhập đó ở đó hai
‫lần cho một vài phiên bản cuối cùng của Docker Desktop vì họ đã thay
‫đổi tên nên họ giữ cả hai trong đó để tương thích.
‫Sau đó, tôi có một minikube cục bộ và
‫một phiên bản từ xa của micro K8s chạy
‫trên máy chủ Ubuntu.
‫Vì vậy, bạn có thể tưởng tượng rằng nếu tôi đang
‫quản lý rất nhiều máy chủ khác, tôi không nhất thiết lúc nào cũng
‫muốn ssh vào những máy đó. Tôi thực sự chỉ muốn ngồi trên máy cục bộ của
‫mình và nói chuyện với API từ xa đó.
‫Bạn có thể sử dụng lệnh cấu hình kubectl với bất kỳ
‫tùy chọn nào đã đặt. Bạn chắc chắn muốn
‫kiểm tra trợ giúp ở đó. Tuy nhiên, có các tùy chọn đặt
‫để đặt giá trị mặc định cho từng cái này, vì
‫vậy bạn có thể thay đổi người dùng để
‫có một xác thực khác. Vì vậy, có thể bạn có
‫quyền của Chúa thay vì chỉ một tập hợp con các lệnh mà
‫Kubernetes có thể chạy. Hoặc, có thể bạn sẽ thay đổi
‫cụm mà bạn đang nói chuyện.
‫Thậm chí còn có các plugin dòng lệnh nếu bạn tìm
‫kiếm trên Google để cho phép bạn
‫xem trong trình bao của mình bạn đang sử dụng ngữ cảnh nào.
‫Điều đó khá hữu ích khi bạn quản lý một loạt
‫các cụm khác nhau. Bạn muốn biết, tôi
‫đang nói chuyện với ai đây? Bạn thực sự có thể thiết lập
‫điều đó, giống như cách các lời nhắc nhận sẽ cho bạn biết bạn
‫đang ở chi nhánh nào. Những điều này sẽ cho bạn biết, trong lời nhắc
‫của bạn, bạn có bối cảnh nào.