简介: 经过仔细研究,我们发现秘籍中提到许多帮助解决交付问题的招式,而其中一个让我们印象很深,是关于在原有社区版容器底座 Kubernetes(以下简称 K8s)的基础上,对容器底座进行改进,可更好的服务于应用交付的招式。下面,请随我一起来看看您是否是那天选之人吧!

大家好,我是专注于交付的王小锤,看过交付铁三角系列故事(专注交付的我小锤,开发老哥铁子和售前大佬强哥)的同学想必都知道,我们三人服务于一家提供大数据分析服务的 ISV 企业,在应用交付过程中时常面临各种挑战。

那日,就在我们为一个交付难题发愁时,有人兴奋的冲过来说找到了解法。就这样,一本独家交付秘籍走进了我们的世界,而且此秘籍还号称运用好便可让交付更简单。经过仔细研究,我们发现秘籍中提到许多帮助解决交付问题的招式,而其中一个让我们印象很深,是关于在原有社区版容器底座 Kubernetes(以下简称 K8s)的基础上,对容器底座进行改进,可更好的服务于应用交付的招式。下面,请随我一起来看看您是否是那天选之人吧!

天选之人

 

学习招式前,先来看看您是否为天选之人,适合使用该招式进行交付吧!

被繁重的适配与兼容工作压的喘不过气?

  • 不同客户的环境均不同,需反复对硬件参数和操作系统配置,造成环境适配成本升高。POC 环境跑起来后,可能还存在系统库经常缺失或版本不兼容等问题。而如果碰到组件出 BUG 时,还需要等待社区的漫长修复支持,基本只能选择替代方案绕过。由于每个问题的解决都很耗时,留下产品质量不好的负面印象。
  • 大量的组件适配工作需人工调试,极耗费时间。使用开源的 K8s 及生态组件搭建环境与部署产品,由于缺少最佳实践做参考,K8s 本身各组件配置灵活度又非常高,很多组件参数配置并不合适,需要人为自己调试。不仅需要进行各种依赖库安装与性能测试,还需每个环境都定制化适配。

期望能够实现兼容性检测与参数的自动适配。

信创趋势下的应用改造困难重重?

  • ARM 架构处理器 + 国产操作系统的场景越来越多,而国产化生态圈目前还在快速发展阶段,较难找到合适的ARM 版本组件,不仅如此,找适配组件和改造的过程仍需花费大量时间,而且其中有许多对 IPV6 网络结构的要求或需要支持 IPv4/IPv6 网络双栈。

期望能轻松找到 ARM 版本组件来兼容信创环境,并轻松解决网络、操作系统等难题。

集群安装与调试过程大汗淋漓?

  • 因环境不同,在客户现场交付时,需做大量手动配置修改和调试工作。搭建集群后,如果缺乏集群安装和管理工具,还需研发人员提供很多详细的脚本辅助来进行生命周期管理,操作时出错概率加大且部署速度大打折扣。
  • 集群的安装部署和组件的扩缩容非常繁琐,整体操作不够灵活。每次安装或扩容完成后还需逐一检查节点、网络、磁盘、DNS 等资源是否都工作正常,很容易漏检,许多场景面临缺乏专业工具进行监测,只能看上层应用是否健康来进行片面的观察。

期望实现分钟级集群的自动化部署、扩缩容等生命周期管理功能。提供节点环境检查、集群健康检查能力,实现敏捷易用,省时更省力。

问题处理与运维管控不够高效?

  • 缺乏系统完善的集群安装和运维管理工具,通过集成云原生技术提供的监控、日志、告警能力或东拼西凑组成运维工具,由于运维服务来自多方,时常担心不够稳定。如果自身搭建运维体系,研发周期拉长,交付成本升高。
  • 自身搭建运维工具后,物理资源占用变高,在保障运维能力的同时,希望将物理资源占用控制在极小范围,降低业务产品私有化输出成本,希望保障运行环境可靠性的同时,使产品更具竞争力。
  • 集群监控的数据收集与编制告警成本高昂。使用 K8s 后,如果想要实现监控工作负载或确保最佳状态,需要采集并理解系统层面的大量的指标针对不同场景来编制告警,对于应用方的研发来说是一个巨大的挑战,需要花费许多时间。

期望有一个自动化运维管控平台解决上述难题。

 

招式简介

如果您恰巧遇到了上述问题,或曾经被上述问题所困扰,那么您便是那天选之人,答应我继续看下去,来了解这个招式吧。

近年来,随着云原生理念的发展,越来越多的 ISV 选择在 K8s 上,以云原生的形式进行应用开发及部署规划,社区版 K8s 作为稳定性高、兼容性好、安全可靠的底座,已可以为客户提供良好的服务,ISV 在实际的使用和交付业务时感觉效果也很好。但是在愈发复杂的客户场景下,如何让底座更好用更稳定可靠呢?

正如上面提到的,尽管社区版 K8s 提供了可靠的组件供大家使用,但这些组件在应对复杂的业务情况时,能否提供更贴合客户的特有场景的服务?在如此多的运维能力可选择时,如何能够集成出一个全面高效的运维管控平台提供给客户,这都是我们所思考的问题。

做出有别于社区版 K8s,且具有差异化和增值的服务提供给客户,帮助客户解决更多交付难题成为我们一大目标。好在通过不断探索,我们终于找到了方向。遵循客户至上的理念,加以技术打磨,我们励志打造出好用且稳定可靠的容器底座。最终,在着眼于应用交付领域所打造的云原生应用交付平台 ADP(以下简称 ADP)中,我们提供了 ADP 的容器底座 ADP-Local 。ADP-Local 基于原生 K8s 的技术上,为上层业务应用的运行和管理维护提供必要的系统支持,含 k8s,日志收集、监控告警、故障诊断等,为软件提供可靠运行环境及运维工具。帮助客户在遇到上面所描述的难题与困境时,可轻松有效应对。

 

制胜原因

众所周知,社区版 K8s 作为应用的一部分已被大量的 ISV 交付到客户现场,经历了许多的验证。而我们所提供的底座同样经历了众多复杂客户场景的实践,您可放心使用。由于 ADP-Local 是通过对众多不同复杂现场环境深入研究,不断加以打磨而打造出的容器底座,所以当您使用 ADP-Local 时,您会发现 ADP-Local 具备以下特征:

  1. 安全可靠:核心组件均来自阿里云容器服务 ACK,并保持同步更新。这些组件经历了数十万商业用户和阿里集团核心业务场景的严苛生产验证,安全性与可靠性经过实践检验。
  1. 多样兼容:核心组件同时支持 X86 和 ARM 硬件架构,同时容器服务 ACK 发行版包含的高性能网络插件 Hybridnet,又使得网络环境的多样性成为可能,最终确保能够丝滑运行于多样化的基础设施之上。
  1. 敏捷易用:容器服务 ACK 发行版深度结合阿里巴巴开源的集群应用打包交付工具 Sealer,分钟级实现集群的自动化部署、扩缩容、升级等集群生命周期管理功能,并提供节点环境检查与容量规划能力。
  1. 运维高效:集成监控、告警、日志、备份、诊断等服务,帮助产品快速发现问题、处理问题,为产品稳定性运行添砖加瓦。其中还内置备份、恢复、升级、容灾方案,将原本需要大费周章才能凑齐的各种运维服务变成交付流程中支撑产品运行的基础设施,省心省力。

如何过招

深入了解 ADP - Local

ADP-Local 集成了嵌入式 K8s 及多项服务于产品效率部署、稳定运行的组件。

可服务于多行业,提供丰富的产品能力、平台原子能力即嵌入式 K8s。实现其产品能够更稳定、安全、轻量、弹性、被集成、可剪裁,有效解决您的交付难题。

经过众多阿里集团核心业务场景以及不计其数的用户的复杂环境实践与验证后。

  • 你可通过精心打造的 ADP-Local 提供的运维管控平台,来实现对不同环境之间兼容情况的检测,以及快速对参数自动适配,减轻您的工作负担。
  • 同时 ADP-Local 整合丰富的信创架构组件, 助您轻松找到 ARM 版本组件来兼容信创环境,快速完成信创环境的适配改造工作。
  • 通过 ADP-Local 可以实现分钟级集群的自动化部署、扩缩容等生命周期管理的工作,并且提供可靠的节点环境检查、集群健康检查能力。

这些能力您均可轻松的在 ADP- Local 这一自动化运维管控平台找到并使用,帮您一站式解决难题。

关于ADP-Local 的能力您有了初步的了解,同时,由于篇幅原因,且运维能力更加丰富,所以将放在下一章节对 ADP-Local 运维招式进行深度介绍。点击阅读原文,了解云原生应用交付平台 ADP 更多资讯!

看到这里,我想起我们交付铁三角通过这本秘籍解决的一个个难题,不禁陷入了回忆中。好了,那今天的故事就先讲到这里,云原生应用交付平台 ADP 与我们的故事还将继续,敬请期待。如果大家有什么疑问可在下方留言咨询~

(以上故事纯属虚构,如有雷同纯属巧合。)

 

往期回顾

独家交付秘籍之招式拆解(第一回)

足不出户,搞定交付——独家交付秘籍(第二回)

本文为阿里云原创内容,未经允许不得转载。

基于 K8s 的交付难题退退退!| 独家交付秘籍(第三回)的更多相关文章

  1. 【K8S】基于Docker+K8S+GitLab/SVN+Jenkins+Harbor搭建持续集成交付环境(环境搭建篇)

    写在前面 最近在 K8S 1.18.2 版本的集群上搭建DevOps环境,期间遇到了各种坑.目前,搭建环境的过程中出现的各种坑均已被填平,特此记录,并分享给大家! 服务器规划 IP 主机名 节点 操作 ...

  2. 如何基于 K8S 多租能力构建 Serverless Container

    当前 Kubernetes 已经成为名副其实的企业级容器编排规范,很多云平台都开始提供兼容 Kubernetes 接口的容器服务.而在多用户支持方面,多数平台选择直接提供专属虚机集群,用户需要花费大量 ...

  3. 基于 K8S 构建数据中心操作系统

    在 12 月 22 日 ECUG 的下午场 ,七牛云容器计算部技术总监袁晓沛为大家带来了主题为<基于 K8S 的 DCOS 之路>的精彩分享,向大家介绍了七牛容器云目前 K8S 的状况和产 ...

  4. 基于 K8s 做应用发布的工具那么多, 阿里为啥选择灰姑娘般的 Tekton ?

    作者 | 邓洪超,阿里云容器平台工程师, Kubernetes Operator 第二人,云原生应用标准交付与管理领域知名技术专家   导读:近年来,越来越多专门给 Kubernetes 做应用发布的 ...

  5. 基于k8s的promethus监控

    没有监控 就没有眼睛. 除了k8s的基本监控外(pod运行状况.占用内存.cpu).为了对微服务项目中的(1)各种参数线程池.QPS.RT.业务指标(2)系统负载.thread.mem.class.t ...

  6. 中国.NET开发者峰会特别活动-基于k8s的微服务和CI/CD动手实践报名

    2019.11.9 的中国.NET开发者峰会将在上海举办,到目前为止,大会的主题基本确定,这两天就会和大家会面,很多社区的同学基于对社区的信任在我们议题没有确定的情况下已经购票超过了300张,而且分享 ...

  7. ASP.NET Core基于K8S的微服务电商案例实践--学习笔记

    摘要 一个完整的电商项目微服务的实践过程,从选型.业务设计.架构设计到开发过程管理.以及上线运维的完整过程总结与剖析. 讲师介绍 产品需求介绍 纯线上商城 线上线下一体化 跨行业 跨商业模式 从0开始 ...

  8. 基于k8s集群部署prometheus监控ingress nginx

    目录 基于k8s集群部署prometheus监控ingress nginx 1.背景和环境概述 2.修改prometheus配置 3.检查是否生效 4.配置grafana图形 基于k8s集群部署pro ...

  9. 基于k8s集群部署prometheus监控etcd

    目录 基于k8s集群部署prometheus监控etcd 1.背景和环境概述 2.修改prometheus配置 3.检查是否生效 4.配置grafana图形 基于k8s集群部署prometheus监控 ...

  10. 基于k8s的集群稳定架构-转载

    基于k8s的集群稳定架构-转载 前言 我司的集群时刻处于崩溃的边缘,通过近三个月的掌握,发现我司的集群不稳定的原因有以下几点: 1.发版流程不稳定 2.缺少监控平台[最重要的原因] 3.缺少日志系统 ...

随机推荐

  1. Libcurl & Log4cplus 移植和使用 以及 Jsoncpp 简单使用

    PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明   本文作为本人csdn blog的主站的备份.(Bl ...

  2. Shell 编写摘要 (一)

    PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明   本文作为本人csdn blog的主站的备份.(Bl ...

  3. 捉虫日记 | MySQL 8.0从库某些情况下记录重放的CREATE TABLE、DROP TABLE语句到慢日志(slow log)

    作者:卢文双 资深数据库内核研发 本文首发于 2023-11-30 20:47:35 https://dbkernel.com 问题描述 当主从复制采用 binlog 的行模式时,如果从库启用 slo ...

  4. hdfs disk balancer 磁盘均衡器

    目录 1.背景 2.hdfs balancer和 hdfs disk balancer有何不同? 3.操作 3.1 生成计划 3.2 执行计划 3.3 查询计划 3.4 取消计划 4.和disk ba ...

  5. KingbaseES参数track_activity_query_size介绍

    背景 同事A在客户现场,最近注意到客户的主数据库性能有所下降,尤其是在高峰时段.怀疑可能有一些复杂的查询影响了数据库的性能,但尚未确定具体是哪些查询. 为了诊断问题,A决定查看高峰期正在执行的查询,先 ...

  6. KingbaseES V8R6 运维案例 -- sys_filenode.map故障案例

    ​ 案例说明: 数据库下的sys_filenode.map文件被破坏,导致此数据库无法连接访问. Nail表(内核系统表)Relfilenode的存储机制: 经过研究发现,在数据目录里存在着pg_fi ...

  7. KingbaseES 分区表与 Oracle 分区表对于空值的处理差异

    一.对于null 值处理 1.Oracle 分区字段允许为空,只要存在maxvalue 分区,值就可以插入. SQL> create table t1(id number,data varcha ...

  8. UE4 c++重构简单死亡之眼的效果

    虚幻社区中有蓝图教学视频 使用C++重构,主要用到UGameplayStatics类中的SetGlobalTimerDilation方法,以及角色的相机管理器的调用,之后通过StartCameraFa ...

  9. 【已解决】启动Hmaster失败 master.HMaster: Unhandled exception. Starting shutdown.

  10. 数据解析之re正则表达式

    数据解析之re正则表达式 1. 正则基础 1.1 为什么使用正则 需求 判断一个字符串是否是手机号 解决 编写一个函数,给函数一个字符串,如果是手机号则返回True,否则返回False 代码 def ...