1、安装Docker
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
Docker 包括三个基本概念:
镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比
如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。
容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像。
Docker架构如图下图所示:
Docker最直接便捷的安装方式就是使用官方安装脚本自动安装:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
检验:
使用国内Docker镜像仓库,配置Docker镜像加速:
vim /etc/docker/daemon.json
{
"registry-mirrors": [
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"https://docker.mirrors.ustc.edu.cn"
]
}
Docker命令启动:
docker run -d --name=prometheus --restart=always\
-p 9090:9090 \
-v /path/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml \
prom/prometheus
查看运行状态:
浏览器访问hostip:9090,出现以下界面说明安装成功。
查看prometheus server自身的监控数据,hostip:9090/metrics
Docker安装grafana,命令如下:
Docker run -d --name=grafana --restart=always -p 3000:3000 grafana/grafana
查看docker containers列表
初次使用账号admin,密码admin登录:
添加prometheus server的数据库data source:
输入prometheus地址后保存测试能否检测到:
导入prometheus的dashboard:
返回Home主页,查看prometheus监控数据界面:
3、prometheus监控openstack云服务平台
Docker安装openstack的监控exporter(相当于数据采集器),
Openstack的api接口信息如下:
创建admin.novarc文件内容如下:
OS_PROJECT_DOMAIN_NAME=Default
OS_USER_DOMAIN_NAME=Default
OS_PROJECT_NAME=admin
OS_USERNAME=admin
OS_PASSWORD=admin
OS_IDENTITY_API_VERSION=3
OS_AUTH_URL=http://192.168.30.54/identity/v3
Docker命令启动:
docker run -itd \
--name=openstack -p 9183:9183\
--env-file=$(pwd)/admin.novarc\
--restart=unless-stopped moghaddas/prom-openstack-exporter
采集数据端口9183:
在prometheus server的配置文件中加入target:
在grafana中导入官方opensatck监控仪表盘,编号是7924:
监控
选择数据库:
进入仪表盘:
4、prometheus监控openstack的宿主机:
Docker安装node-exporter:
docker run -d \
--net="host" \
--pid="host" \
--name node-exporter \
-v "/:/host:ro,rslave" \
quay.io/prometheus/node-exporter \
--path.rootfs /host
查看运行状态:
查看监控数据:
在prometheus配置中添加任务job任务,然后在grafana中导入node-exporter仪表盘(编号11207),查看监控仪表盘:
|