服务治理之 关于服务治理的个人看法

本文涉及的产品
应用实时监控服务-用户体验监控,每月100OCU免费额度
性能测试 PTS,5000VUM额度
可观测可视化 Grafana 版,10个用户账号 1个月
简介: 在软件`开发`、`维护`过程中。软件的生命力总是从最初的`理想`状态,逐步趋向于`复杂`、`混乱`和`无序状态`发展,软件将会进入`寂静`状态(谁也不敢动),再到软件`不可维护`而被迫`下线`或`重构`。 这种损坏软件质量的因素的逐步增长,叫做软件的`熵增现象`。

服务治理之 关于服务治理的个人看法

一、熵增现象

在软件开发维护过程中。软件的生命力总是从最初的理想状态,逐步趋向于复杂混乱无序状态发展,软件将会进入寂静状态(谁也不敢动),再到软件不可维护而被迫下线重构。 这种损坏软件质量的因素的逐步增长,叫做软件的熵增现象

表象引起原因:

  1. 不合理的需求,不合理的实现,放到不合理模块中;
  2. 有外部因素(时间紧,多方妥协结果)等,导致不合理的过程;
  3. 业务指数增长,目前架构不符合当下负荷量;
  4. 未知的未知

软件 熵增现象 不可避免,但对于特定环境、特定场景下, 可遏制熵增加剧。

发展到一定地步的企业和服务,服务治理产品迭代两条腿平行走。

二、 软件 服务治理 本质是啥?

我个人浅薄理解:服务治理 本质在于两个字

  • 的能力:将公共、抽象、可复用能力平台,收拢在一起,形成通用平台/服务,方便应用方聚焦;
  • 的能力:限制在一个团队/组织/企业中,限制对软件语言、软件框架、软件实现方式、软件运维方式等纬度使用,避免不必要的技术炫技小众技术泛滥

PS: 说明几个点

  1. 并非对 研发友好,并不会100%减少工作量,返而在前期会增加工作量;
  2. 服务治理运维、管理、管控、审计、安全、统计等纬度要求,并不能达到短平快的研发实现;
  3. 服务治理 在一定范围里面(一款完整产品-淘宝,一个组织-消费者云等),一定需要100%全部接入(包括历史不同版本、不同环境等)

三、 服务治理: 从 A点B点 实现路径是什么?

服务治理中,不可否认管理手段技术手段都不能少,但需要有先后关系相辅相成的. 原则上,以技术手段为主, 管理手段手段为辅。管理手段在关键节点上,才会发挥作用。

3.1 如何找A点和B点的实现路径

A点:需要『架构师』数据驱动方式,找到痛点,现解决当下问题是什么? B点是最终在这个组织内服务治理是怎样的蓝图;

实现路径: 从 A点B点 实现的每一个Step 以及 需要达到的预期点.

每家公司,每套产品都有差异,但公共部分也不少。
公共部分包括:

  • 统一的session服务单点登入SSO
  • 统一的iam认证验权体系
  • 全局的产品树/服务树(组织->产品->模块->实例->{流量、资源利用率、xx率})
  • 实时运维/运营(旭日图、转化漏斗)

差异化服务:

  • 语言框架 Framework/SDK
  • 基础设施(内部DNS服务、知识库、API管理中心)
  • 基础服务体系(AB灰度、配置中心、注册中心、熔断中心、音视频处理、图床、消息、OCR等)
  • 平台能力服务(订单中心、用户中心、事件/消息中心)

3.2 管理手段技术手段 介入时机

在 整个服务治理过程中,管理手段 使用次数不超过3次.

  • 从0到1的过程,技术手段手段为主,找到第一个种子用户; 确实可以达到双赢目标;
  • 关键节点:推动铺量,可通过管理手段 推动接入;
  • 以此反复;

注意:

  1. 切记 啥也没有,直接上 管理手段; DDDD;
  2. 切记 平凡上管理手段,会对平台失去公信力;

四、具体案例(聚焦与Kubernetes场景)

  1. 遏制应用无止境的使用operator来控制应用
    内部Kubernetes使用云平台(web)管理,只能有少数SRE可登入机器中心CLI命令行,研发、QA和运维都使用平台操作.
    1. 磨练内部云平台功能稳定性和兼容性
    1. 数据化统计功能易用性 和 是否合理(点击事件)

在这个基础上,平台开启operator应用商店,类似于operatorhub, 来管理组织内部内源高可用的operator(可能也就是几个到十几个)。
核心:

  • 维护kubernetes版本与operator兼容性版本管理;
  • 维护operatorhub对底层基础设施依赖管理(特殊的os、特殊的kernel版本),来做安装check
  1. 元数据管理
    禁止configmapmetaserver 服务使用
    禁止configmap配置中心 使用
    禁止secret证书中心 使用
    禁止etcd服务 直接当 服务注册中心 使用
    禁止将 对象的label 当做容器运行时的metaserver使用
    禁止将 对象的annotation 当做容器运行时的metaserver使用
    遏制将 对象的annotation 当做容器运行时的metaserver使用

Kubernete的资源是用于资源调度和一致性管理,禁止用于服务数据传递

构建全局的配置中心注册发现中心源数据中心分布式锁中心证书管理中心, 方便用户接入;

  1. 高可用
    要求服务驱逐时,长/短链接、流量(东西、南北)无损;
    建议无状态多实例部署;有状态实例支持sharding;

长/短链接:

  • 长链接:长链接主动connect close. 通过client 链接重新选实例建立,将链接全部驱逐掉;
  • 短链接:确保本次处理结束。优雅关闭链接;

流量:
通过设置 perStop + 实例按Step步进变更/回滚,实现流量无损;

其他

相关文章
|
1天前
|
监控 安全 测试技术
深入理解并实践微服务架构中的服务治理
深入理解并实践微服务架构中的服务治理
9 1
|
4月前
|
运维 Prometheus 监控
微服务架构下的服务治理实践
【7月更文挑战第27天】在微服务架构的浪潮中,服务治理作为确保系统稳定性和高可用性的关键手段,其重要性日益凸显。本文将探讨微服务架构下服务治理的核心要素,包括服务发现、配置管理、流量控制等,并结合实例分析如何有效实施服务治理策略,以提升系统的弹性、监控能力和安全性。通过本文,读者将获得一套实用的服务治理框架,以及面对复杂服务交互时保持清晰治理视野的方法。
|
4月前
|
监控 Kubernetes Cloud Native
云原生架构下的微服务治理之道
【7月更文挑战第30天】在数字化转型的浪潮中,企业级应用正迅速向云原生架构迁移。本文将深入探讨云原生环境下微服务治理的最佳实践,包括服务发现、配置管理、流量控制等关键策略,并结合实例分析如何在保障系统弹性、可维护性的同时,优化资源利用效率和加快业务创新速度。
52 2
|
6月前
|
运维 负载均衡 监控
探索微服务架构下的服务治理实践
【2月更文挑战第24天】 在当前软件开发领域,微服务架构已成为构建复杂系统的主流选择。它通过将大型单一应用程序分解为一组小的、松耦合的服务来提供灵活性和可维护性。然而,随之而来的是服务治理的挑战,包括服务发现、配置管理、负载均衡、熔断机制等。本文将深入探讨在微服务架构中实现有效服务治理的策略与技术实践,分享个人在这一过程中的感悟和经验教训。
|
运维 资源调度 监控
从零开始学微服务,阿里巴巴微服务架构到底有多牛逼?
近几年,微服务架构迅速在整个技术社区窜红,它被认为是 IT软件架构的未来方向。热度虽高,但对于很多中小公司来说微服务却是遥不可及,因为团队规模和能力又反过来制约了他们采用新技术的步伐。很多人对于微服务技术也都有着一些疑虑,比如:
从零开始学微服务,阿里巴巴微服务架构到底有多牛逼?
|
云安全 供应链 NoSQL
创新!阿里首发微服务实施手册我粉了,原来微服务还可以这样玩
相信大家在网上会看到很多帖子把分布式跟微服务放在一起讨论。确实,微服务就是一种分布式架构的设计方法。但是,在微服务概念还没有出现之前,分布式这个概念并不能引起人们的强烈关注,如果说自己擅长分布式架构设计,可能没有多少人理你,但如果说自己精于微服务架构设计,情况那就大不一样了。有关于微服务的优点,网上大把的文章已经说的很清楚了,我就不细说了,简单来说微服务能够创建一个“打不垮”的系统。以至于现在,微服务架构已经成为家公司技术 是否先进、是否具有规模发展的标杆配置。
创新!阿里首发微服务实施手册我粉了,原来微服务还可以这样玩
|
运维 监控 负载均衡
关于微服务的一些总结和经验之谈,来看看你都了解吗
关于微服务的一些总结和经验之谈,来看看你都了解吗
764 0
|
自然语言处理 监控 Java
对于服务治理概念的一些总结和理解,我们应该如何实践服务治理
对于服务治理概念的一些总结和理解,我们应该如何实践服务治理
256 0
|
运维 监控 前端开发
基于网关服务治理的研究与实践(二)服务治理
接上篇,本篇原创系列是对服务治理的相关背景说明,主要介绍了服务治理相关概念、技术及演进历程。
1419 1
基于网关服务治理的研究与实践(二)服务治理
|
运维 负载均衡 监控
微服务1:微服务及其演进史
微服务1:微服务及其演进史
153 0
微服务1:微服务及其演进史
下一篇
无影云桌面