《徐鹏飞-KCL+-+一种用于大规模配置和策略管理的声明式编程语言.pdf》由会员分享,可在线阅读,更多相关《徐鹏飞-KCL+-+一种用于大规模配置和策略管理的声明式编程语言.pdf(31页珍藏版)》请在三个皮匠报告上搜索。
1、KCL:A Declarative Language for Large-scaleConfiguration and Policy ManagementKCL 配置策略语言徐鹏飞(Peefy)Ant GroupMar.2023Agenda01Background02Design03Scenarios04EvaluationBackground01About Me 徐鹏飞(Peefy)KCLMaintainer https:/ Repo:https:/ Website:https:/kcl-lang.io/Why KCLHide infrastructure and platform deta
2、ils to reduce the burden of developers.AbstractionSolve issues on YAML/Template bloatLanguage enhancement:logic,type,function and package.Large-scale configuration management without side effects cross teams.StabilityScalabilityAutomationHigh performancePackage distribute and sharingEnhancement for
3、configuration tools e.g.,Helm,Kustomize.ValidatingEditingDesign02Overviewhttps:/ Engagementkcl-formatkcl-lintkcl-testkcl-docKCL Coding AssistantHighlightGo To Def/RefCompletionFormatCompileDebugError/WarningCheckingTestLSPKCL Language ServerKCL CompilerKCL Package ManagerFeaturesKCL=Config+Schema+Ru
4、le+LambdaConfigLambdaSchemaRuleOrganizeValidateCombinateDefinitionDescribeConceptsConfigLambdaSchemaRuleOrganizeValidateCombinateDefinitionDescribeConceptsKCL=Config+Schema+Rule+LambdaConfigLambdaSchemaRuleOrganizeValidateCombinateDefinitionDescribeConceptsKCL=Config+Schema+Rule+LambdaConfigLambdaSc
5、hemaRuleOrganizeValidateCombinateDefinitionDescribeConceptsKCL=Config+Schema+Rule+Lambda base.k prod.kEquivalent codeConfiguration MergeValidationAutomationModulesmetaGPLs100+built-in functions,modules with additional KPM package manager tools and pluginsScenarios03IntegrationsEnhancement for config
6、uration tools:Abstract,Generate,Validate,EditEasy schema migration,integration,distribution and usageGlue of IaC/IaD through declarative configuration and policy languageAutomation and GitOps FriendlyWorking with KusionStackhttps:/ application deployment tools and workflow for Kubernetes and CloudsM