Chạy khối lượng công việc ML/DL bằng Red Hat OpenShift Container Platform v3.11 (3)

Cài đặt & triển khai Kubeflow

Như được mô tả trong hướng dẫn triển khai, bạn có thể chạy một ứng dụng như Nginx để xác nhận rằng các hoạt động của cụm chính đang hoạt động như mong đợi trước khi tiếp tục cài đặt Kubeflow Bước xác thực này được khuyến nghị để bạn có thể yên tâm rằng nền tảng mà bạn đang triển khai Kubeflow không có vấn đề lớn nào.

Triển khai Kubeflow v0.5

Quá trình cài đặt Kubeflow v0.5 dựa trên ksonnet , một hệ thống tạo khuôn mẫu, có thể định cấu hình dành cho nhà phát triển ứng dụng Kubernetes . Ksonnet tách các định nghĩa đối tượng Kubernetes khỏi đích cụm để đơn giản hóa và tự động hóa việc triển khai .

Để triển khai Kubeflow v0.5 trên OpenShift Container Platform v 3.11 :

  1. Tải xuống ksonnet và kfctl và thêm chúng vào đường dẫn của bạn bằng cách chạy lệnh sau:

mkdir ~/bin

cd ~/thùng

$ wget https://github.com/kubeflow/kubeflow/releases/download/v0.5.1/kfctl_v0.5.1_linux.tar.gz

tar -xzf kfctl_v0.5.1_linux.tar.gz

wget https://github.com/ksonnet/ksonnet/releases/download/v0.13.1/ks_0.13.1_linux_amd64.tar.gz

tar -xzf ks_0.13.1_linux_AMD64.tar.gz

ln -s ks_0.13.1_linux_amd64/ks ks

xuất PATH=$PATH:~/bin

đĩa ~

  1. Xuất giá trị cho KFAPP bằng cách chạy lệnh sau:

xuất KFAPP=kubeflow

kfctl init ${KFAPP}

cd ${KFAPP}

kfctl tạo tất cả -V

Lưu ý: KFAPP đóng vai trò vừa là tên của thư mục nơi triển khai sẽ được lưu trữ vừa là dự án/không gian tên nơi Kubeflow sẽ được cài đặt. Tên “ kubeflow ” được khuyến nghị vì một số tham số ksonnet vẫn được mã hóa cứng với kubeflow làm tên dự án .

  1. Triển khai Kubeflow bằng cách chạy lệnh sau:

kfctl áp dụng tất cả -V

  1. Thêm Ambassador default và katib vào ngữ cảnh bảo mật anyuid bằng cách chạy lệnh sau:

chính sách oc adm add-scc-to-user anyuid -z đại sứ

chính sách oc adm add-scc-to-user anyuid -z mặc định

chính sách oc adm add-scc-to-user anyuid -z katib-ui

Lưu ý: Việc nới lỏng các ràng buộc bối cảnh bảo mật (SCC) là bắt buộc để thiết lập và chạy các dịch vụ Kubeflow nhưng không được khuyến nghị cho môi trường sản xuất . Chúng tôi hy vọng Nền tảng bộ chứa OpenShift sẽ thêm các SCC thích hợp cho những người dùng này trong tương lai .

  1. Đặt dịch vụ đại sứ để triển khai dưới dạng ClusterIP ( mặc định là NodePort) bằng cách chạy lệnh sau:

tham số ks đặt đại sứ AmbassadorServiceType ‘ClusterIP’

oc vạch trần dịch vụ đại sứ

oc nhận các tuyến đường

TÊN MÁY CHỦ/ CỔNG ĐƯỜNG DẪN DỊCH VỤ PORT TERMINATION WILDCARD                                                                                   

đại sứ đại sứ-kubeflow.router.default.svc.cluster.local đại sứ đại sứ Không có                                         

  1. Để xác minh cài đặt Kubeflow , hãy nhập URL được hiển thị theo tuyến đường , như được hiển thị bởi dịch vụ đại sứ.

Giao diện web của K ubeflow xuất hiện, như thể hiện trong hình sau:

https://lh5.googleusercontent.com/lC5s0lHGUC1so2EtU1sMASxuvkNxX89IgNI9kwBv_bsu2kOQDjAj4MhI6V-rFC_vIU5GkctD647MLBYzAcEu90A5Ls_Qne9Pw4nH67KN9th2zehFVut4QKgh_Q9c3DQ 4sVTptB3MEfg

Hình 4. Giao diện web Kubeflow

Bạn có thể truy cập các thành phần và tài liệu Kubeflow khác nhau thông qua giao diện này .

 

Bản tóm tắt

Bài viết này mô tả cách triển khai GPU Nvidia Tesla để sử dụng với Kubeflow trên Nền tảng bộ chứa OpenShift . Bằng cách tích hợp GPU Nvidia trên các nút nhân viên ứng dụng chuyên dụng và ở chế độ hội tụ trên các nút lưu trữ, chúng tôi đã trình diễn các cấu hình linh hoạt mà bạn có thể sử dụng để tạo môi trường điện toán hiệu suất cao có thể đáp ứng nhu cầu ML/DL của bạn. Bài viết này cũng ghi lại khả năng định cấu hình Nền tảng bộ chứa OpenShift với sự kết hợp của các GPU Nvidia, do đó mở rộng phạm vi và khả năng của các cấu hình công việc ML/DL có thể được xử lý trong một môi trường duy nhất.

Sự phát triển của một mô hình DL là một hoạt động chuyên sâu về tính toán. Trong hầu hết các trường hợp , toàn bộ quá trình học tập có thể yêu cầu đào tạo mạng lưới thần kinh với hàng triệu tham số. Quá trình học tập có thể đánh thuế nghiêm trọng một nền tảng điện toán không tăng tốc. GPU Nvidia được thiết kế để chạy 1.000 luồng , khai thác tính song song có sẵn trong khối lượng công việc ML/DL và cho phép mức năng suất cao hơn cho các tổ chức sử dụng Kubeflow để phát triển ứng dụng ML/DL. Tài liệu của anh ấy trình bày cách có thể thêm GPU Nvidia vào Nền tảng bộ chứa OpenShift của bạn và mở rộng khả năng xử lý của nó  để thực thi khối lượng công việc ML/DL bằng Kubeflow.