扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
ELK日志系统大家不会陌生(zipkin + jaeger , prometheus + grafana)解决了大家对于链路对于统计采集的需求,但是真正的对于日志进行存储还是得专业的上,在Istio中官方提供的方案是EFK(Fluentd + Elasticsearch + Kibana)Fluentd 是一个开源的日志收集器,支持多种数据输出并且有一个可插拔架构。 Elasticsearch是一个流行的后端日志记录程序, Kibana 用于查看。
创新互联建站自2013年起,是专业互联网技术服务公司,拥有项目成都做网站、网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元西工做网站,已为上家服务,为西工各地企业和个人服务,联系电话:028-86922220
附上:
喵了个咪的博客: w-blog.cn
Istio官方地址:
Istio中文文档:
我们把Fluentd,Elasticsearch 和 Kibana 在一个非生产集合 Services 和 Deployments 在一个新的叫做logging的 Namespace 中。
创建资源
现在有一个正在运行的 Fluentd 守护进程,使用新的日志类型配置 Istio,并将这些日志发送到监听守护进程。
创建一个新的 YAML 文件来保存日志流的配置,Istio 将自动生成并收集。
使其生效
我们先访问以下我们的示例程序bookinfo,然后老方式通过端口映射访问kibana
在完成 k8s 上快速部署 go 服务 和 k8s: istio 入门 后, 继续 膨胀 , 使用 go 来实现 istio 提供的 bookinfo 微服务 demo
快速回顾之前的 blog:
涉及到的问题:
简单实践步骤:
先回顾一下 bookinfo 微服务应用的端到端架构:
包含 4 个微服务:
可以参考 k8s 上 go 服务实战: 使用 helm 快速构建云原生应用 快速部署 rating 服务
同理, 实现 productpage detail 服务
istio 几乎涵盖了 服务治理/流量控制 的方方面面, 作为服务治理层的基础设施 完全够用 , 问题开始从 行不行 , 转向 用哪些 , 让 业务层/devops工作流/k8s基础设施 用起来更爽
还需要解决的问题:
这篇笔记关于服务网格、Istio、联通天宫云,记录背景是笔者将一个SpringCloud项目上云的经历。
在前面的文章中,我们介绍了Docker相关的基本概念( 这篇文章 )以及K8s基本概念( 这篇文章 )。在本文中,我们详细介绍服务网格、Istio以及一个SpringCloud项目上云的整体流程(以天宫云为例)。
借用官方的描述来说:Istio 解决了开发人员和运维人员所面临的从单体应用向分布式微服务架构转变的挑战。了解它是如何做到这一点的可以让我们更详细地理解 Istio 的服务网格。
术语服务网格用来描述组成这些应用程序的微服务网络以及它们之间的交互。随着服务网格的规模和复杂性不断的增长,它将会变得越来越难以理解和管理。它的需求包括服务发现、负载均衡、故障恢复、度量和监控等。服务网格通常还有更复杂的运维需求,比如 A/B 测试、金丝雀发布、速率限制、访问控制和端到端认证。
Istio 提供了对整个服务网格的行为洞察和操作控制的能力,以及一个完整的满足微服务应用各种需求的解决方案。
简而言之,服务网格直接代理K8s集群中的服务治理工作,它使得运维工作变得更加简单。
未完待续...
天宫云是中国联通的云计算平台,在容器服务CKE中,其使用了基于Istio-K8s的集群配置和管理模式。
Istio是由Google、IBM和Lyft开源的微服务管理、保护和监控框架。Istio为希腊语,意思是”起航“使用istio可以很简单的创建具有负载均衡、服务间认证、监控等功能的服务网络,而不需要对服务的代码进行任何修改。你只需要在部署环境中,例如Kubernetes的pod里注入一个特别的sidecar proxy来增加对istio的支持,用来截获微服务之间的网络流量。
特性:
使用istio的进行微服务管理有如下特性:
流量管理:控制服务间的流量和API调用流,使调用更可靠,增强不同环境下的网络鲁棒性。可观测性:了解服务之间的依赖关系和它们之间的性质和流量,提供快速识别定位问题的能力。
策略实施:通过配置mesh而不是以改变代码的方式来控制服务之间的访问策略。
服务识别和安全:提供在mesh里的服务可识别性和安全性保护。
未来将支持多种平台,不论是kubernetes、Mesos、还是云。同时可以集成已有的ACL、日志、监控、配额、审计等。
正是 Istio 的出现使 “Service Mesh”( 服务网格 ) 这一概念开始流行起来。在深入介绍 Istio 的细节之前,让我们首先简单地了解一下 Service Mesh 是什么,以及它的重要性体现在哪里。我们都已经了解单体应用所面对的挑战,一种显而易见的方案是将其分解为多个微服务。虽然这种方式简化了单个服务的开发,但对于成百上千的微服务的通信、监控以及安全性的管理并不是一件简单的事。
直至目前,对于这些问题的解决方案也只是通过自定义脚本、类库等方式将服务串联在一起,并且投入专门的人力以处理分布式系统的管理任务。但这种方式降低了各个团队的效率,并且提高了维护的成本。这正是 Service Mesh 大显身手的时机
Istio以及Service Mesh的未来
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流