influxdb高可用部署

部署背景:因云目前线上暂无influxdb PaaS服务,如客户需要influxdb服务,可以采用如下方式交付环境。以下为标准云主机部署环境,由于InfluxDB对IO要求很高,考虑到云现实情况,建议主机采用本地盘虚机进行部署。

 

一、环境准备

主机

172.16.0.37 influx_proxy1

172.16.0.35 influx_proxy2

172.16.0.36 influxdb02

172.16.0.34 influxdb03

 

SLB 172.16.0.27

 

 

创建一台主机,选择40GSSD硬盘

 

mkfs.ext4 /dev/vdb

mkdir /data

mount  /dev/vdb /data

/etc/fstab 增加如下数据,实现开机挂载

/dev/vdb    /data    ext4    defaults    0 0

 

关闭防火墙配置

systemctl stop firewalld

systemctl disable firewalld

 

二、利用自定义镜像,选择创建包含数据盘的自定义镜像,并用自定义镜像创建剩余的机器

三、系统部署架构

 

 

四、编辑四台主机 /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

 

172.16.0.37 influx_proxy1

172.16.0.35 influx_proxy2

172.16.0.36 influxdb01

172.16.0.34 influxdb02

 

五、influxdb01,influxdb02两台主机分别安装influxdb

 

下载

wget https://dl.influxdata.com/influxdb/releases/influxdb-1.2.2.x86_64.rpm

 

拷贝到两台主机

scp -r ./influxdb-1.2.2.x86_64.rpm root@influxdb01:~/influx/

scp -r ./influxdb-1.2.2.x86_64.rpm root@influxdb02:~/influx/

 

两台主机分别运行,只安装不启动

rpm -ivh influxdb-1.2.2.x86_64.rpm

 

 

编缉influxdb.conf 修改数据目录

 

/etc/influxdb/influxdb.conf

 

dir = "/data/influxdb/data"

 

 

 wal-dir = "/data/influxdb/wal"

 

 

Systemctl start influxd

 

六、influx-proxy1与influx-proxy2部署influx-proxy

 

Influx-proxy需要安装go环境

Yum install go

 

git clone https://github.com/chengshiwen/influx-proxy.git

 

cd influx-proxy

 

Make

 

Cp bin/influx-proxy /usr/local/bin

 

编辑/opt/influx-proxy/proxy.json

{

    "circles": [

        {

            "name": "circle-1",

            "backends": [

                {

                    "name": "influxdb-1-1",

                    "url": "http://influxdb01:8086",

                    "username": "root",

                    "password": "123456",

                    "auth_secure": false

                }

            ]

        },

        {

            "name": "circle-2",

            "backends": [

                {

                    "name": "influxdb-2-1",

                    "url": "http://influxdb02:8086",

                    "username": "root",

                    "password": "123456",

                    "auth_secure": false

                }

            ]

        }

    ],

    "listen_addr": ":7076",

    "db_list": [],

    "data_dir": "/data/influx-pr/data",

    "tlog_dir": "/data/influx-pr/log",

    "hash_key": "idx",

    "flush_size": 10000,

    "flush_time": 1,

    "check_interval": 1,

    "rewrite_interval": 10,

    "conn_pool_size": 20,

    "write_timeout": 10,

    "idle_timeout": 10,

    "username": "root",

    "password": "123456",

    "auth_secure": false,

    "write_tracing": false,

    "query_tracing": false,

    "https_enabled": false,

    "https_cert": "",

    "https_key": ""

}

 

 

系统服务配置文件

 

/etc/systemd/system/influx-proxy.service

 

 [Unit] Description=influx-proxy After=network.target

 [Service] Type=simple ExecStart=/usr/local/bin/influx-proxy -config /opt/influx-proxy/proxy.json KillSignal=SIGTERM

 [Install] WantedBy=multi-user.target

 

Systemctl start influx-proxy

 

 

 七、SLB配置

建立slb监听端口到两台 influx-proxy 7076的监听

 

八、安全组配置

需要放行内网访问权限

8086  influxd http服务端口(可以只开放给influx-proxy主机)

7076 Influx-proxy服务端口  (可以只开放给slb IP)

九、注意事项

注意需要关闭主机的防火墙

go mod download不能下载到go get golang.org/x 的包解决方案

go env -w GO111MODULE=on

go env -w GOPROXY=https://goproxy.io,direct

 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值