首页 > 其他分享 >如何基于 Kubernetes 实现优质开发者平台体验?

如何基于 Kubernetes 实现优质开发者平台体验?

时间:2023-08-25 10:12:53浏览次数:43  
标签:策略 Kubernetes 开发人员 平台 IDP 开发者 体验 应用程序

内部开发者平台(或 IDP)是使开发团队能够更快、更轻松、更一致地交付应用程序的基础设施。Kubernetes 本身是一个功能强大的平台,但它引入了太多复杂性和功能,因此不能简单地将其作为 IDP 交给开发团队。若要期望他们能取得成功,非常重要的一点是要设置一些防护措施,使他们能够有效地使用 K8s,而不会增加与可靠性、成本效益和安全性相关的风险。
 

虽然 Kubernetes 本身并不适合作为 IDP,但它是构建 IDP 的坚实基础。Kubernetes 为平台工程师提供了许多工具,例如,它可以为开发人员构建 IDP、提供更简化的构建和运行应用程序的方式。因此需要考虑的问题是,如何构建一个既能为开发人员提供良好体验,又不会妨碍部署到生产环境的平台。通过使用策略和治理、基于角色的访问控制(RBAC)和默认网络策略应用安全措施,有一些很好的方法可以防止集群中发生错误。
 

Kubernetes 平台的构成

基于 Kubernetes 的 IDP 不仅包括 Kubernetes,还包括开发人员所需的工具和流程。作为 Kubernetes 的安全限制,IDP 还需要您希望在 Kubernetes 中建立的策略和治理。这种组合使您能够为开发人员提供一条 "黄金路径",让他们能够更快地部署应用程序。Kubernetes 平台由四个主要部分组成:

插件

插件是提供默认“开箱即用”功能所需的工具,可扩展 Kubernetes 的功能,包括 DNS、TLS、Ingress、日志记录、跟踪等。这些工具可以是开源项目也可以是来自供应商的软件。
 

创建治理

Kubernetes 治理是创建策略、程序和一组标准策略的过程,用于定义和实施 Kubernetes 平台中的最佳实践,以及资源管理、调度、升级和基于角色的访问控制。
 

启用部署(CI/CD)

这是应用程序从代码进入平台的方式。在 IDP 中,您为开发人员创建了一条 "黄金路径”,让他们能更轻松地将新应用程序和服务部署到平台中,同时保持高效安全
 

提供反馈

IDP 的一个重要组成部分是向开发团队提供及时反馈。平台的这一部分必须包括快速检测问题通知,并与他们已经使用的工具集成。同时还应在代码审查过程中为开发人员提供建议的修复选项。
 

治理和策略:三个阶段

当您考虑如何在 Kubernetes 中应用治理和策略时,这确实是一个过程。首先,您需要选择或创建必要的策略。接下来,您需要一种自动的方式来识别违反政策的行为,然后指导如何修复这些违反策略的行为。最后,需要能够自动阻止这些违规行为进入集群。
 

团队在开始部署 Kubernetes 的时候往往没有遇到什么初始问题,也就是说在这个阶段开发团队在内容、编码和交付应用程序和服务时没有什么明显的问题。但平台团队后来发现开发团队忽略了一些重要的安全措施来帮助维护安全并持续应用最佳实践。因为在开发者平台中,开发人员可以轻松地在需要时部署他们想要的内容。除非团队中有人返回并手动检查所有设置,否则在出现问题之前可能不会有任何意识。
 

可以使用开源策略引擎(如 Polaris 或 Open Policy Agent (OPA))在 Kubernetes 中自动应用策略。使用类似的解决方案,您可以确保您的配置与环境中的策略保持一致,帮助您保持一切顺利运行。
 

选择策略

在开始使用策略执行与成本效益、安全性和可靠性相关的 Kubernetes 最佳实践时,开发人员往往不知道从哪里开始,也不知道应该关注什么。最好的入门方法是确定什么对您来说最重要,这就是创建策略的方法。如果成本对你来说是最重要的,那么就把重点放在影响成本的策略上,如资源请求和限制。如果安全是你的首要关注点,那就处理以 root 身份运行的容器或生成网络策略。我们的建议是从小处着手,挑选一两个能实现目标的策略,然后全面实施这些策略。
 

识别、修复和阻止违规行为

接下来,需要找出当前集群中违反策略的地方,并开始逐一纠正这些问题。修复关键类别中的问题后,您就可以开始在访问时执行策略了。当开始执行策略并成功阻止违反策略的行为之后就可以放心了,因为这些问题不会再次弹出,你可以对要强制执行的下一组策略重复该过程。随之也就变得更加高效和安全了。
 

构建强大的 IDP

对于内部开发人员平台而言,应用 Kubernetes 治理和策略使您能够高效地管理资源,帮助控制成本,确保应用程序获得最佳运行所需的资源。它还能帮助您通过控制访问和实施最佳实践来确保安全性和合规性,并通过建立标准、自动化的应用部署和扩展流程来提高可靠性和弹性。稳健的 Kubernetes 治理和策略是构建安全、高效、可靠的内部开发人员平台的关键组成部分,可满足开发人员和整个组织的需求。
 

参考链接:
https://cloudnativenow.com/features/enable-a-great-kubernetes-developer-platform-experience/

标签:策略,Kubernetes,开发人员,平台,IDP,开发者,体验,应用程序
From: https://www.cnblogs.com/sealio/p/17656136.html

相关文章

  • 微服务引擎 MSE 全新升级,15 分钟快速体验微服务全栈能力
    作者:草谷前言微服务引擎MSE全新发布!新版本带来了一系列令人振奋的特性和改进,让您更轻松、高效地构建和管理微服务应用程序。从快速入门到迁移优化,MSE为开发人员提供了全方位的支持和解决方案。无论您是刚刚接触微服务还是已经深耕其中,MSE都将为您带来独特的体验和突破。让我......
  • transformer模型首次体验代码
    首先是安装python,更新pip源到清华源。安装transformerpipinstalltransformer安装jupyterlab,也简单一行pipinstalljupyterlab现在不想用anaconda了,因为国内没有源了,国外的又慢。直接用pip吧。然后开始体验之旅吧:打开终端,输入:jupyterlab会弹出一个web页面,代开后......
  • 代驾系统:革新出行体验的智能伙伴
    在现代社会,出行方式正在经历着一场革命,而代驾系统正是这场革命中的一位智能伙伴。通过结合智能科技和出行需求,代驾系统为我们带来了便捷、安全、个性化的出行体验。本文将介绍代驾系统的工作原理,并通过Python代码演示其基本功能。代驾系统背后的智能代驾系统的核心在于智能科技的应......
  • kubernetes-1.26安装
    一、环境准备k8s集群角色IP主机名安装组件配置控制节点192.168.10.10masterapiserver、controller-manager、scheduler、etcd、kube-proxy、docker、calico、contained2核4G工作节点192.168.10.11node1kubelet-1.26、kube-proxy、docker、calico、coredns、c......
  • 浅谈谷歌“网页体验”报告
    “网页体验”报告提供了您网站访问者的用户体验摘要。Google会评估您网站上各个网址的网页体验指标,并会将这些指标作为网址在Google搜索结果中的排名衡量因素。关于网页体验谷歌会针对每个网址评估网页体验。评估结果和报告旨在帮助网站创建能够为访问者提供更好用户体验的网页......
  • tnn初体验
    tnn-sourcedownload-model......
  • 【腾讯云 TDSQL-C Serverless 产品体验】 使用 Python 向 TDSQL-C 添加读取数据 实现
    前言TDSQL-CMySQL版(TDSQL-CforMySQL)是腾讯云自研的新一代云原生关系型数据库。融合了传统数据库、云计算与新硬件技术的优势,为用户提供具备高弹性、高性能、海量存储、安全可靠的数据库服务。TDSQL-CMySQL版100%兼容MySQL5.7、8.0。实现超百万级QPS的高吞吐,最高PB级智......
  • 打造引人注目的直播体验:直播美颜SDK的集成与优化
    随着移动互联网的迅速发展,视频直播已经成为人们交流、娱乐和信息传递的重要方式。在这个多元化的直播市场中,吸引观众的注意力变得尤为重要。其中,美颜技术在增强直播体验方面发挥着关键作用。直播美颜SDK的集成和优化使得主播能够以最佳状态出现在镜头前,同时也为观众提供更加愉悦的......
  • 零成本体验Mac,教你用VMware安装苹果虚拟机
    MacOS是苹果电脑预装的操作系统,相比于Windows,MacOS算是小众系统,但其精致优雅的界面和简单易用的特性受到不少人的青睐。由于苹果公司独特的策略,MacOS是不像Windows这样单独销售系统的,一般用户想要体验MacOS必须购买苹果的Mac系列电脑。不过凡事无绝对,通过技术手段同样可以在普通的......
  • 探索GreatADM:图形化部署MGR的全新体验
    摘要:在DBA的日常工作中,快速部署数据库高可用架构,且标准化地入网部署数据库是一项重要的基础任务。本文将介绍常见的部署MGR的方式,并重点介绍万里数据库的GreatADM数据库管理平台进行图形化、可视化、标准化的部署过程,以提高交付效率和质量,给DBA提供一种全新的体验。(本文阅读大约......