grpc

容器开放接口规范概述

吃可爱长大的小学妹 提交于 2020-10-24 00:41:10
  云原生(CNCF)很火, 容器开放接口规范 CRI CNI OCI CRI - Container Runtime Interface(容器运行时接口)    CRI中定义了容器和镜像的服务的接口 ,因为容器运行时与镜像的生命周期是彼此隔离的,因此需要定义两个服务,该 接口使用Protocol Buffer(序列化) ,基于gRPC Container Runtime实现了CRI gRPC Server,包括RuntimeService和ImageService 。该gRPC Server需要监听本地的Unix socket, 而kubelet则作为gRPC Client运行 启用CRI 除非集成了rktnetes,否则CRI都是被默认启用了,kubernetes1.7版本开始旧的预集成的docker CRI已经被移除。 要想启用CRI只需要在kubelet的启动参数重传入此参数: --container-runtime-endpoint 远程运行时服务的端点 。当前Linux上支持unix socket,windows上支持tcp。例如: unix:///var/run/dockershim.sock(socket) 、 tcp://localhost:373(tcp) ,默认是 unix:///var/run/dockershim.sock

如何管理越来越多的 operator?OLM 给你答案

馋奶兔 提交于 2020-10-22 00:56:12
作者 | 匡大虎、阚俊宝 导读 :OLM(Operator Lifecycle Manager) 作为 Operator Framework 的一部分,可以帮助用户进行 Operator 的自动安装,升级及其生命周期的管理。同时 OLM 自身也是以 Operator 的形式进行安装部署,可以说它的工作方式是以 Operators 来管理 Operators,而它面向 Operator 提供了声明式 (declarative) 的自动化管理能力也完全符合 Kubernetes 交互的设计理念。本文我们将来了解一下 OLM 的基本架构和安装使用。 OLM 组件模型定义 OLM 的出现是为了帮助没有如大数据,云监控等领域知识的用户能够自助式地部署并管理像 etcd、大数据分析或监控服务等复杂的分布式应用。因此从它的设计目标来说,OLM 官方希望实现面向云原生应用提供以下几个方向上的通用管理能力,包括: 生命周期管理:管理 operator 自身以及监控资源模型的升级和生命周期; 服务发现:发现在集群中存在哪些 operator,这些 operators 管理了哪些资源模型以及又有哪些 operators 是可以被安装在集群中的; 打包能力:提供一种标准模式用于 operator 以及依赖组件的分发,安装和升级; 交互能力:在完成了上述能力的标准化后,还需要提供一种规范化的方式(如 CLI

TiDB 在北京银行交易场景中的应用实践

不打扰是莪最后的温柔 提交于 2020-10-21 14:13:28
作者介绍:陈振东,北京银行软件开发部 北京银行是一家城市商业银行,公司价值位列中国区域性发展银行的首位,依托于中国经济的大环境,北京银行的资产总量在全球千家大银行中名列第 61 位,连续六年跻身全球银行业百强。北京银行积极开辟多元化的业务经营,例如北京地区的社保缴纳和医保代发,都是由北京银行在提供服务,在你入职一家公司的时候,收到的医保折子就是来自北京银行。 业务转型驱动分布式架构建设 由于快速的业务发展需求,北京银行在业务转型中对系统架构进行了升级,逐渐向分布式架构进行转移。早在 2016 年,北京银行就开始了对分布式数据库的探索,并于 2018 年正式投产上线了 TiDB 分布式数据库,当时在业内还没有一个比较完善与成熟的体系,我们也是根据银行的安全合规需求建设了两地三中心的部署方案。 如上图所示,在两地三中心部署了 TiDB 分布式数据库集群,采用主从的多活架构,主集群作为生产集群承担日常的生产服务,从集群是建设在西安的异地灾备中心,主从之间是用 Kafka 同步 Binlog 形式进行数据的同步。 在这两年的建设过程中,北京银行与 PingCAP 进行专项的深度合作,这里简单介绍三个方面: 两地三中心 :在两地三中心的部署方案中,异地中心的网络延时会对整个集群的性能产生较大影响,我们在这层面上对 gRPC 的消息格式进行了压缩,同时利用 Multi-Raft

Go语言初探gRPC服务

混江龙づ霸主 提交于 2020-10-18 06:33:39
原文链接: https://www.jianshu.com/p/20ed82218163 环境:2018-05-12 protoc 3.5.1 go1.10.1 windows gRPC: Google主导开发的RPC框架,这里不再赘述。 准备工作 先安装Protobuf 编译器 protoc,下载地址: https://github.com/google/protobuf/releases 我的是windows,将压缩包bin目录下的exe放到环境PATH目录中即可。 然后获取插件支持库 // gRPC运行时接口编解码支持库 go get -u github.com/golang/protobuf/proto // 从 Proto文件(gRPC接口描述文件) 生成 go文件 的编译器插件 go get -u github.com/golang/protobuf/protoc-gen-go 获取go的gRPC包(网络问题可参阅 https://www.jianshu.com/p/6392cb9dc38f ) go get google.golang.org/grpc 接口文件 /src/ 新建 test.proto 示例: syntax = "proto3"; // 定义包名 package test; // 可以定义多个服务,每个服务内可以定义多个接口 service

HttpReports 2.0 发布了 !!!

China☆狼群 提交于 2020-10-16 11:33:41
https://www.cnblogs.com/myshowtime/p/13806631.html 来源 ???? 前言介绍 HttpReports 是基于.Net Core 开发的APM监控系统,使用MIT开源协议,主要功能包括,统计, 分析, 可视化, 监控,追踪等,适合在微服务环境中使用。 Github地址: https://github.com/dotnetcore/HttpReports 在线预览: http://122.51.188.23:8080 (带宽有限,第一次会有点慢) 在线文档: https://www.yuque.com/httpreports/docs 账号: admin 密码 123456 开源不易,感兴趣的同学还希望点个Star,支持下 ???? 简单架构 ???? 主要功能 接口调用指标分析 多服务节点数据聚合分析 慢请求,错误请求分析 接口调用日志查询 多类型预警监控 HTTP,Grpc 调用分析 分布式追踪 多数据库支持,集成方便 程序性能监控 2.0 更新 HttpReports 上一次发布HttpReports 还是在3个月前,HttpReports 2.0 版本的改动还是挺大的,所以建议老版本的升级前,还是先看下文档,本次更新主要以下几个方面 项目结构调整,统一使用 HttpTransport 使用 Vue + Antv +

全网疯传!阿里甩出的Netty高阶手册完全震碎了我以往对其的认知(理论+实践+面试+落地项目)

时光怂恿深爱的人放手 提交于 2020-10-14 20:38:20
前言 Netty作为目前最流行的NIO框架,Netty在互联网领域、大数据分布式计算领域、游戏行业、通信行业等获得了广泛的应用,知名的Elasticsearch 、Dubbo 框架内部都采用了Netty。随着互联网对各行各业的渗透,我们可以看到一些计算机领域的热门技术,例如云计算、微服务、物联网等,其背后的核心一直是连接。在这样一个背景下, 掌握Netty可以算得上是一个开发人员最重要的技能。 但很多人在对Netty的学习上一直没有一个系统的概念,不知道该怎么学,为什么要学。市面上关于Netty的学习资料其实也是很少的。 今天要与大家介绍的 阿里内部Netty进阶手册( 2份Netty文档+一个Netty实战项目+面试专题)。是完全可以 带大家彻底的玩转Netty,无论你是小白还是用过Netty的开发人员, 相信都可以在这篇文章中收益。 第一份文档 由于篇幅限制只把主要内容展示出来,第一份文档注重的是Netty的概念。就不做过多的篇幅展示的了,我把主要篇幅用来展示实践文档与项目,需要所有资料的的小伙伴帮忙点赞文章,关注我添加助理即可免费获取了。 第1章Java的I/O演进之路 第2章NIO入门 入门篇Netty NIO开发指南 第3章Netty入门应用 第4章TCP粘包/拆包问题的解决之道 第5章分隔符和定长解码器的应用 中级篇Netty编解码开发指南 第6章编解码技术