Thứ ba, 13/10/2020 | 00:00 GMT+7

Cách cài đặt MongoDB trên Ubuntu 16.04

MongoDB là database tài liệu NoSQL open-souce miễn phí được sử dụng phổ biến trong các ứng dụng web hiện đại. Hướng dẫn này sẽ giúp bạn cài đặt MongoDB trên server của bạn cho môi trường ứng dụng production .

Yêu cầu

Để làm theo hướng dẫn này, bạn cần :

Bước 1 - Thêm Kho lưu trữ MongoDB

MongoDB đã có trong repository Ubuntu, nhưng kho MongoDB chính thức cung cấp hầu hết version cập nhật và là cách cài đặt phần mềm được khuyến khích . Trong bước này, ta sẽ thêm repository chính thức này vào server của ta .

Ubuntu đảm bảo tính xác thực của các gói phần mềm bằng cách xác minh chúng được ký bằng các khóa GPG, vì vậy trước tiên ta phải nhập khóa của chúng cho repository MongoDB chính thức.

  • sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927

Sau khi nhập khóa thành công, bạn sẽ thấy:

Đầu ra
gpg: Total number processed: 1 gpg:               imported: 1  (RSA: 1) 

Tiếp theo, ta phải thêm chi tiết repository MongoDB để apt biết tải các gói từ đâu.

Đưa ra lệnh sau để tạo file danh sách cho MongoDB.

  • echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list

Sau khi thêm chi tiết repository , ta cần cập nhật danh sách gói.

  • sudo apt-get update

Bước 2 - Cài đặt và xác minh MongoDB

Bây giờ ta có thể cài đặt gói MongoDB.

  • sudo apt-get install -y mongodb-org

Lệnh này sẽ cài đặt một số gói chứa version MongoDB ổn định mới nhất cùng với các công cụ quản lý hữu ích cho server MongoDB.

Tiếp theo, khởi động MongoDB với systemctl .

  • sudo systemctl start mongod

Bạn cũng có thể sử dụng systemctl để kiểm tra xem dịch vụ đã khởi động đúng cách chưa.

  • sudo systemctl status mongod
Đầu ra
● mongodb.service - High-performance, schema-free document-oriented database    Loaded: loaded (/etc/systemd/system/mongodb.service; enabled; vendor preset: enabled)    Active: active (running) since Mon 2016-04-25 14:57:20 EDT; 1min 30s ago  Main PID: 4093 (mongod)     Tasks: 16 (limit: 512)    Memory: 47.1M       CPU: 1.224s    CGroup: /system.slice/mongodb.service            └─4093 /usr/bin/mongod --quiet --config /etc/mongod.conf 

Bước cuối cùng là kích hoạt tính năng tự động khởi động MongoDB khi hệ thống khởi động.

  • sudo systemctl enable mongod

Server MongoDB hiện đã được cấu hình và đang chạy, và bạn có thể quản lý dịch vụ MongoDB bằng lệnh systemctl (ví dụ: sudo systemctl stop mongod , sudo systemctl start mongod ).

Bước 3 - Điều chỉnh firewall (Tùy chọn)

Giả sử bạn đã làm theo hướng dẫn cài đặt server ban đầu để bật firewall trên server của bạn , server MongoDB sẽ không thể truy cập được từ internet.

Nếu bạn định chỉ sử dụng server MongoDB local với các ứng dụng chạy trên cùng một server , thì đó là một cài đặt được khuyến khích và bảo mật. Tuy nhiên, nếu bạn muốn có thể kết nối với server MongoDB của bạn từ internet, ta phải cho phép các kết nối đến trong ufw .

Để cho phép truy cập vào MongoDB trên cổng mặc định 27017 từ mọi nơi, bạn có thể sử dụng sudo ufw allow 27017 . Tuy nhiên, cho phép truy cập internet đến server MongoDB trên cài đặt mặc định cho phép truy cập không hạn chế vào toàn bộ server database .

trong hầu hết các trường hợp, MongoDB chỉ nên được truy cập từ một số vị trí tin cậy , chẳng hạn như một server khác lưu trữ ứng dụng. Để thực hiện tác vụ này, bạn có thể cho phép truy cập trên cổng mặc định của MongoDB trong khi chỉ định địa chỉ IP của server khác sẽ được phép kết nối một cách rõ ràng.

  • sudo ufw allow from your_other_server_ip/32 to any port 27017

Bạn có thể kiểm tra thay đổi trong cài đặt firewall với ufw .

  • sudo ufw status

Bạn sẽ thấy lưu lượng truy cập đến cổng 27017 được phép trong kết quả . Nếu bạn đã quyết định chỉ cho phép một địa chỉ IP nhất định kết nối với server MongoDB, địa chỉ IP của vị trí được phép sẽ được liệt kê thay vì bất kỳ đâu trong kết quả .

Đầu ra
Status: active  To                         Action      From --                         ------      ---- 27017                      ALLOW       Anywhere OpenSSH                    ALLOW       Anywhere 27017 (v6)                 ALLOW       Anywhere (v6) OpenSSH (v6)               ALLOW       Anywhere (v6) 

Các cài đặt firewall nâng cao hơn để hạn chế quyền truy cập vào các dịch vụ được mô tả trong UFW Essentials: Common Firewall Rules and Commands .

Kết luận

Bạn có thể tìm thêm hướng dẫn chuyên sâu về cài đặt và cấu hình MongoDB trong các bài viết cộng đồng DigitalOcean này .


Tags:

Các tin trước

Cách cài đặt mongodb trên ubuntu 18.04 2020-10-08
Cách cài đặt MongoDB từ Kho lưu trữ APT mặc định trên Ubuntu 20.04 2020-10-08
Cách bảo mật MongoDB trên Ubuntu 18.04 2020-10-08
Cách cấu hình quyền truy cập từ xa cho MongoDB trên Ubuntu 18.04 2020-10-08
Cách cài đặt MongoDB trên Ubuntu 18.04 2020-10-08
Làm thế nào để quản lý client OpenSSH trên Ubuntu 18.04 2020-09-30
Cách cài đặt và sử dụng ClickHouse trên Ubuntu 20.04 2020-09-22
Cách cài đặt và cấu hình Mahara trên Ubuntu 18.04 2020-09-21
Cách cài đặt Jitsi Meet trên Ubuntu 20.04 2020-09-18
Cách xử lý sandbox với Systemd trên Ubuntu 20.04 2020-09-16