报名参加CloudWeGo黑客松,奖金直推双丰收! 了解详情
写点什么

在 mu 中推出对 EKS 的支持

  • 2019-10-14
  • 本文字数:1919 字

    阅读完需:约 6 分钟

在 mu 中推出对 EKS 的支持

在 Amazon EKS 上开始应用程序开发可能需要创建 Kubernetes 集群和代码库,还需要配置部署管道以将代码更改持续推送到集群。在本博文中,Stelligent 的 Casey Lee 展示了如何使用开源工具 mu 简化所有 AWS 资源的声明和管理,以便您可以专注于开发应用程序。


在前一篇博文使用 mu 轻松建造容器应用程序的管道中,我们看到了使用 mu 这一开源工具为容器工作负载构建 CI/CD 管道的速度有多快。这些管道利用 AWS CodeBuild 和 AWS CodePipeline 等服务编排其容器应用程序的构建和部署。此外,mu 还使用 Amazon Elastic Container Service (Amazon ECS) 运行工作负载。


在最近的一个版本中,mu 增加了对 Amazon Elastic Container Service for Kubernetes (Amazon EKS) 的支持。在本博文中,我们将演示如何使用 mu 设置 CI/CD 管道,以将应用程序部署到 EKS。首先,我们来看一下 mu 所创建的环境中重要的架构组件:


  • EKS 集群 – 由 EKS 作为托管服务提供的 Kubernetes 集群的控制层面。

  • EKS 工作程序节点 – 表示集群中工作程序节点的 EC2 实例的 Auto Scaling 组。

  • RBAC – 用于将 IAM 用户和角色关联到 Kubernetes 用户的 ConfigMap,以及从这些用户绑定到 Kubernetes 角色的角色。

  • Ingress 控制器 – 用于支持从外部访问集群内的服务的 NGINX Ingress 控制器。

  • 在 AWS 架构上使用 mu

  • 让我们试一试吧!


出于演示目的,我们将使用前一篇博文中的相同示例应用程序 (github.com/cplee/hello-nginx)。创建库分支并在本地克隆。mu.yml 需要对目标 EKS 进行一些更改:


#### Define 2 environments, both with `eks` provider###environments:- name: acceptance  provider: eks- name: production  provider: eks
#### Configure an ingress with a route for paths /*# to port 80 in the container###service: port: 80 pathPatterns: - /*#### Configure IAM user `casey.lee` with admin access# in the EKS cluster###rbac:- role: admin users: - casey.lee
复制代码


在使用 mu 构建管道之前,请提交更改并将更改推送回 GitHub。如果您是首次使用 mu,则可以运行以下命令下载 mu 二进制文件并将其添加到路径中:


curl -s https://getmu.io/install.sh | sh
复制代码


运行以下命令创建管道。此命令将提示您输入 GitHub 个人访问令牌,CodePipeline 需要该令牌才能配置提交挂钩。


mu pipeline up
复制代码



管道完成后,您的应用程序现在将在新创建的 EKS 集群上运行。由于 EKS 提供上游 Kubernetes 体验,因此您可以使用 kubectl 等工具与集群交互。默认情况下,只有 CloudFormation 用于预置 EKS 集群的 IAM 角色才有权管理集群中的资源。不过,我在上面的 mu.yml 中指定了我的 IAM 用户,因此我可以使用我的 IAM 凭证与集群通信。首先,我需要使用新集群的连接信息更新我的 kubeconfig:



接下来,使用创建的新上下文:



现在可以使用 kubectl 查看有关集群的基本信息:



此外,您还可以查看 Ingress 控制器和部署的示例应用程序的详细信息:



有关 EKS 集群的详细信息可以通过 mu 查看。另外,您还可以确定稍后用于测试应用程序的 ELB 的 URL:




为何要开放源代码?


在 Stelligent,我们帮助客户在 AWS 上建立了持续交付管道。我们的核心价值观之一是共享。我们希望对客户开放,让他们能够使用我们在与客户合作时使用的工具。通过开放 mu 的源代码,我们能够让客户在其客户群中对我们所用的工具有支配感。


创建和开发 mu 源代码的另一个目标是与社区分享我们的经验和观点,讨论实施这些管道的最佳做法。我们希望社区能够使用此工具以及根据他们的使用案例对其进行改进,并提供相关反馈,以便更好地解决我们努力解决的问题。


为 mu 做贡献!


如果您对容器工作负载的持续交付管道感兴趣,我们需要您的帮助! 参与方式如下:


  • 试用 – 访问 mu wiki 上的快速入门,下载并安装此工具。您还可以按照简短教程创建第一项服务。

  • 分享您的反馈 – 加入 Gitter 聊天室,询问问题,让我们知道您的想法。此外,如有任何功能请求,欢迎提出新问题。

  • 贡献 – 查看 GitHub 问题,针对即将推出的 EKS 功能提供帮助。随时可以提出拉取请求! 请访问贡献指南,了解更多详情。

  • Casey LeeCasey Lee

  • Casey Lee 是 Stelligent 的首席架构师 – Stelligent 是一家获得开发运营能力认证的核心级咨询合作伙伴,自 2009 年以来一直在 AWS 上实施持续交付解决方案。他已获得 AWS 开发运营工程师(专业级)和解决方案架构师(专业级)证书。过去 20 年里,无论就职初创公司还是财富 500 强企业,他一直负责组织软件系统的构建、实施和支持工作。


作者介绍:


Jeff Barr


AWS 首席布道师; 2004 年开始发布博客,此后便笔耕不辍。


本文转载自 AWS 技术博客。


原文链接:


https://amazonaws-china.com/cn/blogs/china/eks-support-mu/


2019-10-14 10:45715
用户头像

发布了 1856 篇内容, 共 130.2 次阅读, 收获喜欢 81 次。

关注

评论

发布
暂无评论
发现更多内容

同城售后系统退款业务重构心得 | 京东云技术团队

京东科技开发者

架构 架构设计 企业号11月PK榜 系统重构

SaaS 出海,如何搭建国际化服务体系?(三)

LigaAI

SaaS 远程会议 高效协作 出海企业 SaaS 增长

【行云流水线实践】基于“OneBuild”方法对镜像进行快速装箱 | 京东云技术团队

京东科技开发者

云原生 CI/CD Docker 镜像 企业号11月PK榜

技术、前沿、未来、AI:Stack Overflow 2023 年度报告重磅发布

谐云

第23期 | GPTSecurity周报

云起无垠

Vert.x 教程 (二):如何打包一个 Vert.x 应用

Kevin_913

教程 Vert.x Java’

VMware Workstation 17安装教程之创建普通用户

小齐写代码

软件测试/测试开发丨ChatGPT能否成为PPT最佳伴侣

测试人

软件测试

数据库|PostGreSql 和 MySql 的优劣对比

谐云

CorelDRAW 2023 for Mac(矢量图形设计工具)

展初云

Mac CorelDraw 矢量设计

「智造」第4期:用友精智工业互联网助力区域经济转型升级

用友BIP

智能制造

Tower for Mac(Git客户端)

展初云

git 版本控制 Mac软件

为什么那么多简历,AI偏偏推荐了TA?

用友BIP

智能招聘

照片编辑软件ON1 Photo RAW 2024「Mac」

展初云

Mac Mac软件 照片编辑

Serverless,无服务器时代的创新之旅开启了吗

谐云

以云原生应用构建现代化架构的企业业务系统

谐云

火山引擎ByteHouse:如何用OLAP引擎提升数字营销效果?

字节跳动数据平台

数据库 大数据 云原生 数仓 企业号11月PK榜

用友签约一级央企中国一重!

用友BIP

资产管理

【PyTorch 卷积】实战自定义的图片归类

北桥苏

卷积神经网络 CNN PyTorch

Mac电脑文件对比合并工具 Araxis Merge pro 激活最新版

胖墩儿不胖y

文件对比 Mac软件 文件对比工具 对比工具

想升级企业绩效管理吗?送你一个数智化神器!

用友BIP

绩效管理

能使用公司产品进行软件开发吗?

矩视智能

深度学习 工控机

Elasticsearch实战:常见错误及详细解决方案

汀丶人工智能

Elastic Search

得物自研客服IM中收发聊天消息背后的技术逻辑和思考实现

JackJiang

网络编程 即时通讯 IM

无需数据搬迁,10倍性能提升!携程的统一分析之旅

StarRocks

数据库 StarRocks

企业如何开展数据管理体系建设,激活数据价值?

用友BIP

数据 数据价值

ElasticSearch实战指南必知必会:安装分词器、高级查询、打分机制

汀丶人工智能

中文分词 elasticsearch 检索引擎 打分机制 向量索引

飞桨国际化应用案例:挪威广告企业Adevinta应用PaddleOCR提质增效

飞桨PaddlePaddle

广告 OCR 飞桨 飞桨PaddlePaddle

在 mu 中推出对 EKS 的支持_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章