MongoDB 7.0 Ubuntu 22.04 LTS 安装:APT源配置与systemd服务管理5步 MongoDB 7.0 在 Ubuntu 22.04 LTS 上的专业部署指南1. 环境准备与系统优化在开始安装 MongoDB 7.0 之前我们需要确保 Ubuntu 22.04 LTS 系统已经做好充分准备。作为 DevOps 工程师系统优化是不可忽视的关键步骤。首先更新系统软件包并安装必要的依赖项sudo apt update sudo apt upgrade -y sudo apt install -y gnupg curl wget software-properties-common对于生产环境建议调整系统内核参数以优化 MongoDB 性能。编辑/etc/sysctl.conf文件添加以下配置# 提高系统最大文件描述符限制 fs.file-max 98000 # 优化网络性能 net.core.somaxconn 4096 net.ipv4.tcp_fin_timeout 30 net.ipv4.tcp_keepalive_time 300 # 内存和交换分区优化 vm.swappiness 1 vm.dirty_ratio 15 vm.dirty_background_ratio 5应用这些更改sudo sysctl -p2. 配置官方 MongoDB APT 源MongoDB 官方提供了专为 Ubuntu 22.04 LTS 优化的软件仓库这是最可靠的安装方式。步骤 1导入 MongoDB GPG 密钥curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | \ sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg \ --dearmor步骤 2创建 APT 源列表文件为 Ubuntu 22.04 (Jammy) 创建专用的源配置文件echo deb [ archamd64,arm64 signed-by/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list步骤 3更新软件包索引sudo apt update3. 安装 MongoDB 7.0 组件MongoDB 7.0 由多个组件构成我们可以选择完整安装或按需安装特定组件。完整安装最新稳定版sudo apt install -y mongodb-org安装特定版本推荐生产环境使用sudo apt install -y \ mongodb-org7.0.24 \ mongodb-org-database7.0.24 \ mongodb-org-server7.0.24 \ mongodb-mongosh \ mongodb-org-shell7.0.24 \ mongodb-org-mongos7.0.24 \ mongodb-org-tools7.0.24 \ mongodb-org-database-tools-extra7.0.24为防止意外升级可以锁定软件包版本echo mongodb-org hold | sudo dpkg --set-selections echo mongodb-org-database hold | sudo dpkg --set-selections echo mongodb-org-server hold | sudo dpkg --set-selections echo mongodb-mongosh hold | sudo dpkg --set-selections echo mongodb-org-mongos hold | sudo dpkg --set-selections echo mongodb-org-tools hold | sudo dpkg --set-selections4. 关键配置文件详解MongoDB 的主要配置文件位于/etc/mongod.conf理解每个配置项对生产环境至关重要。存储引擎配置storage: dbPath: /var/lib/mongodb journal: enabled: true engine: wiredTiger wiredTiger: engineConfig: cacheSizeGB: 4 # 根据系统内存调整通常为物理内存的50%-70% journalCompressor: snappy collectionConfig: blockCompressor: snappy indexConfig: prefixCompression: true网络与安全配置net: port: 27017 bindIp: 127.0.0.1 # 生产环境应限制访问IP tls: mode: requireTLS certificateKeyFile: /etc/ssl/mongodb.pem CAFile: /etc/ssl/ca.pem系统日志配置systemLog: destination: file logAppend: true path: /var/log/mongodb/mongod.log logRotate: reopen verbosity: 0 # 0-5生产环境建议1-25. systemd 服务管理全指南Ubuntu 22.04 使用 systemd 作为初始化系统我们需要熟练掌握 MongoDB 服务的管理。启动 MongoDB 服务sudo systemctl start mongod设置开机自启sudo systemctl enable mongod检查服务状态sudo systemctl status mongod服务管理常用命令操作命令说明启动sudo systemctl start mongod启动 MongoDB 服务停止sudo systemctl stop mongod优雅停止 MongoDB重启sudo systemctl restart mongod重启服务重载配置sudo systemctl reload mongod不重启应用新配置查看日志journalctl -u mongod -f实时查看日志高级故障排查技巧当服务无法启动时可以尝试以调试模式手动运行sudo -u mongodb mongod --config /etc/mongod.conf --fork --logpath /var/log/mongodb/debug.log --verbose6. 性能调优与安全加固性能优化建议内存配置确保wiredTiger.cacheSizeGB设置合理使用numactl控制内存分配策略IO 优化使用 SSD 存储考虑使用 XFS 文件系统启用磁盘预读blockdev --setra 32 /dev/sdX连接池调整net: maxIncomingConnections: 10000安全加固措施启用认证mongosh use admin db.createUser({ user: admin, pwd: complexpassword, roles: [root] })网络隔离配置防火墙规则使用 VPN 或私有网络限制绑定 IP审计日志auditLog: destination: file format: JSON path: /var/log/mongodb/audit.json7. 日常维护与监控备份策略示例# 热备份需要启用 journaling mongodump --urimongodb://admin:passwordlocalhost:27017 --gzip --archive/backup/mongodb-$(date %Y%m%d).gz # 定时任务配置每天凌晨2点备份 0 2 * * * /usr/bin/mongodump --urimongodb://admin:passwordlocalhost:27017 --gzip --archive/backup/mongodb-$(date \%Y\%m\%d).gz监控指标关注点性能指标查询延迟连接数锁等待缓存命中率资源使用CPU 利用率内存使用磁盘 IOPS常用监控命令# 查看数据库状态 db.serverStatus() # 查看当前操作 db.currentOp() # 性能分析 db.setProfilingLevel(1, 50) # 记录超过50ms的操作