在CentOS上配置MongoDB网络是一个相对直接的过程,但为了确保数据的安全性和系统的稳定性,建议遵循最佳实践。以下是详细的步骤和注意事项:
安装MongoDB
首先,确保你的系统是CentOS 7或更高版本,并且具备root用户权限。然后,更新系统包:
sudo yum update -y
添加MongoDB仓库
添加MongoDB的官方仓库:
cat << EOF | sudo tee /etc/yum.repos.d/mongodb-org-4.4.repo [mongodb-org-4.4] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.4/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc module_hotfixes=true EOF
安装MongoDB
使用yum命令安装MongoDB:
sudo yum install -y mongodb-org
启动MongoDB服务
安装完成后,启动MongoDB服务并设置为开机自启:
sudo systemctl start mongod sudo systemctl enable mongod
配置MongoDB
修改绑定IP
默认情况下,MongoDB绑定到127.0.0.1。若需远程访问,需修改配置文件:
sudo vi /etc/mongod.conf
将bindIp: 127.0.0.1
改为bindIp: 0.0.0.0
。修改完成后,重启服务使配置生效:
sudo systemctl restart mongod
防火墙配置
确保防火墙允许MongoDB的默认端口27017:
sudo firewall-cmd --zone=public --add-port=27017/tcp --permanent sudo firewall-cmd --reload
验证安装
打开终端,输入以下命令进入MongoDB shell:
mongo
若出现>
提示符,表示安装成功。
额外配置技巧
-
性能优化:
- 设置WiredTiger的cacheSizeGB。
- 分配足够的oplog空间。
- 启用Log Rotation。
-
安全性配置:
-
创建管理员账户:
use admin db.createUser({ user: "admin", pwd: "password", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })
-
启用认证机制:
编辑
/etc/mongod.conf
,添加以下内容:security: authorization: enabled
重启MongoDB服务:
sudo systemctl restart mongod
-
限制网络访问:
修改
/etc/mongod.conf
中的net.bindIp
,仅允许特定IP访问:net: bindIp: 127.0.0.1,192.168.1.100
-
-
远程客户端连接:
使用MongoDB提供的客户端工具(如MongoDB Compass)或NoSQLBooster for MongoDB等进行连接。