暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

云原生前沿手札丨全新 AKS 插件,全套整合工具,加持自动化开发!

Azure云科技 2023-04-07
99

5 卷

互联网“黑话”让人云雾缭绕

术语概念太多也会令人望而生畏

上手 Kubernetes 应用部署

便可以绕过概念,善用工具

从代码到 AKS,畅行云端



从应用的源代码起步


在 Kubernetes 上运行源代码,需要完成如下先决条件:

1、设置开发环境

为应用语言和框架、容器和 Kubernetes 设置开发环境。除编程专用工具,至少还需要安装 Docker、kubectl。

2、构建容器和推送镜像

先行编写 Dockerfile 指令,告知 Docker 如何安全地将应用源代码或二进制文件,打包成容器镜像。

3、访问集群并开始编写

访问开发/测试环境,编写描述、部署、拉取镜像等文件,并创建“服务”,以便将流量定向到部署的 Pod。

4、完成应用访问

配置 Ingress 以实现应用的安全访问,通过 Kubernetes Secret 加载证书,另外设置 DNS 解析,以正确主机名加载应用。


完成如上步骤后,便可进入内部开发人员循环。此外,为拉动整体效能,开发者也需要创建持续集成/持续部署(CI/CD)的流水线,以实现自动化应用构建。



内循环开发体验全面焕新


如今,微软 Azure 已开发出一套内循环互联体验:

端到端的 AKS 体验


1、开始行动:创建 GitHub Codespaces 配置

开启内循环,需要创建 GitHub Codespaces 配置,其中包含 Docker 等工具、Kubernetes CLI(kubectl)、Azure CLI(az)、Visual Studio Code 扩展以及 npm、gradle、maven 等构建工具。

在存储库中的 .devcontainer configuration 里指定它们即可。启动代码空间后,一切设置都已妥当,免却了在开发机器上安装相关性的步骤。

什么是 GitHub Codespaces?

GitHub Codespaces 是速度超快的云端容器化开发人员环境,适合任何开发活动,无论是长期项目,还是审核拉取请求等短期任务,可从 Visual Studio Code 或浏览器风格的编辑器调用环境。

更重要的是,GitHub Codespaces 具备定制能力,可以标准化构建工具、运行时需求、硬件规格、扩展和编辑器设置等配置内容,便于新开发人员迅速完成设置并开始运行。


2、增效路径:Visual Studio Code 和扩展

在创建 GitHub Codespaces 环境后,想要实现进一步的降本增效,可应用 Visual Studio Code 的 Azure extension、Kubernetes extension 和 AKS developer extension 规避情景切换这种导致注意力分散的因素,从而在熟悉的环境下显著提高生产力。

应用此类扩展有助于感知 AKS 集群、Azure 容器注册表和 Azure 密钥库等订阅情景,以更快速度生成代码,进而完成如下典型操作:

为应用代码 Draft* Dockerfile

使用 Azure 容器注册表构建镜像

Draft Kubernetes 部署和服务描述

使用 Draft Kubernetes Ingress 集成

使用 GitHub Actions Draft CI/CD 流程

* Draft 是支持 Visual Studio Code 扩展背后的代码生成引擎的开源工具。可扩展性方面,Draft 通过插件模型帮助开发者按需创建模板。


3、自动模式:持续集成/持续部署(CI/CD)

为实现发布代码至 AKS 集群的自动化流程,应用 Automated deployments 可简化设置 GitHub Action 流程。连接后,每一个新提交,都将启动该流程。

在 Azure 门户设置自动部署时,配置许可是必要动作。这可以有力支持构建 GitHub Actions 流程,并推送容器镜像至 Azure 容器注册表和 AKS 集群。

自动化配置工具

GitHub Actions for Kubernetes

GitHub Actions for Kubernetes 是一套与 AKS 完美集成的智能化工具,可自动完成 Draft Kubernetes 描述文件、创建 Kubernetes 机密、部署 Kubernetes 描述文件和替换构件等操作。


在部署和工作负载管理体验方面,使用 GitOps 能够有效统筹云端和边缘的一致体验。应用 GitOps,开发者可在 Git 存储库中的文件里,声明 Kubernetes 集群目标状态,进而协调统一集群状态与 Git 存储库中声明的目标状态。通过 AKS 中的 GitOps 和 Azure Arc-enabled Kubernetes 集群,Azure 提供整体的配置管理功能。

未来,微软 Azure 还将持续打造更易用、智能的工具与服务,来简化云原生入门体验。同时,我们也十分期待您提出宝贵意见,您可以登录论坛,提出问题、留下反馈,与我们共同讨论云原生进阶之道。


☁️

第二届开源云原生开发者日

重磅来袭

Azure云科技 后台回复关键词

「开源云原生」

即可预约活动席位

共同探索云原生技术的未来定位

文章转载自Azure云科技,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论