为了能够快速部署,编写了离线安装配置的 shell 脚本,安装文件为influxdb-1.7.6.x86_64.rpm脚本内容如下:
#!/bin/bash # yum -y remove influxdb.x86_64 echo "1.安装InfluxDB..." yum localinstall -y influxdb-1.7.6.x86_64.rpm echo "1.安装InfluxDB完毕" echo "2.InfluxDB配置..." mkdir -p /home/influxdb/meta mkdir -p /home/influxdb/data mkdir -p /home/influxdb/wal chown -R influxdb:influxdb /home/influxdb sed -i "26c dir = "/home/influxdb/meta"" /etc/influxdb/influxdb.conf sed -i "45c dir = "/home/influxdb/data"" /etc/influxdb/influxdb.conf sed -i "48c wal-dir = "/home/influxdb/wal"" /etc/influxdb/influxdb.conf sed -i "247c enabled = true" /etc/influxdb/influxdb.conf echo "2.InfluxDB配置完毕" echo "3.启动InfluxDB..." systemctl start influxd sleep 2 systemctl status influxd echo "3.启动InfluxDB完毕" echo "4.创建用户及数据库..." influx -execute 'create user "dsj" with password '''dsj''' with all privileges;' -format 'json' -pretty influx -execute 'create database "sjzt";' -format 'json' -pretty echo "4.创建用户及数据库完毕" echo "5.开启权限认证并重启InfluxDB..." sed -i "259c auth-enabled = true" /etc/influxdb/influxdb.conf systemctl restart influxd systemctl status influxd echo "5.开启权限认证并重启InfluxDB完毕" echo "6.配置InfluxDB开机启动..." cat <2.问题处理> /etc/rc.loal systemctl start influxd EOF echo "6.配置InfluxDB开机启动完毕"
使用systemctl start influxd启动过一会儿就停止了,但是使用/usr/bin/influxd -config /etc/influxdb/influxdb.conf命令可以正常启动,
# 查看系统的日志信息 tail -f /var/log/messages # 报错 run: open server: open tsdb store: mkdir /home/influxdb/data/_internal/_series: permission denied # 处理 chown -R influxdb:influxdb /home/influxdb/data # 再次启动后报错 error="mkdir /home/influxdb/wal/_internal: permission denied" # 最终处理 chown -R influxdb:influxdb /home/influxdb3.脚本调整
调整 1️⃣ 启动后睡眠2s保证数据库启动完成,否则创建用户或数据库会报错。
echo "3.启动InfluxDB..." systemctl start influxd sleep 2 systemctl status influxd echo "3.启动InfluxDB完毕"



