主流开源开发者工具落地阿里云,进一步提升开发者体验

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
网络型负载均衡 NLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
简介: 在云计算大数据时代,企业的不断上云,业务的不断发展,技术架构的不断演进,导致资源、应用和数据的管理成本不断增加,运维难度不断加大。业务场景的不断和复杂和变化,不得不引起我们更多的思考: * 业务基础设施架构如此复杂,是否可以实现一键搭建? * 自定义云镜像,能否实现批量生产? * 数据安全,是企业和个人最关心的事儿~ AK,证书,敏感数据如何实现自动加密,获取,存储? * 不想手动登录

在云计算大数据时代,企业的不断上云,业务的不断发展,技术架构的不断演进,导致资源、应用和数据的管理成本不断增加,运维难度不断加大。业务场景的不断和复杂和变化,不得不引起我们更多的思考:

  • 业务基础设施架构如此复杂,是否可以实现一键搭建?
  • 自定义云镜像,能否实现批量生产?
  • 数据安全,是企业和个人最关心的事儿~ AK,证书,敏感数据如何实现自动加密,获取,存储?
  • 不想手动登录机器,如何实现应用开发运维?
  • 机器这么多,架构这么复杂,如何快速迁移到阿里云上?
  • 企业上云,多家云资源如何统一管理?
  • ...

面对这些问题和困扰,如果能借用一种或者多种自动化工具,让机器来帮我们做一些繁琐的工作,而我们只需关注一些简单的配置,那么将大大提高工作效率。

如何让机器给我们做事情呢?这就是基础设施即代码(Infrastructure As Code,IaC)。即,将我们的阿里云资源,云镜像建立过程,应用部署过程以及数据管理流程等,以代码的方式定义在模版中,利用开发者工具通过对这些模板的有效管理来实现对阿里云资源,应用以及数据的有效管理。

目前,阿里云已经实现了对主流开源管理工具 Terraform、Ansible、Packer、Vault、Bosh等的成功接入和支持,可帮助开发者在自动化运维,多云管理,云迁移,数据安全等领域释放更多生产力,助力云基础设施的高效、统一管理。

屏幕快照 2018-10-24 下午6.25.17.png

Terraform,让资源管理更简单

Terraform 是一个开源的资源编排工具。利用 Terraform 的语法,将资源以代码的形式定义在Terraform模板,然后借助于阿里云提供的Terraform Provider 来实现对阿里云资源,如 ECS instance,VPC,VSwitch,SLB 等的统一创建和管理。

屏幕快照 2018-10-24 下午10.18.34.png

以现有模板 terraform-alicloud-classic-load-balance 为例,将一个经典的负载均衡架构中,所涉及的资源 VPC,VSwitch,ECS Instance,RDS,Security Group,SLB 以及 OSS Bucket 定义在一个统一的模板文件 main.tf 中,依次运行如下的命令,即可实现对这个系统架构的快速搭建和一键释放。

# 下载模板并进入模板目录
$ git clone https://github.com/terraform-alicloud-modules/terraform-alicloud-classic-load-balance.git && cd terraform-alicloud-classic-load-balance
# 初始化 Terraform
$ terraform init
# 预览所要创建的资源
$ terraform plan
# 创建所有资源
$ terraform apply
# 一键释放所有资源
$ terraform destroy

目前,阿里云 Terraform Provider 已经覆盖了22个阿里云的产品,支持100多个resource和datasource,并提供了丰富的 ExamplesModules,持续提升开发者的体验和效率,释放更多生产力。

Packer,无需关心如何创建镜像

Packer 是一个自动化制作云镜像的开源工具。Packer 的出现使得客户无需再去关心云镜像建立的详细过程,无需登录控制台、登录机器手动制作云镜像,只需关心镜像中所要安装什么软件,定制什么服务,下载什么应用即可,阿里云 Packer Builder 一键帮你制作属于自己的云镜像。

屏幕快照 2018-10-24 下午10.21.58.png

以现有 Example Jenkins 为例,利用阿里云 Packer Builder,一键制作 Jenkins 镜像:

# 下载Example
$ git clone https://github.com/alibaba/packer-provider.git
# 一键制作Jenkins镜像
$ packer build examples/alicloud/jenkins/alicloud.json

目前,阿里云 Packer Builder 已支持制作 14 种操作系统发行版镜像的制作,包括我们最长用的 Ubuntu,CentOS,Windows等。

Bosh,简化平台架构的部署和管理

Bosh 是一个可以为小型或大型云软件实现的发布,部署和生命周期管理的项目。阿里云 Bosh CPI 实现了对 Bosh 的支持,进而成功地支持了第一个开源 PaaS 平台 CloudFoundry 在阿里云上的落地,帮助更多的企业和开发者实现了使用阿里云的需求。

屏幕快照 2018-10-21 下午4.11.33.png

目前,我们已经提供了详细的 CloudFoundry 落地阿里云的技术方案,欢迎大家参考。

Ansible,自动化管理阿里云资源

Ansible 是一款自动化部署应用的强大工具,实现了登录机器,上传/下载应用包,部署应用以及管理应用等一系列流程的自动化。阿里云在 Ansible 强大的自动化管理能力的基础上,提供了多个云资源管理的 Module,如ali_instanceali_vpcali_slb_lb等。借助这些 Module,用户可以将对云资源的管理流程加入到应用部署的管理流程中,从而实现从资源创建到应用部署一键式的过程,进一步提升自动化的能力,提升运维效率。

屏幕快照 2018-10-24 下午10.27.21.png

以现有 Example alicliud_ecs_vpc,借助阿里云提供的Module,可实现对 ECS instance,VPC,VSwitch,安全组,ECS disk等资源的自动化创建和删除:

# 下载Example并进入example目录
$ git clone https://github.com/alibaba/ansible-provider.git && cd ansible-provider/examples/alicloud-ecs-vpc
# 一键创建云资源
$ ansible-playbook alicloud.yml
# 一键删除云资源
$ ansible-playbook destroy.yml

Vault, 密钥管理更简单

Vault 是一个用户管理密钥和管理敏感数据的工具。它实现了对 AccessToken,AccessKey,Password,安全证书,密钥等敏感数据的统一管理和存储。阿里云对Vault的接入,提供了 Secrets EngineAuth Method,让更多的开发者无需再为设置繁琐的环境变量和静态密钥文件而苦恼,也无需再为丢失密钥和AK泄漏而担心,所有的敏感数据都可交由 Vault 来管理,当需要的时候,实时通过 Vault 命令获取即可,即省事,又安全。

屏幕快照 2018-10-24 下午10.29.06.png

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
目录
相关文章
|
数据安全/隐私保护 开发者 异构计算
阿里巴巴开源可控视频生成框架VideoComposer!(内含体验、推理实践干货)
8月16日,时间、空间可控的视频生成模型 VideoComposer 在魔搭社区开源。
阿里巴巴开源可控视频生成框架VideoComposer!(内含体验、推理实践干货)
|
16天前
|
安全 测试技术 数据安全/隐私保护
原生鸿蒙应用市场开发者服务的技术解析:从集成到应用发布的完整体验
原生鸿蒙应用市场开发者服务的技术解析:从集成到应用发布的完整体验
|
10天前
|
前端开发 Android开发 开发者
移动应用的构建之路:从开发到部署
【10月更文挑战第32天】本文将深入探讨移动应用的开发和部署,包括移动操作系统的选择、应用开发的生命周期、以及如何将应用有效地推向市场。我们将通过实际代码示例和清晰的步骤指导,帮助读者理解移动应用开发的全过程。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和技巧。让我们一起探索移动应用的世界,发现它的魅力和挑战吧!
|
6月前
|
Web App开发 搜索推荐 前端开发
【热门话题】Chrome 插件研发详解:从入门到实践
本文详细介绍了Chrome插件的开发,从基础概念到实战技巧。首先,解释了插件的结构,包括manifest.json、背景脚本、内容脚本和UI界面。接着,阐述了生命周期、通信机制以及开发步骤,包括创建项目结构、编写manifest.json、开发脚本和UI,以及测试与调试。通过一个显示当前页面URL的插件实例,展示了具体实现过程。最后,讲解了如何在Chrome Web Store发布和分发插件。Chrome插件开发为开发者提供了创造个性化体验的平台,本文旨在引导读者入门并深入实践。
137 2
提升直播软件源码开发平台性能关键利器功能
直播软件源码平台缓存功能的示例用法 cache = LiveStreamCache() cache.add_to_cache("stream1", "直播内容1") cache.add_to_cache("stream2", "直播内容2") content1 = cache.get_from_cache("stream1") print(content1) cache.remove_from_cache("stream2") content2 = cache.get_from_cache("stream2") print(content2)
|
11月前
|
人工智能 NoSQL atlas
MongoDB推出四项AI驱动的新功能,助力开发者提升效率并加速应用程序现代化
生成式人工智能让开发者有机会构建更好的应用程序。通过自动执行重复性任务,由AI驱动的工具和功能可以帮助开发者节省大量时间和精力,同时更快地交付更高质量的应用程序
MongoDB推出四项AI驱动的新功能,助力开发者提升效率并加速应用程序现代化
|
数据可视化 前端开发 Java
个人开发者是否能借助开源获利?
近几年国内外开源软件的成倍增长,以及开源软件在互联网领域的比重越来越高,开源软件扮演者越来越重要的角色,所以开源软件不仅推动了技术领域的不断创新和发展,也给个人开发者们提供了越来越多的合作机会和获利的机会。
93 0
个人开发者是否能借助开源获利?
|
机器学习/深度学习 人工智能 自然语言处理
phind——无需注册专为开发者而生的 AI 搜索引擎
phind 是一个为开发人员设计的 AI 搜索引擎,可以帮助工程师更快地找到他们所需的信息
2173 1
|
移动开发 IDE JavaScript
《GaiaX开源解读 | 基于优酷业务特色的跨平台技术》
GaiaX跨端模板引擎,是在阿里优酷、淘票票、大麦内广泛使用的Native动态化方案,其核心优势是性能、稳定和易用。本系列文章《GaiaX开源解读》,带大家看看过去三年GaiaX的发展过程。
317 0