第一步、安装Influxdb

首先启动docker

systemctl start docker

然后安装Influxdb(这里解释一下为啥用docker,因为官网下载的话需要翻墙【fan-qiang】,真悲催)注意切换root用户

[root@localhost admin]# docker pull influxdb
Using default tag: latest
Trying to pull repository docker.io/library/influxdb ...
latest: Pulling from docker.io/library/influxdb
55cbf04beb70: Pull complete
1607093a898c: Pull complete
9a8ea045c926: Pull complete
4c8b66fe6495: Pull complete
9f3c67b9b082: Pull complete
864cc6881ca8: Pull complete
c1165c5c85e6: Pull complete
0b5bd48b7b2b: Pull complete
Digest: sha256:c9098612611038b6d0daddf1ed89d0144f41124b0feed765c0d31844e7f32e9f
Status: Downloaded newer image for docker.io/influxdb:latest
[root@localhost admin]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/mongo latest 8bf72137439e days ago MB
docker.io/influxdb latest 34de2bdc2d7f days ago MB
docker.io/centos latest 5182e96772bf days ago MB
docker.io/hello-world latest 2cb0d9787c4d weeks ago 1.85 kB

启动Influxdb

[root@localhost admin]# docker run -d -p : -p : --name my_influxdb influxdb
aec85244ff227e3175afcba59dc7293001428e4b21300c09c5567becac270635
[root@localhost admin]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
aec85244ff22 influxdb "/entrypoint.sh in..." seconds ago Up seconds 0.0.0.0:->/tcp, 0.0.0.0:->/tcp my_influxdb

其实这一步可以省略8083端口,因为新版本根本就移除了web控制台部分,网上大多数教程还是0.8 或者 1.1版本的,他们那个有web控制台(其实14、15年的文章用低版本无可厚非,现在有的人2018年7月份的教程都用的0.8版本,我想问有意思吗?)

进入docker镜像:

[root@localhost admin]# docker exec -it my_influxdb bash

进入/usr/bin目录,这里面有Influxdb的工具

root@aec85244ff22:/usr/bin# find | grep influx
./influx
./influx_inspect
./influx_stress
./influx_tsm
./influxd

查看Influxdb版本

./influx -version

进入Influxdb客户端命令行

root@aec85244ff22:/usr/bin# ./influx
Connected to http://localhost:8086 version 1.6.1
InfluxDB shell version: 1.6.
> show databases
name: databases
name
----
_internal
> exit

创建数据库

> create database my_test
> show databases
name: databases
name
----
_internal
my_test

删除数据库

drop database [db_name]

使用数据库

> use my_test
Using database my_test

现在写个定时程序,不断向数据库添加数据

建立一个SpringBoot工程

导入依赖

入口类

package com.example.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled; import java.util.Random; @SpringBootApplication
@EnableScheduling
public class DemoApplication { public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
} @Scheduled(fixedRate = 1000)
public void doInsert(){
Random random = new Random();
InfluxDBDemo.insert(random.nextInt(1000));
} }

Influxdb类

package com.example.demo;

import org.influxdb.InfluxDB;
import org.influxdb.InfluxDBFactory;
import org.influxdb.dto.Point; public class InfluxDBDemo { public static void insert(int num){
InfluxDB db = InfluxDBFactory.connect("http://192.168.192.128:8086", "admin", "admin");
db.setDatabase("my_test"); // 设置数据库
Point.Builder builder = Point.measurement("test_measurement"); // 创建Builder,设置表名
builder.addField("count",num); // 添加Field
builder.tag("TAG_CODE","TAG_VALUE_" + num); // 添加Tag
Point point = builder.build();
db.write(point);
}
}

当你启动,每隔1秒自动向数据库添加

这个时候,显示表列表

> show measurements
name: measurements
name
----
test_measurement

查看表

> select * from test_measurement
name: test_measurement
time TAG_CODE count
---- -------- -----
TAG_VALUE_655
TAG_VALUE_42
TAG_VALUE_881
TAG_VALUE_461
TAG_VALUE_374
TAG_VALUE_574
TAG_VALUE_647
TAG_VALUE_78
TAG_VALUE_688

删除表

drop measurement 【measurement_name】

第二步、安装Grafana

相比之下,grafana就比较友好了,因为官网上的都能下载,无论Windows还是linux。

[root@localhost admin]# docker pull grafana/grafana
Using default tag: latest
Trying to pull repository docker.io/grafana/grafana ...
latest: Pulling from docker.io/grafana/grafana
be8881be8156: Pull complete
728ffd1b8130: Pull complete
426111690cea: Pull complete
Digest: sha256:b5591419cfa3a930cecdddff0a338c03296d29b617d9f340dc72ee839dd1c5be
Status: Downloaded newer image for docker.io/grafana/grafana:latest

运行

[root@localhost admin]# docker run -d -p : --name my_grafana grafana/grafana
6c9d5d2d8422e666ca44403c5c47be3fa43308b4d2a9587ab16ad97fcffede24

打开防火墙端口,以便你本机能访问虚拟机资源

[root@localhost admin]# firewall-cmd --zone=public --add-port=/tcp --permanent
success
[root@localhost admin]# firewall-cmd --zone=public --add-port=/tcp --permanent
success
[root@localhost admin]# systemctl restart firewalld

访问  http://192.168.192.128:3000

账号密码:admin/admin,进去之后让你修改密码

进去之后

现在配置数据源

最后点击

然后点击,选择Home

..添加dashboard

..

..点击Panel Title

..

..

..在右上角可以设置展示效果

设置自动刷新,选择时间范围,然后选择刷新间隔,注意点击Apply。这样每隔5s,自动刷新

..效果

..最后回到Home

..可以看到我们刚才创建的监控图

Docker下安装Influxdb-1.6.1和Grafana5.2.2的更多相关文章

  1. CentOS双机中Docker下安装Mysql并配置互为主从模式

    CentOS双机中Docker下安装Mysql并配置互为主从模式 目录 1.搜索镜像... 1 2.拉取镜像... 1 3.绑定端口: 1 4.配置文件(修改/etc/mysql/my.cnf文件): ...

  2. 基于kail的docker下安装sqli-labs

    后面的关卡涉及到转码问题,比如空格,在Windows中会受到限制,比如24关的文件重命名问题,所以在这记录下在docker下安装sqli-labs,在linux下运行就不会受到限制. 参考链接:htt ...

  3. docker下安装tomcat

    一,查看tomcat镜像 [root@icompany ~]# docker search tomcat INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED ...

  4. .NetCore Linux环境下安装InfluxDB以及配置设置

    Linux下安装 确定需要安装的版本,我的linux是干净的,所以我需要先安装wget yum -y install wget 下载安装 wget https://dl.influxdata.com/ ...

  5. docker下安装 Oracle11gR2

    这是第二次安装,在第一次安装过程部分内容参考自如下: http://blog.sina.com.cn/s/blog_d840ff330102v4j0.html docker下oracle11g安装 h ...

  6. docker下安装mysql数据库

    因为用了.net core 所以想学习下使用docker: 项目中刚好要用到mysql数据库,所用用docker来安装一次,我使用的是5.6版本: 1.拉取官方镜像 docker pull mysql ...

  7. Docker下安装zookeeper(单机 & 集群)

    启动Docker后,先看一下我们有哪些选择. 有官方的当然选择官方啦~ 下载: [root@localhost admin]# docker pull zookeeper Using default ...

  8. Docker下安装GitLab

    1.需要先安装Docker和Docker Compose,参考:https://www.cnblogs.com/hackyo/p/9280042.html 2.配置GitLab SSL(可跳过): m ...

  9. docker 下安装gitlab

    1.找到docker镜像 docker search gitlab 2.下载gitlab镜像 docker pull  gitlab/gitlab-ce/ 3.通常会将 GitLab 的配置 (etc ...

随机推荐

  1. spring 给一个类 生成test

    右击一个类,然后:GoTo==>test ,就可以新建这个类的测试用例了,简单粗暴, 如果想要不污染数据库,就在一个测试用例 的标签@Test 下面在加上@RollBack 这样: @Test ...

  2. js auto hover button & html5 button autofocus

    js auto hover button & html5 button autofocus input // html 5 <input name="myinput" ...

  3. Ehlib(Delphi控件) v9.2.024 D7-XE10.2 免费绿色特别版

    下载地址:https://www.jb51.net/softs/579413.html#downintro2 EHLib是一个DELPHI 下的非常棒的第三方Grid控件,比DELPHI自带的强大许多 ...

  4. Python——数组模块(array)

    一.模块说明 array模块是python中实现的一种高效的数组存储类型.它和list相似,但是所有的数组成员必须是同一种类型,在创建数组的时候,就确定了数组的类型. 二.代码

  5. MySQL数据库安装配置

    1,下载MySQL 打开MySQL的官网www.mysql.com,发现有一个DOWNLOADS 点击它,进入到MySQL的下载页面,在页面的底部有一个MySQL Community Edition, ...

  6. python绘制图形

      python能快速解决日常工作中的小任务,比如数据展示. python做数据展示,主要用到matplotlib库,使用简单的代码,就可以很方便的绘制折线图.柱状图等.使用Java等,可能还需要配合 ...

  7. Bash 5.0 发布及其新功能

    导读 邮件列表证实最近发布了 Bash-5.0.而且,令人兴奋的是它还有新的功能和变量.如果你一直在使用 Bash 4.4.XX,那么你一定会喜欢 Bash 的第五个主要版本. 第五个版本侧重于新的 ...

  8. Mail.Ru Cup 2018 Round 2

    A:阅读理解. #include<iostream> #include<cstdio> #include<cmath> #include<cstdlib> ...

  9. centos 7创建ss服务(方式一)

    一:安装PIP,由于安装的是python 版本的ss,所以需要先安装PIP: $ curl "https://bootstrap.pypa.io/get-pip.py" -o &q ...

  10. P1403 [AHOI2005]约数研究

    原题链接 https://www.luogu.org/problemnew/show/P1403 这个好难啊,求约数和一般的套路就是求1--n所有的约数再一一求和,求约数又要用for循环来判断.... ...