‫Trời ơi. Tôi cá rằng bạn đã chờ
‫đợi để truy cập vào dòng lệnh Kubernetes trong một thời gian.
‫Nhưng may mắn thay, chúng tôi đã có một số khái niệm khác biệt.
‫Vì vậy, chúng ta hãy vào dòng lệnh.
‫Điều đầu tiên chúng ta cần đảm bảo rằng bất
‫cứ điều gì bạn đã làm với việc thiết lập Kubernetes, nó đang chạy.
‫Cách chúng tôi có thể làm điều đó tương tự như phiên bản Docker và
‫phiên bản Soạn thảo và những thứ tương tự.
‫Chúng ta có thể vào shell và gõ kubectl,
‫đó là phiên bản K U B E C
‫T L. Bạn sẽ quay lại các phiên bản.
‫Điều này cũng giống như với Docker, nơi bạn nhận được phiên bản máy khách và
‫sau đó là phiên bản máy chủ.
‫Hãy nhớ rằng tất cả những công cụ dòng lệnh này đang nói
‫chuyện với một API từ xa.
‫Trong trường hợp này, có thể đó là API trên máy của bạn.
‫Cũng giống như với Docker, Swarm và Compose, dòng lệnh
‫kubectl cũng có thể nói chuyện với API Kubernetes
‫từ xa.
‫Bây giờ bạn đã nhận lại các phiên bản máy
‫chủ khách hàng, bạn đã sẵn sàng. Nếu bạn gặp lỗi, có thể
‫là do phiên bản máy chủ không hiển thị và nó
‫không thể kết nối. Điều đó có nghĩa là
‫bằng cách nào đó, bạn bị định cấu hình sai và CLI cục bộ của bạn không
‫thể kết nối với máy chủ Kubernetes. Tôi sẽ kiểm tra cách bạn
‫triển khai nó để đảm bảo rằng nó đang chạy.
‫Có thể nếu bạn đang sử dụng Docker Desktop, bạn cần
‫khởi động Docker và sau đó đảm bảo rằng Kubernetes
‫đang chạy trong cài đặt. Nếu đó là một số cách khác, chỉ
‫cần kiểm tra video cài đặt. Nếu bạn gặp bất kỳ vấn đề nào với vấn đề đó, hãy
‫liên hệ với phần Hỏi & Đáp hoặc trong Slack.
‫Được rồi. Thực sự có hai cách để triển
‫khai nhóm trong Kubernetes. Đang thực hiện nó tại
‫dòng lệnh, nơi bạn chỉ định tất cả các tùy chọn tại
‫dòng lệnh. Hoặc, có sử dụng YAML.
‫Điều này có thể tương tự về khái niệm với các dịch vụ và ngăn
‫xếp trong Swarm, nhưng tất nhiên, khi bạn thực sự tìm hiểu
‫kỹ, sẽ có rất nhiều thứ khác nhau
‫nằm dưới vỏ bọc. Vì vậy, tôi không thích đưa ra sự tương
‫tự đó, nhưng đó thực sự là hai tùy chọn bạn có là dòng lệnh hoặc YAML.
‫Hãy tập trung vào dòng lệnh trong vài phút.
‫Lệnh đầu tiên chúng ta sẽ chạy ở đây
‫là kubectl run.
‫Vì vậy, nó tương tự như chạy docker.
‫Nginx của tôi, và bạn có thể gọi nó bất cứ thứ gì bạn muốn.
‫Đây là tên triển khai của bạn. Và sau đó - hình ảnh, và
‫chúng tôi sẽ chỉ định tên hình ảnh ở đây.
‫Hãy cứ sử dụng Nginx như chúng ta đã quen và đánh trả.
‫Trong một phút, hãy bỏ qua cảnh báo mất giá nếu bạn
‫nhận được điều đó trong một số phiên bản
‫gần đây của Kubernetes. Chúng ta sẽ nói về điều đó trong một chút.
‫Nhưng bây giờ, chúng ta hãy xem những gì vừa xảy ra.
‫Chúng ta có thể sử dụng điều đó với lệnh kubectl get.
‫kubectl lấy vỏ.
‫Những gì bạn sẽ thấy ở đó là đối tượng bạn
‫được đặt tên, cùng với một số ký tự ở cuối nó, và
‫bạn sẽ thấy rằng 1 trong 1 đang chạy.
‫Điều này rất giống với khái niệm dịch vụ trong
‫Swarm nơi chúng tôi theo mặc định chỉ chạy
‫một bản sao.
‫Bạn có thể thấy tên của nó ở đó.
‫Tại sao chúng ta có cái tên kỳ lạ đó?
‫Điều này liên quan đến cách hoạt động của
‫lệnh kubectl run.
‫Khi bạn đang sử dụng chạy như hiện
‫tại trong Phiên bản 1. 14, về mặt kỹ thuật, đó
‫là sử dụng bộ điều khiển Triển khai.
‫Bộ điều khiển triển khai đó tạo bộ điều khiển ReplicaSet.
‫Bộ điều khiển ReplicateSet đó sau đó tạo các nhóm.
‫Trong trường hợp này, nó chỉ là một bản sao.
‫Vì vậy, nó chỉ có một nhóm.
‫Nếu chúng tôi đã lấy tất cả kubectl, thì bạn sẽ thấy tất
‫cả các đối tượng được liệt kê ở đó.
‫Bạn sẽ thấy vỏ.
‫Bỏ qua dịch vụ bây giờ.
‫Chúng ta sẽ nói về điều đó trong một chút.
‫Triển khai và trong ReplicaSet.
‫Bạn có thể thấy các lớp khác nhau này
‫của mô hình đối tượng và Kubernetes xuất hiện ở đây, nơi chúng ta chỉ thực
‫hiện một lệnh duy nhất, nhưng nó thực sự tạo ra nhiều đối
‫tượng cho chúng ta.
‫Hãy lên bảng vẽ của tôi và mô tả cách các đối
‫tượng này liên quan với nhau.
‫Như bạn đã thấy trong Kubernetes, chúng tôi có nhiều mức
‫độ trừu tượng và kiểm soát hơn so với trước đây trong
‫Swarm hoặc trong chính Docker.
‫Trong trường hợp này, khi chúng tôi chạy kubectl, nó, trong
‫nền, tự động tạo ra nhiều phần trừu
‫tượng khác nhau cho chúng tôi.
‫Nó tạo ra nhóm, nhưng nó cũng tạo xung quanh đó một ReplicaSet
‫và xung quanh đó, một Triển khai.
‫Hãy đi đến bảng vẽ, và tôi sẽ cho bạn thấy những điều trừu tượng này
‫liên quan với nhau như thế nào.
‫Xin nhắc lại, chúng tôi có Docker đang chạy bên dưới.
‫Sau đó, chúng tôi có một số vùng chứa đang chạy đang quản lý Kubernetes và tôi sẽ không nói
‫về những điều đó ngay bây giờ.
‫Hãy chỉ biết rằng chúng ta có một tập hợp các
‫vùng chứa khác nhau ở đây chỉ để chạy Kube.
‫Khi chúng tôi chạy kubectl, những gì nó tạo ra rõ
‫ràng là vùng chứa Nginx của chúng tôi, đó là
‫phần mà chúng tôi biết về.
‫Tuy nhiên, các mức độ kiểm soát khác nhau, hoặc mức độ trừu tượng mới
‫là phần thú vị.
‫Cái đầu tiên ở đây là vỏ.
‫Một lần nữa, nó có thể chạy một hoặc nhiều vùng chứa bên trong nhóm này.
‫Là một phần của nhóm đó, nó có thể tạo ra các
‫tập nếu chúng ta cần. Nó đã tạo ra
‫NIC cho nhóm.
‫Cách nó tạo nhóm đó là khi
‫chúng tôi nhập kubectl run, nó tạo ra một
‫Triển khai.
‫Bộ điều khiển triển khai quản lý ReplicaSets.
‫Chúng tôi có nhiều cấp độ trừu tượng.
‫Triển khai đó đã được tạo và nó thực hiện những
‫việc như cập nhật liên tục hoặc Triển khai màu xanh lam / xanh
‫lá cây và nhiều thứ khác mà bạn nghĩ đến khi nghĩ về các
‫dịch vụ điều phối như chúng tôi đã có trong dịch vụ Swarm.
‫Khi triển khai đó được tạo, nó đã tạo một
‫ReplicaSet của một.
‫Bản thân nó là một bộ điều khiển khác.
‫Công việc của ReplicaSet là đảm bảo rằng số lượng nhóm
‫mà chúng tôi yêu cầu hiện đang chạy.
‫Trong trường hợp này, chúng tôi để mọi thứ ở chế độ mặc định.
‫Vì vậy, Triển khai của chúng tôi đã tạo một ReplicaSet
‫và ReplicaSet đó đã tạo một nhóm.
‫Chúng tôi có thể kiểm soát từng mức độ trừu
‫tượng khác nhau này. Chúng ta có thể nhập
‫các lệnh để kiểm soát Triển khai. ReplicaSet, hoặc chính nhóm trực
‫tiếp, nhưng thông thường trong những trường hợp này, bạn
‫sẽ luôn quản lý chính Triển khai.
‫Sau đó, nó sẽ lo phần còn lại.
‫Để cung cấp cho bạn ý tưởng về lý do tại
‫sao bản thân ReplicaSet ở giữa tồn tại, là nếu chúng
‫tôi muốn tạo một bản sao khác của nhóm này, giống như
‫khi chúng tôi tạo bản sao dịch vụ Swarm.
‫Trong bản vẽ của tôi ở đây, tôi đã tạo một
‫bản sao của nhóm đó.
‫Đó sẽ là nếu chúng tôi mở rộng các bản sao thành hai.
‫Rất giống với cách Swarm thực hiện.
‫Một lần nữa, công việc của
‫ReplicaSet là đảm bảo rằng hai nhóm đang chạy với
‫cùng một mẫu. Công việc của Người
‫triển khai là quản lý cấu hình ReplicaSet.
‫Trước khi chuyển sang bài giảng tiếp theo, chúng ta hãy xóa tất cả các tài
‫nguyên này mà chúng ta vừa tạo bằng lệnh run bằng cách
‫sử dụng lệnh xóa.
‫Điều này khác với Docker ở chỗ Docker
‫có lệnh remove.
‫Bây giờ, chúng ta đang sử dụng lệnh xóa với kubectl.
‫Bạn sẽ nhận thấy rằng chúng tôi đang chỉ định loại đối tượng và sau
‫đó là tên của chính nó. Vì vậy, chúng tôi đang thực hiện không gian
‫triển khai, tên của Triển khai.
‫Khi bạn làm điều đó, nó sẽ xóa tất cả
‫những thứ bên dưới nó. ReplicaSet, bản thân các vỏ và các
‫thùng chứa trong đó.
‫Chúng tôi có thể xác minh điều đó một cách nhanh chóng với cùng một lệnh get all.
‫Bạn sẽ chỉ thấy IP cụm ở đó, chính là
‫máy chủ Kubernetes.