主流开源开发者工具落地阿里云,进一步提升开发者体验
在云計算大數據時代,企業的不斷上云,業務的不斷發展,技術架構的不斷演進,導致資源、應用和數據的管理成本不斷增加,運維難度不斷加大。業務場景的不斷和復雜和變化,不得不引起我們更多的思考:
- 業務基礎設施架構如此復雜,是否可以實現一鍵搭建?
- 自定義云鏡像,能否實現批量生產?
- 數據安全,是企業和個人最關心的事兒~ AK,證書,敏感數據如何實現自動加密,獲取,存儲?
- 不想手動登錄機器,如何實現應用開發運維?
- 機器這么多,架構這么復雜,如何快速遷移到阿里云上?
- 企業上云,多家云資源如何統一管理?
- ...
面對這些問題和困擾,如果能借用一種或者多種自動化工具,讓機器來幫我們做一些繁瑣的工作,而我們只需關注一些簡單的配置,那么將大大提高工作效率。
如何讓機器給我們做事情呢?這就是基礎設施即代碼(Infrastructure As Code,IaC)。即,將我們的阿里云資源,云鏡像建立過程,應用部署過程以及數據管理流程等,以代碼的方式定義在模版中,利用開發者工具通過對這些模板的有效管理來實現對阿里云資源,應用以及數據的有效管理。
目前,阿里云已經實現了對主流開源管理工具 Terraform、Ansible、Packer、Vault、Bosh等的成功接入和支持,可幫助開發者在自動化運維,多云管理,云遷移,數據安全等領域釋放更多生產力,助力云基礎設施的高效、統一管理。
Terraform,讓資源管理更簡單
Terraform是一個開源的資源編排工具。利用 Terraform 的語法,將資源以代碼的形式定義在Terraform模板,然后借助于阿里云提供的Terraform Provider 來實現對阿里云資源,如 ECS instance,VPC,VSwitch,SLB 等的統一創建和管理。
以現有模板 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,并提供了豐富的 Examples 和 Modules,持續提升開發者的體驗和效率,釋放更多生產力。
Packer,無需關心如何創建鏡像
Packer 是一個自動化制作云鏡像的開源工具。Packer 的出現使得客戶無需再去關心云鏡像建立的詳細過程,無需登錄控制臺、登錄機器手動制作云鏡像,只需關心鏡像中所要安裝什么軟件,定制什么服務,下載什么應用即可,阿里云 Packer Builder 一鍵幫你制作屬于自己的云鏡像。
以現有 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 在阿里云上的落地,幫助更多的企業和開發者實現了使用阿里云的需求。
?
目前,我們已經提供了詳細的 CloudFoundry 落地阿里云的技術方案,歡迎大家參考。
Ansible,自動化管理阿里云資源
Ansible 是一款自動化部署應用的強大工具,實現了登錄機器,上傳/下載應用包,部署應用以及管理應用等一系列流程的自動化。阿里云在 Ansible 強大的自動化管理能力的基礎上,提供了多個云資源管理的 Module,如ali_instance,ali_vpc,ali_slb_lb等。借助這些 Module,用戶可以將對云資源的管理流程加入到應用部署的管理流程中,從而實現從資源創建到應用部署一鍵式的過程,進一步提升自動化的能力,提升運維效率。
以現有 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.ymlVault, 密鑰管理更簡單
Vault 是一個用戶管理密鑰和管理敏感數據的工具。它實現了對 AccessToken,AccessKey,Password,安全證書,密鑰等敏感數據的統一管理和存儲。阿里云對Vault的接入,提供了 Secrets Engine 和 Auth Method,讓更多的開發者無需再為設置繁瑣的環境變量和靜態密鑰文件而苦惱,也無需再為丟失密鑰和AK泄漏而擔心,所有的敏感數據都可交由 Vault 來管理,當需要的時候,實時通過 Vault 命令獲取即可,即省事,又安全。
原文鏈接
本文為云棲社區原創內容,未經允許不得轉載。
總結
以上是生活随笔為你收集整理的主流开源开发者工具落地阿里云,进一步提升开发者体验的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: GAN的一些很酷的应用
- 下一篇: JSON数据从OSS迁移到MaxComp