Ubuntu là một bản phân phối Linux phổ biến mang lại sự ổn định, nhiều phiên bản với giao diện đồ họa và cộng đồng những người đam mê giúp hỗ trợ lẫn nhau. Nếu bạn loại bỏ mọi tính năng nâng cao khỏi Ubuntu, thì phần còn lại chính là Ubuntu Core.
Đây là một hệ điều hành mà ngay cả Raspberry Pi 2 cũng có thể chạy được, chưa kể các model sau này như Pi 3 và 4. Việc ghép hai cái tên quen thuộc này lại với nhau sẽ mang đến cho bạn một kết quả ổn định, được bảo trì thường xuyên và được hỗ trợ trong nhiều năm tới.
Hãy đi sâu vào các khả năng mà Ubuntu Core và Raspberry Pi có thể kết hợp với nhau.
Yêu cầu & Cài đặt
Phần cứng sau sẽ giúp bạn bắt đầu với Ubuntu Core:
- Raspberry Pi 2, 3, 4, 400, Zero 2 W hoặc Compute Module 4
- Thẻ nhớ microSD 4GB+ và đầu đọc
- Mạng WiFi hoặc cáp Ethernet có kết nối Internet
- Màn hình có interface HDMI
- Một cáp HDMI
- Bàn phím USB
Sau khi có phần cứng cần thiết, bạn sẽ cần cài đặt Ubuntu Core trên Raspberry Pi của mình. Bạn cũng có thể tải xuống image Ubuntu Core và sử dụng công cụ Raspberry Pi Imager để cài đặt nó. Trong quá trình cài đặt, bạn sẽ muốn đảm bảo rằng SSH đã được bật để có thể truy cập qua SSH vào Raspberry Pi của mình khi được yêu cầu.
Những trường hợp sử dụng thực tế cho Ubuntu Core
Có nhiều lý do khiến bạn muốn sử dụng Ubuntu Core thay vì Raspberry Pi OS tiêu chuẩn.
IoT & phát triển ứng dụng
Hỗ trợ lên đến 10 năm (với các bản cập nhật bảo mật và bản vá lỗi thường xuyên) đảm bảo sự an tâm cho các ứng dụng thông minh trên Raspberry Pi của bạn. Mỗi thiết bị IoT đều có nền tảng đám mây riêng để lưu trữ và quản lý cửa hàng ứng dụng IoT của riêng mình. Điều này sẽ cho phép bạn xây dựng hệ sinh thái của riêng mình và quản lý các chiến lược kiếm tiền khi bạn thấy phù hợp.
Khi bạn cần thực hiện sửa lỗi, Ubuntu Core cho phép quản lý từ xa để giảm thiểu thời gian ngừng hoạt động. Nếu bạn chưa quen với ý tưởng về các thiết bị dựa trên đám mây, hãy khám phá thế giới của Internet vạn vật (IoT) để biết chi tiết.
Snap tạo ra một cách dễ dàng để các nhà phát triển triển khai đồng thời các ứng dụng cho nhiều bản phân phối Linux. Ngoài ra, các gói Snap sử dụng hệ thống container cho phép các ứng dụng sử dụng phần cứng dành riêng cho nhu cầu của nó. Snapcraft (Snap) có những ưu điểm và nhược điểm mà bạn nên xem lại trước khi bắt đầu phát triển cho hệ sinh thái snap.
Media server
Đối với những người đam mê, Ubuntu Core và Raspberry Pi là cặp đôi hoàn hào để triển khai các máy chủ sử dụng cho mục đích lưu trữ và chia sẻ các file quan trọng, truyền phát nội dung video và âm thanh cũng như hệ thống bảo mật.
Hệ thống lưu trữ được gắn vào mạng sẽ cho phép bạn lưu trữ các file quan trọng trên Raspberry Pi và chia sẻ chúng giữa các máy tính trong mạng gia đình. Samba là một ứng dụng đi kèm với Ubuntu Core.
Tạo media server là một tùy chọn tuyệt vời khác mà bạn có thể chạy trên Raspberry Pi của mình. Thay vì chỉ có thể tự cài đặt Plex Server dưới dạng image, bạn có thể cài đặt Plex Server của mình trong Docker container. Khi Plex Server của bạn được cài đặt, bạn sẽ có thể truy cập Plex qua địa chỉ [IP của Raspberry Pi]:32400 (trừ khi bạn đã sửa đổi cổng mặc định trong thiết lập máy chủ).
Container & web server
Khi bạn đang tìm kiếm một không gian an toàn cho dự án tiếp theo của mình (hoặc media server), Docker container là một cách tuyệt vời để đảm bảo rằng hệ thống của bạn không bị ảnh hưởng bởi một ứng dụng mới được cài đặt trong môi trường được chứa trong container này. Việc cài đặt Docker trên Linux thật đơn giản. Nếu muốn có giao diện người dùng web, bạn cũng có thể cài đặt Portainer trên Linux.
Một giao diện người dùng web khác, Cockpit, là một cách tuyệt vời để quản lý hệ thống Ubuntu Core của bạn từ một trình duyệt khác trong mạng gia đình. Mặc dù SSH là một phương pháp phổ biến để truy cập từ xa vào hệ thống không có đồ họa, nhưng thật tuyệt khi có một giao diện dựa trên web để giúp bạn giám sát hoạt động của máy tính từ xa.
Machine learning
Các mô hình mahcine learning thường có các yêu cầu cụ thể. Phiên bản thu nhỏ của Kubernetes, MicroK8s, cung cấp giải pháp cho nhu cầu này. MicroK8s rất lý tưởng khi bạn đột ngột cần cung cấp dịch vụ cho nhiều người (ví dụ: chatbot ChatGPT).
Bạn có thể loại bỏ quản trị cụm với MicroK8 và chạy nỗ lực machine learning của mình trong một cụm máy với hiệu quả cao. MicroK8 có thể được cài đặt cục bộ bằng Snap và sẽ cho phép (các) machine learning container đã cài đặt của bạn chạy tự nhiên. Điều này làm cho quá trình phát triển, bao gồm các dự án tăng tốc GPU, dễ thực hiện hơn nhiều trong những giai đoạn tiền sản xuất.
Docker là một cái tên quen thuộc trong thế giới container; tuy nhiên, Docker phù hợp hơn với container runtime (ứng dụng đang chạy). Mặc dù hệ sinh thái Kubernetes (MicroK8s) có thể phức tạp hơn khi thiết lập ban đầu, nhưng về lâu dài, bạn sẽ tận hưởng khả năng mở rộng quy mô và giảm thiểu các tác vụ quản trị không cần thiết.
Ngoài ra, container MicroK8 có thể thiết lập trong vòng chưa đầy 60 giây. Mặc dù nhiều chuyên gia sẽ sử dụng giải pháp này, nhưng điều này cũng hữu ích cho các nhà phát triển muốn phát triển tại địa phương.