Kim loại trần so với Kubernetes

Thật thú vị khi chứng kiến ​​làn sóng xây dựng bộ chứa ứng dụng từ các ứng dụng web gốc trên nền tảng đám mây không trạng thái cho đến mọi loại khối lượng công việc tập trung vào dữ liệu. Các khối lượng công việc này bao gồm điện toán hiệu năng cao (HPC), machine learning và deep learning (ML/DL) và hiện nay là hầu hết các cơ sở dữ liệu SQL và NoSQL chính. Ví dụ: gần đây tôi đã đọc bài viết cơ sở kiến ​​thức Dell Technologies sau: Bare Metal vs Kubernetes: Distributed Training with TensorFlow .

Máy chủ kim loại trần và kim loại trần đề cập đến việc triển khai các ứng dụng trực tiếp trên phần cứng vật lý mà không cần ảo hóa, chứa và lưu trữ đám mây. Nhiều khi, bare metal được so sánh với ảo hóa và container hóa được sử dụng để đối chiếu các tính năng về hiệu suất và khả năng quản lý. Ví dụ: việc so sánh một ứng dụng trên kim loại trần với một ứng dụng đang chạy trong vùng chứa có thể cung cấp thông tin chi tiết về sự khác biệt tiềm ẩn về hiệu suất giữa hai quá trình triển khai.

Hình 1: So sánh việc triển khai kim loại trần và container

Ảnh chụp màn hình điện thoại di động Mô tả được tạo tự động

Các thùng chứa đóng gói một ứng dụng có các tệp nhị phân và thư viện hỗ trợ để chạy trên một hệ điều hành dùng chung. Công cụ thời gian chạy của vùng chứa hoặc các ứng dụng quản lý, chẳng hạn như Kubernetes, quản lý vùng chứa. Do hệ điều hành dùng chung nên cơ sở hạ tầng của container rất nhẹ, cung cấp thêm lý do để hiểu sự khác biệt về hiệu suất.

Trong trường hợp so sánh kim loại trần với Kubernetes, hoạt động đào tạo phân tán với hiệu suất TensorFlow được đo lường bằng thông lượng. Tức là chúng tôi đã đo số lượng hình ảnh mỗi giây khi đào tạo CheXNet. Năm thử nghiệm đã được thực hiện, trong đó mỗi thử nghiệm liên tiếp bổ sung thêm nhiều GPU trên hệ thống kim loại trần và Kubernetes. Các điểm dữ liệu chắc chắn trong Hình 2 cho thấy các thử nghiệm đã được chạy bằng cách sử dụng GPU 1, 2, 3, 4 và 8.

Hình 2: Chạy đào tạo CheXNet trên Kubernetes so với bare metal

Cận cảnh bản đồ Mô tả được tạo tự động

Hình 2 cho thấy cấu hình vùng chứa Kubernetes có hiệu suất tương tự như cấu hình kim loại trần thông qua 4 GPU. Thử nghiệm thông qua 8 GPU cho thấy kim loại trần tăng 8% so với Kubernetes. Tuy nhiên, bài viết mà tôi tham khảo đưa ra các yếu tố có thể góp phần tạo nên vùng đồng bằng:

  • Hệ thống kim loại trần tận dụng toàn bộ băng thông và độ trễ của InfiniBand thô trong khi cấu hình Kubernetes sử dụng mạng được xác định bằng phần mềm bằng flannel.
  • Cấu hình Kubernetes sử dụng IP qua InfiniBand, điều này có thể làm giảm băng thông khả dụng.

Những nghiên cứu như thế này rất hữu ích vì chúng cung cấp thông tin chi tiết về hiệu suất mà khách hàng có thể sử dụng. Tôi hy vọng chúng ta sẽ thấy nhiều nghiên cứu hơn về các khối lượng công việc khác. Ví dụ: một nghiên cứu về cơ sở dữ liệu Oracle và SQL Server trong các thùng chứa so với chạy trên kim loại trần sẽ rất thú vị. Mục tiêu là hiểu cách hệ sinh thái Kubernetes có thể hỗ trợ một hệ sinh thái rộng lớn với các khối lượng công việc khác nhau.

Hy vọng bạn thích blog!