Browsed by
日期:2020年3月9日

Medallia

Medallia

閱讀本文約花費: 1 (分鐘) 苹果发来的在线调查问卷,填完之后有点好奇,看了一下源代码,发现是 Medallia 提供的服务。再一查,发现 Medallia 是一家上市公司,市值 20 多亿美元。 Medallia 是一家位於加利福尼亞州舊金山的客戶體驗管理公司,在布宜諾斯艾利斯,倫敦,特拉維夫,慕尼黑,巴黎,紐約市,華盛頓特區,奧斯汀和悉尼均設有辦事處。Medallia 為國際上的酒店,零售,金融服務,高科技和企業對企業公司提供軟件即服務客戶體驗管理和員工體驗管理軟件。

使用Prometheus Operator实现应用自定义监控

使用Prometheus Operator实现应用自定义监控

閱讀本文約花費: 9 (分鐘) 一、前言 在之前文章中为大家讲解了如何在Kubernetes集群中部署Prometheus,已经可以通过Prometheus监控Kubernetes中Pod的状态、核心组件的状态等数据。那么如何将应用自身的数据进行集成呢? 首先prometheus对收集的数据格式是有一定的要求的,具体格式如下,只有符合此格式的prometheus才会正常的采集,所以在应用中我们需要能把关键性的监控数据以此格式抛出来。 nginx_http_connections{state=”active”} 2 nginx_http_connections{state=”reading”} 0 nginx_http_connections{state=”waiting”} 1 nginx_http_connections{state=”writing”} 1 nginx_http_request_bytes_sent{host=”10.46.0.4″} 11055968 nginx_http_request_bytes_sent{host=”testservers”} 4640 nginx_http_request_time_bucket{host=”10.46.0.4″,le=”00.005″} 3960 … 至于怎么把监控指标数据抛出来,可能需要从应用本身动手。Prome…

Read More Read More

使用Prometheus Operator监控kubetnetes集群

使用Prometheus Operator监控kubetnetes集群

閱讀本文約花費: 9 (分鐘) 一、简介 Prometheus Prometheus 是一个开源监控系统,它本身已经成为了云原生中指标监控的事实标准,几乎所有 Kubernetes 的核心组件以及其它云原生系统都以 Prometheus 的指标格式输出自己的运行时监控信息。 主要特性: 使用指标名称及键值对标识的多维度数据模型。采用弹性查询语言PromQL。不依赖分布式存储,为自治的单点服务。使用http完成对监控数据的拉取。通过网关支持时序数据的推送。支持多种图形和Dashboard的展示。 另外在Prometheus的整个生态系统中有各种可选组件,用于功能的扩充。 Prometheus-Operator CoreOS提供了一种名为Operator的管理工具,他是管理特定应用程序的控制器。通过扩展Kubernetes API以软件的方式帮助用户创建、配置和管理复杂的或又状态的应用程序实例(如etcd、Redis、MySQL、Prometheus等)。 它通过Kubernetes的CRD(Custom Resource Definition,自定义资源定义)对Prometheus和Prometheus需要监控的服务进行部署和配置。 Prometheus-Operator使用下面两种资源来配置Prometheus及其要监控的服务。 Prometheus:为Prometheus的dep…

Read More Read More

Redis 分布式锁工具类

Redis 分布式锁工具类

閱讀本文約花費: 1 (分鐘) @Component public class RedisLock { private static final Long RELEASE_SUCCESS = 1L; private static final String LOCK_SUCCESS = “OK”; private static final String SET_IF_NOT_EXIST = “NX”; // 当前设置 过期时间单位, EX = seconds; PX = milliseconds private static final String SET_WITH_EXPIRE_TIME = “EX”; //lua private static final String RELEASE_LOCK_SCRIPT = “if redis.call(‘get’, KEYS[1]) == ARGV[1] then return redis.call(‘del’, KEYS[1]) else return 0 end”; @Autowired private StringRedisTemplate redisTemplate; /** 该加锁方法仅…

Read More Read More

Nginx代理80、代理443端口的说明

Nginx代理80、代理443端口的说明

閱讀本文約花費: 2 (分鐘) 端口协议80http443https 首先要安装nginx,这里采用yum安装方式 #yum -y install nginx安装完成后编辑其配置文件 #vim /etc/nginx/nginx.conf 配置代理80端口 server { listen 80; server_name www.prometheus.test.com; #自定义域名 root /usr/share/nginx/html; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { proxy_pass http://192.168.100.158:9090; #填写对应主机IP } } 配置代理443端口 因https方式需要涉及到证书,我这里使用openssl自创建证书 #openssl genrsa -out tls.key 2048 #openssl req -new -x509 -days 365 -key tls.key -out tls.crt -subj /C=CN/ST=Beijingshi/L=Beijing/O=devops/CN=cn server { listen 80; listen 443…

Read More Read More

Redis集群搭建详细与卡槽迁移遇到的坑

Redis集群搭建详细与卡槽迁移遇到的坑

閱讀本文約花費: 17 (分鐘) 前言 redis5.0.0之前操作 redis集群用的是 ruby写的脚本 redis-trib.rb,这样带来的弊端就是需要安装 ruby, gems环境,官方拉取的 docker镜像里是没有 redis-trib.rb等 ruby环境的,需要自己安装,在国内网络环境下还是比较费时复杂的,也不容易成功,而且最后制作的docker镜像也比较大。再者安装的 ruby、redis扩展版本不对,也会导致操作集群时,报各种各样的错误。 最重要的硬伤是 redis-trib.rb不能操作带密码的 redis集群,虽然 github上有人在 redis-trib.rb脚本基础上已经加了密码支持。但对于 move_slots的迁移卡槽相关的操作,我试了还是没加。可以查看以下的提交记录: Redis-Cluster: Add support to auth in redis-trib.rb #4288 redis5.0.0之后的 redis-cli可以直接操作 redis集群,可以支持带密码操作,可以说带来了很大的方便。但是在 redis4.0.7版本之前迁移卡槽本来就是不支持密码 auth参数的,以下命令中的 [AUTH password]是 redis4.0.7版本才支持。 MIGRATE host port key|”” destination-db tim…

Read More Read More