consul知识点归纳
admin
2023-04-04 13:03:30
0

consul_template: https://www.hi-linux.com/posts/36431.html

1、下载安装包 并解压consul 得到consul二进制文件

https://releases.hashicorp.com/consul/1.3.1/consul_1.3.1_linux_amd64.zip 

mkdir /application &&  mv consul /application

2、启动脚本启动consul_server 

#!/bin/bash
bin_path=/application/
data_path="$bin_path"/data
nodename=`hostname`
idc=dc1
bindip=`/sbin/ifconfig eth0 |grep '\binet \b' |sed -nr 's#[^0-9]*([0-9.]*).*#\1#gp'`
bootstrap_expect=1
$bin_path/consul agent  -server \
                        -bind=$bindip \
                        -ui \
   -client=0.0.0.0 \
                        -bootstrap-expect=$bootstrap_expect \
                        -data-dir $data_path \
                        -node $nodename \
                        -datacenter=$idc \
                        -log-level=warn \
                        -pid-file=$bin_path/consul.pid

3、consul配合consul_template自动修改prometheus配置

参考博客:https://www.hi-linux.com/posts/36431.html

1、consul指定添加单个key

./consul kv put prometheus/kubernetes-apiserver/address 10.0.0.31

2、consul指定获取单个key

./consul kv get prometheus/kubernetes-apiserver/address

3、consul指定删除单个key

./consul kv delete prometheus/kubernetes-apiserver/address


4、consul_template安装

$ wget https://releases.hashicorp.com/consul-template/0.18.3/consul-template_0.18.3_linux_amd64.zip
$ unzip consul-template_0.18.3_linux_amd64.zip
$ mv consul-template /usr/local/bin/


5、prometheus配置文件来设置tcp端口检测机制:

- job_name: "tcp_port_discorvery"
  scrape_interval: 5s
  metrics_path: /probe
  params:
    module: [tcp_connect]
  file_sd_configs:
    - files:
  - /home/work/software/prometheus/tcp_port.json
  relabel_configs:
    - source_labels: [__address__]
  target_label: __param_target
- source_labels: [__param_target]
  target_label: instance
- target_label: __address__
  replacement: xxx.xx.xx.xx:31659

配置consul_template模板来进行配置渲染

vim /prometheus/template.json
[{{ range tree "prometheus/linux" }}
{
"targets": ["{{ .Value }}"],
"labels": {
"process_name": "{{ .Key }}"
}
},
{{ end }}
{
"targets": ["xxx.xx.xx.xx:80"],
"labels": {
"process_name": "tengine"
}
}
]



vim /application/prometheus.ops
consul {
address = "xxx.xx.xx.xx:8500"
}
template {
source = "/prometheus/template.json"
destination = "/home/work/software/prometheus/tcp_port.json"
command = "curl -X POST http://127.0.0.1:9090/-/reload"
}


测试模板生成文件 看到文件内容为空

consul-template  -consul-addr xxx.xxx.xx.xx:8500 -template="complate.json:result" -once -dry

将要获取的key推到consul中注册

./consul kv put prometheus/tcp_port/k8smaster-apiserver 1xx.xx.xx.xx:6443


测试无误后启动consul-template

consul-template -config "/application/prometheus.ops" &

也可以添加到systemctl服务管理程序设置开机自启动


相关内容

热门资讯

特朗普下令不打了,美国的“余粮... 可以说戛然而止,快得让很多人都无法适应。前两周,每一天美国都要打击伊朗一通。就在7月24日白宫会议前...
穆杰塔巴最新表态:支持黎真主党 △伊朗最高领袖穆杰塔巴·哈梅内伊(资料图)当地时间7月26日晚,伊朗最高领袖穆杰塔巴·哈梅内伊对黎巴...
美军瘫痪一艘驶向伊朗的油轮,特... 美国总统特朗普虽下令暂停打击伊朗,但美军仍在执行对霍尔木兹海峡的封锁任务。针对美军瘫痪一艘驶向伊朗油...
“小牌大耍”的底气到底是哪里来... 澎湃首席评论员 李平这两天,“艺人李权哲乘高铁占座事件”在网上引发热议,该艺人参加的活动主办方曾发布...
越南籍船舶南海遇险沉没,中方已... 据凤凰卫视报道,一艘越南船舶7月24日夜间在越南庆和以东220海里附近遇险沉没,船上共62名越南籍人...
李权哲占座、蒙面、装死:娱乐圈... 你买了一张高铁一等座的票,找到自己的位置,18A。有人坐着。你拿出手机看了眼购票记录——没错,18A...
杭州景区咖啡店闯入1条幼蛇,仅... 夏天气温高、湿度大,蛇类活动进入高峰期,千万别被“小蛇无害”的刻板印象骗了!有些幼蛇看着迷你可爱,实...
AI开源公开信签署企业增至50... IT之家 7 月 26 日消息,英伟达、微软、IBM、Meta 等 25 家美国科技企业本周(7 月...
南阳快手短视频代运营企业的服务... 在短视频平台快速发展的背景下,企业通过快手等渠道进行内容运营已成为常见的市场动作。对于希望借助短视频...
普通人该如何跟上科技发展的步伐 这个被称作科技的词汇, 听起来既有宏大之感, 又颇为遥远, 好似仅仅归属于在实验室里专心致志钻研的科...