当前位置:网站首页>The future of platform as code is kubernetes extension
The future of platform as code is kubernetes extension
2022-06-28 16:15:00 【Software test network】
translate person | Li Rui
Reviser | Sun Shujuan
Infrastructure is code : Where are from
In recent years , With Docker The emergence of and the increasing popularity of containers , Infrastructure is code (IaC) The concept of . Infrastructure is code (IaC) It was originally used to connect virtual machines 、 Specific infrastructure such as network and storage API, Then gradually expand to include the operating system and Kubernetes And their configuration and reinforcement strategies . When viewing such as Terraform Such infrastructure is code (IaC) Tool time , They even support the deployment of workloads .
What has not changed is people's initial understanding of “ Namely code ” Why are you excited . It all boils down to the familiar tools used in software development ( Editor 、CI/CD etc. ) And the process ( Code review 、 Version control, etc ), And apply them to the lower layers , And make it descriptive 、 Repeatability 、 Shareability , And equally important automation .
Platform is code : The way forward
The next step is to extend this concept and its advantages to the platform that you want to provide for developers . The goal is to build something like platform as a service (PaaS) The system of , Abstracts the infrastructure and enables engineers to focus on their code . In an ideal situation ,PaaS The system will get self-service without disturbing the developers 、 Standardize and share common best practices and the benefits of some type of security and implementation compliance .
However , Typical PaaS The system has some common pitfalls that people should avoid .
First ,PaaS The abstraction of often leads to artificial restrictions , And as software and developers grow and mature , They will encounter more restrictions . Now? , For traditional or closed PaaS System , This leads to exceptions and is modeled as a bad solution . secondly , Conventional PaaS Often accompanied by a high supplier lock-in rate . Third , People have an unpopular question to ask : Is it really enough to use one platform ? Whether the enterprise's data science engineers need to use the same platform as their e-commerce teams ?
Kubernetes Offer help
“Kubernetes It's a platform for building a platform .” If people are familiar with or understand Kelsey Hightower or JoeBeda etc. Kubernetes Thought leaders , I may have heard of their statement .
Again , Suggest Kubernetes Can actually become the preferred platform for more than just containers . in fact , This may be one of the things needed to finally achieve the desired goal of the people's envisioned platform, that is, the code .
Kubernetes The benefits of ( For example, as a coordinator and a unified interface ) Forms the basis of this argument .Kubernetes As a coordinator, it brings effective coordination methods , Think of it as a more powerful declarative paradigm . It allows encoding of operational knowledge , This is more flexible and future oriented than building this knowledge into any form of script . Besides , State based storage is typical IaC Typical disadvantages of storage and state in tools .
Kubernetes As a unified interface , It has brought a universal API, It has built-in authentication 、 Rate limiting and auditing . and , The API Has become the standard for cloud native workload management , And with its native extensibility , Yes KubernetesAPI Your familiarity translates into API Expand . because Kubernetes In recent years, it has achieved success and become popular , From continuous integration (CI)/ Continuous delivery (CD) The tradition of IaC To modern times GitOps Method tools are widely supported .
Last , Many enterprises have extended... For many use cases API, Included in Kubernetes Clusters are defined internally 、 The first consensus was reached on the common abstraction of applications and infrastructure services .
Kubernetes The building blocks of the platform —— Beyond container orchestration
First , There are clusters API project , It's in 1.0 Is ready for production . For beginners ,Cluster API Yes, consensus API Upstream efforts , Manage any infrastructure in a declarative way Kubernetes The life cycle of a cluster . If this sounds like a normal to the user API, don't worry , It includes the following API The work of , To generate clusters on many infrastructure providers , Including very large-scale servers and common on premises solutions .
After checking the cluster , Next up are the applications and workloads in the cluster . For a fully functional cloud native platform , A basic set of observability tools is required 、 Connection tool 、 Tools that make up the developer pipeline , You may even need some additional security tools or service grids . Now? , As a community , At least you can agree with Helm As a general packaging format . however , How to put these Helm The diagram is actually deployed to the cluster , Especially in a multi cluster environment ( As cluster management becomes easier , This is becoming more and more common ) It is still an area where consensus has not yet been reached . If the enterprise has joined GitOps The trend of , image FluxCD Such tools have some abstractions , for example HelmRelease, Can help .GiantSwarm Developed a project called app-operator The open source Kubernetes Expand , It expands Helm, Added multi cluster function and multi-level coverage for configuration , Thus, the pain of configuration management is reduced in the use case of deploying the application cluster to the cluster . It also allows for more diverse data to be included in the deployment process ( Such as test results and compatibility information ) Be prepared .
Another type of resource that people cannot ignore is the services of cloud computing providers . ad locum , See that most super large-scale developers are developing their own native Kubernetes Expand , In this way, they can generate what they call first-party resources . First party resources are Kubernetes Managed databases in , You can connect from cloud native workloads . Another very interesting method is Crossplane, It's an open source Kubernetes Expand , Enables users to assemble services from multiple vendors through the same extension , Provide an abstraction layer , Reduce lock-in to actual providers .
These are just basic extensions ; Great progress has been made in this field , More and more projects or in the background Kubernetes, Or extend it publicly to their use cases . In the context of building the platform as code , In particular, some more specific frameworks and extensions need to be mentioned , These frameworks and extensions cover specialized but common use cases , for example Kubeflow Project MLOps/AI and KubeEdge Edge calculation of .
Future vision and challenges
It is still in Kubernetes Extensions and platforms are the early stages of code . Most standardization work is also at an early stage , But it is rapidly moving towards consensus and production readiness .
The most important problem that needs to be solved now is the extended user experience of this kind . This is not limited to improvement API Validation and default values for , It also involves extended discovery and its document level . Besides , Once some of these standards are used closer to production , As a community, we need to pay attention to maintaining API The composability of , And promote interaction without tightly coupling the system . Last , There are many Kubernetes Debugging and traceability in extended complex systems can still be improved .
However , One thing is for sure ,Kubernetes Will establish itself as the preferred interface between infrastructure and cloud native technologies . Besides , More standards will be established , More tools support and integrate with these Standards .
All in all , The forecast for the future is ,Kubernetes Will become the standard cloud native management interface . It is the consensus of a unified community API. Of course , Users are still free to use the tools of their choice , But the unified open source interface ensures that users will not be locked .
With the help of Docker And the container , People create a situation where the workload is transient . Using this technique , Not only can this concept be extended to Kubernetes colony , It can also be extended to the entire developer platform , Or many platforms provided to users .
Original title :The Future of Platform-as-Code is Kubernetes Extensions, author :Puja Abbassi
边栏推荐
- 【Spock】处理 Non-ASCII characters in an identifier
- VC2010 编绎Qt5.6.3 提示 CVTRES : fatal error CVT1107:
- 【Hot100】1. 两数之和
- 今天睡眠质量记录80分
- 防火墙基础之流量管理与控制
- 机器学习之深度学习简介
- tablestore中可以使用sql查询可以查出表中所有的数据吗?
- 知道这几个命令让你掌握Shell自带工具
- Focus on the 35 year old Kan: fear is because you don't have the ability to match your age
- Azure Kinect微软摄像头Unity开发小结
猜你喜欢
随机推荐
10 years of testing experience, worthless in the face of the physiological age of 35
Knowing these commands allows you to master shell's own tools
请问下大家有遇到过这种设置的主健和数据库一致的错误吗?
扎克伯格致投资者:不要对元宇宙有任何期待
Change exchange (dynamic planning)
Vc2010 compilation qt5.6.3 prompt cvtres: fatal error cvt1107:
REDIS00_ Explain redis Conf configuration file
Qt 界面库
Technical secrets of ByteDance data platform: implementation and optimization of complex query based on Clickhouse
【初学者必看】vlc实现的rtsp服务器及转储H264文件
RedmiBook Pro 14增强版 打不开台达软件DRAStudio_v1.00.07.52
抖音实战~我关注的博主列表、关注、取关
Android和eclipse和MySQL上传图片并获取
NFT pledge LP liquidity mining system development details
Why MySQL table connection is faster than subquery
Geoffrey Hinton:我的五十年深度学习生涯与研究心法
超自动化与网络安全的未来
A 24-year-old bald programmer teaches you how to continuously integrate and deliver microservice delivery. You can't learn how to cut me off
Web3.0时代来了,看天翼云存储资源盘活系统如何赋能新基建(上)
使用openpyxl操作Excel