Hướng dẫn cài đặt Object Storage Server dùng MinIO trên Ubuntu 22.04
Giới thiệu
MinIO là giải pháp mã nguồn mở dùng để thiết lập Object Storage, là một server lưu trữ dạng phân tán với hiệu năng cao, giúp bạn dễ dàng upload file, download file như amazon, google drive, mediafire..vv. MinIO tương thích với API của dịch vụ lưu trữ đám mây Amazon S3.
Yêu cầu
Máy chủ Ubuntu 22.04.
Một tên miền và trỏ nó đến địa chỉ IP của máy chủ của chúng ta.
Cài đặt và Cấu hình allow firewall
Cập nhật hệ thống
Để đảm bảo rằng tất cả các phụ thuộc của MinIO đều được cập nhật, chúng ta hãy thực thi lệnh bên dưới.
Chuẩn bị cho cài đặt CSF
Chúng ta cần cài đặt các phụ thuộc cho CSF.
Cài đặt CSF
Chúng ta điều hướng đến /usr/src
Chúng ta sẽ tải xuống bản phân phối CSF, bằng cách sử dụng lệnh sau.
Chúng ta giải nén CSF.
Sau đó, chúng ta điều hướng đến /usr/src/csf
Sau đó, chúng ta chạy lệnh sau để cài đặt CSF.
Xác minh các mô-đun iptables cần thiết cho CSF có sẵn.
Chúng ta sẽ nhận thấy kết quả dưới đây.
Xác minh trạng thái CSF sau khi cài đặt.
Chúng ta sẽ thấy một kết quả tương tự như.
Cấu hình CSF
Mặc định CSF chạy ở chế độ THỬ NGHIỆM. Chỉnh sửa /etc/csf/csf.conf
để tắt chế độ THỬ NGHIỆM
Chúng ta xác định vị trí dòng TESTING = "1" và thay đổi giá trị thành "0"
Chúng ta xác định vị trí dòng RESTRICT_SYSLOG = "0" và thay đổi giá trị thành "3". Điều này có nghĩa là chỉ các thành viên của RESTRICT_SYSLOG_GROUP mới có thể truy cập các tệp syslog / rsyslog
Chúng ta xác định vị trí các dòng sau và thêm các cổng cần thiết 80, 443, 9000, 9001
Sau đó chúng ta lưu tệp cấu hình.
Dừng và tải lại CSF với tùy chọn -ra
Cài đặt MinIO
Chúng ta tải xuống file minio từ trang web chính thức của MinIO.
Chúng ta cấp quyền thực thi cho tệp.
Sau đó chúng ta di chuyển MinIO vào thư mục /usr/local/bin
Xác minh cài đặt.
Cấu hình MinIO
Chúng ta sẽ tạo người dùng, nhóm cho MinIO.
Chúng ta tạo một thư mục để lưu trữ tệp cấu hình.
Chúng ta cấp quyền sở hữu thư mục cho người dùng và nhóm MinIO.
Tiếp theo chúng ta tạo thư mục dữ liệu nơi minio sẽ lưu trữ tất cả các tệp.
Chúng ta cấp quyền sở hữu thư mục cho người dùng và nhóm MinIO.
Chúng ta sẽ tạo, mở tệp môi trường của minio /etc/default/minio
và thêm nội dung sau.
MINIO_VOLUMES: Chỉ định thư mục lưu trữ cho dữ liệu.
MINIO_OPTS: đặt các tùy chọn khác nhau cho máy chủ Minio. -C khai báo nơi sẽ chứa các file config của minIO, --address khai báo IP của server/VPS chạy minIO và cổng để liên kết đến. Nếu Chúng ta không chỉ định địa chỉ IP, Minio sẽ liên kết với mọi địa chỉ IP trên máy chủ, bao gồm cả localhost hoặc bất kỳ địa chỉ IP nào liên quan đến Docker. Cổng mặc định là 9000. và cổng 9001 cho bảng điều khiển web của Minio. -C--address--console-address
MINIO_ROOT_USER: Tên người dùng để truy cập giao diện người dùng Minio. Nó phải có độ dài tối thiểu là 3 ký tự.
MINIO_ROOT_PASSWORD: Mật khẩu để truy cập vào giao diện Minio. Nó phải có độ dài tối thiểu là 8 ký tự. Chọn một khóa bí mật mạnh mẽ và phức tạp.
Cài đặt dịch vụ MinIO
Chúng ta tải xuống tệp minio.service vào thư mục /etc/systemd/system
Chúng ta sẽ load lại service của hệ thống.
Chúng ta bật MinIO khởi động cùng hệ thống.
Sau đó chúng ta khởi động máy chủ MinIO.
Mở URL trong trình duyệt và chúng ta sẽ thấy màn hình sau. http://your_server_ip:9001
Cài đặt và cấu hình SSL miễn phí
Cài đặt Snap
Certbot yêu cầu chứng chỉ HTTPS từ Let's Encrypt cho máy chủ web của Chúng ta. Certbot yêu cầu Snap, hãy chạy lệnh sau để cài đặt Snap.
Cài đặt Certbot
Chúng ta cài đặt Certbot với Snap với lệnh sau.
Chúng ta tạo chứng chỉ SSL
Lệnh trên sẽ tải chứng chỉ xuống thư mục trên máy chủ của chúng ta. /etc/letsencrypt/live/minio.example.com
Chúng ta sẽ sao chép các tệp và vào thư mục thư mục cấu hình của MinIO.
Chúng ta thay đổi quyền sở hữu tệp đã sao chép.
Sau đó chúng ta mở tệp cấu hình Minio /etc/default/minio
và thêm dòng sau ở dưới cùng.
Mặc dù console được truy cập thông qua cổng 9001, URL máy chủ SSL sử dụng cổng 9000 để truy cập API MinIO.
Chúng ta khởi động lại Máy chủ MinIO.
Chúng ta có thể truy cập console MinIO thông qua URL trong trình duyệt của mình. https://minio.example.com:9001
Cài đặt MinIO client
Tiếp theo chúng ta sẽ cài ứng dụng client dòng lệnh của MinIO. Chúng ta sẽ tải xuống tệp mc bằng lệnh sau.
Chúng ta sẽ thêm quyền thực thi cho tệp mc.
Sau đó, chúng ta di chuyển tệp mc vào thư mục /usr/local/bin
Chúng ta sẽ xác minh cài đặt bằng lệnh sau.
Tiếp theo chúng ta sẽ đặt bí danh cho máy chủ MinIO của chúng ta để chúng ta có thể truy cập bằng cách sử dụng một tên dễ nhận dạng.
Thay thế tên người dùng và mật khẩu của chúng ta đã đặt cho máy chủ: minioadmin
và Rc3OzCzpQbk$
Tên sau alias set
chúng ta có thể được đặt thành bất cứ thứ gì. Trong trường hợp này được đặt là myminio
Chúng ta sẽ nhận được kết quả sau.
MinIO client lưu trữ tất cả các cấu hình trong thư mục. /user/.mc
Tạo User và Service Account bằng mc
Tạo User
Chúng ta sử dụng lệnh mc admin user add
để tạo user mới trong MinIO.
Chúng ta hãy thay thế myminio
bằng tên ALIAS của chúng ta, userdemo
là tên user mới, BwebE025Ux6L
là mật khẩu user
Sau khi tạo người dùng, chúng ta sử dụng mc admin policy set
để liên kết Kiểm soát truy cập dựa trên chính sách MinIO với người dùng mới.
Tạo Service Account
Tiếp theo chúng ta sẽ tạo Service Account liên kết với người dùng được chỉ định, ở đây là tài khoản userdemo
.
Chúng ta hãy thay thế access-key
và secret-key
bằng key của chúng ta
Chúng ta sẽ sử dụng Access Key
và Secret Key
trong bước tiếp theo.
Kết nối S3cmd với MinIO
Cài đặt và cấu hình S3cmd
Chúng ta cài đặt s3cmd bằng lệnh sau
Tiếp theo để cấu hình s3cmd chúng ta chạy lệnh sau
Chúng ta hãy chắc chắn đổi
Access Key:
Nhập Access Key của chúng ta
Secret Key:
Nhập Secret Key Của chúng ta
S3 Endpoint [s3.amazonaws.com]
và DNS-style bucket+hostname:port template for accessing a bucket [%(bucket)s.s3.amazonaws.com]
Bằng tên miền của bạn + port kết nối (ví dụ: minio.example.com:9000)
Demo S3cmd
Sau đây chúng ta thực hiện một vài lệnh demo với S3cmd.
Tạo bucket
Upload file lên bucket.
Danh sách buckets.
Danh sách file trong bucket.
Xóa file trong bucket.
Xóa bucket.
Tổng kết
Như vậy chúng ta vừa hoàn thành hướng dẫn Cài đặt Object Storage Server dùng MinIO trên Ubuntu 22.04, Hy vọng bài viết này sẽ giúp các bạn cài đặt thành công.
Tính năng đang được phát triển