webhook

redmine推送消息至钉钉

走远了吗. 提交于 2019-11-29 09:40:23
前言 公司项目管理中用到了软件redmine,然鹅redmine的任务消息并不会实时推送给指定人员(支持邮件推送,个人并不是很喜欢邮件感觉比较正式,通过实时的消息会更讨喜一些)。然后萌生了推送到实时聊天工具的想法,钉钉是现阶段比较流行的工具公司内聊天通讯工具(当然也有其他的QQ,微信,Skype等)。找到了一个方式:redmine可以通过webhook的方式向外发送请求,于是乎就能自己搭建一个小服务推送到钉钉了。 redmine的webhook插件安装 redmine2.4 -> 3.x 插件 https://github.com/phanan/redmine_webhook redmine4.x 插件 https://github.com/suer/redmine_webhook 我用的是3.x的版本用了第一个安装完webhook后,管理员登录到redmine后可以看到多了一个webhook的配置项,如下图 可以配置多个地址,看各自的需求吧。 redmine推送消息解析 配置完webhook后,创建或修改redmine上的任务会出现以下类似消息 { "payload": { "action": "opened", "issue": { "id": 1, "subject": "A sample bug",//任务标题 "description": "Lorem ipsum

优化Kubernetes集群负载的技术方案探讨

微笑、不失礼 提交于 2019-11-29 09:37:58
Author: xidianwangtao@gmail.com 摘要:Kubernetes的资源编排调度使用的是静态调度,将Pod Request Resource与Node Allocatable Resource进行比较来决定Node是否有足够资源容纳该Pod。静态调度带来的问题是,集群资源很快被业务容器分配完,但是集群的整体负载非常低,各个节点的负载也不均衡。本文将介绍优化Kubernetes集群负载的多种技术方案。 Kubernetes为什么使用静态调度 静态调度,是指根据容器请求的资源进行装箱调度,而不考虑节点的实际负载。静态调度最大的优点就是调度简单高效、集群资源管理方便,最大的缺点也很明显,就是不管节点实际负载,极容易导致集群负载不高。 Kubernetes为什么会使用静态调度呢?因为要做好通用的动态调度几乎是不可能的,对,是通用的动态调度很难都满足不同企业不同业务的诉求,结果可能适得其反。那是不是我们就没必要去往动态调度做技术尝试呢?未必!平台根据托管的业务属性,可以适当的通过scheduler extender的方式扩展Kubernetes Scheduler来做一定权重的动态调度决策。 集群资源构成 以cpu资源为例,一个大规模Kubernetes集群的资源组成结构大致如下: 由以下几部分组成: 每个节点的预留资源,对应kubelet的system

微服务(spring cloud配置中心)

故事扮演 提交于 2019-11-29 00:13:16
1:理解bootstrap.yaml 它会在application之前加载,如果和application有同名属性,先启动的会被覆盖。 2:配置中心与我们的注册中心,必须要有一个先启动 3:spring的配置与环境化 在spring3.0-》 <beans profile =”test”> <bean id=””> </beans> 4:搭建一个配置中心 Git svn 本地文件 读取本地文件: 理解一下 ${user.dir} 在配置中心/resources下新建文件夹configs 创建三个文件 eurekaserver-dev.yml eurekaserver-prod.yml eurekaserver-prod.yml 引入jar <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--引入核心jar-->

使用 Jenkins 构建 Coding 项目 (资源)

↘锁芯ラ 提交于 2019-11-26 20:36:49
J en k in s 简介 Jenkins是一种跨平台的持续集成和交付的应用软件,它便于不断稳定地交付新的软件版本,并提高你的工作效率。这款开发运维工具还让开发人员更容易把项目的变化整合起来,并使用大量的测试和部署技术。 Jenkins是一个开源的、可扩展的持续集成、交付、部署(软件/代码的编译、打包、部署)的基于web界面的平台。前身是Hudson是一个可扩展的持续集成引擎。可用于自动化各种任务,如构建,测试和部署软件。允许持续集成和持续交付项目,无论用的是什么平台,可以处理任何类型的构建或持续集成。 Jenkins能实时监控持续集成过程中所存在的问题,提高详细的日志文件和提醒功能,用图表的形式,形象地展示项目构建的趋势和稳定性。 使用 Jenkins 构建 Coding 项目 Jenkins 版本 安装配置 Jenkins Coding Webhook Plugin 在 Coding 中配置 Webhook Jenkins 是一个用 Java 编写的开源的持续集成工具。它运行在 Servlet 容器中(例如 Apache Tomcat)。它支持软件配置管理(SCM)工具(包括 AccuRev SCM、CVS、Subversion、Git、Perforce、Clearcase 和 RTC),可以执行基于 Apache Ant 和 Apache Maven 的项目,以及任意的

kubernetes CRD开发指南

*爱你&永不变心* 提交于 2019-11-26 02:32:25
扩展kubernetes两个最常用最需要掌握的东西:自定义资源CRD 和 adminsion webhook, 本文教你如何十分钟掌握CRD开发. kubernetes允许用户自定义自己的资源对象,就如同deployment statefulset一样,这个应用非常广泛,比如prometheus opterator就自定义Prometheus对象,再加上一个自定义的controller监听到kubectl create Prometheus时就去创建Pod组成一个pormetheus集群。rook等等同理。 我需要用kubernetes调度虚拟机,所以这里自定义一个 VirtualMachine 类型 <!--more--> kubebuilder kubebuilder能帮我们节省大量工作,让开发CRD和adminsion webhook变得异常简单。 安装 通过源码安装: git clone https://github.com/kubernetes-sigs/kubebuilder cd kubebuilder make build cp bin/kubebuilder $GOPATH/bin 或者下载二进制: os=$(go env GOOS) arch=$(go env GOARCH) # download kubebuilder and extract it to

技术人如何利用 github+Jekyll ,搭建一个独立免费的技术博客

梦想与她 提交于 2019-11-25 22:27:59
上次有人留言说,技术博客是程序员的标配,但据我所知绝大部分技术同学到现在仍然没有自己的技术博客。原因有很多,有的是懒的写,有的是怕写不好,还有的是一直想憋个大招,幻想做到完美再发出来,结果一直胎死腹中。但其实更多程序员是不知道如何去搭建一个博客,其实如今搭建一个个人技术博客非常简单,其中最简单搭建方式莫属使用 GitHub Pages + Jekyll 了,我的博客就是使用这种技术。 GitHub Pages Github Pages 是面向用户、组织和项目开放的公共静态页面搭建托管服务,站点可以被免费托管在 Github 上,你可以选择使用 Github Pages 默认提供的域名 github.io 或者自定义域名来发布站点。Github Pages 支持 自动利用 Jekyll 生成站点,也同样支持纯 HTML 文档,将你的 Jekyll 站点托管在 Github Pages 上是一个不错的选择。 使用 Github Pages 搭建博客有以下几个优点: 完全免费,其中服务器、流量、域名什么的都管,完全零费用搭建一个技术博客 写博客就是提交代码,让写作和编程的体验保持一致 支持绑定自己的域名 提供流行的网页主题模板 缺点也是有的: 不支持动态内容,博客必须都是静态网页,一般会使用 Jekyll 来构建内容。 博客不能被百度索引,因 Github 和百度有过节,所以