
puppet ansible 比較 在 コバにゃんチャンネル Youtube 的精選貼文

Search
#Puppet 代表比較傳統的master/slave 模式。 ... 部署的劇本(Playbook) 可以存在任何地方,Ansible 會根據Inventory 把playbook 裡面指定的module 推到部署節點上。 ... <看更多>
三、ansible和puppet比较. 1、服务器端:. puppet:至少包含一个或多个puppetmaster服务器,每个客户端安装agent包。 ansible:不需要master和agent,只需要一个节点 ... ... <看更多>
#1. Ansible vs Puppet vs Chef - 2021 配置管理工具比较- Incredibuild
我们在日常DevOps 活动中考虑配置管理问题时都会考虑有哪些可用的最佳工具。这篇文章将重点讨论和对比Ansible、Puppet、Chef 的最新趋势和相关信息。
#2. Chef、Ansible、Salt,四款自动化运维工具处理效率之比较
目前市面上常见的自动化运维工具主要有以下几种,Puppet、Chef、Ansible和Salt,下面对四种产品做一个对比介绍:. Puppet应该是市面上使用最多的,就 ...
#3. 入门科普:Ansible 与Puppet 对比 - Red Hat
Ansible 和Puppet 都是立足社区的开源IT 自动化工具。本文将更加详细地阐述Ansible 和Puppet 之间的异同。
#4. 架構程式碼的實施工具. 三個各有其代表性的工具:Puppet…
Ansible 是不需要代理人(agent)的。Terraform 則是較新一代 ... Puppet 是比較傳統,但又被廣泛使用的架構程式碼編譯工具。它在2005年就開始發行, ...
#5. 运维管理工具的对比Puppet、Chef、Ansible和SaltStack - 博客园
Puppet 不如Ansible或Salt来得精简,配置起来有时会变得错综复杂。对异构环境来说,Puppet是最稳妥的选择,但是你可能会发觉Ansible或Salt比较适合更 ...
#6. Day 2 - Puppet 是什麼?能吃嗎? - iT 邦幫忙
Puppet 介於Chef 和Ansible 之間則是Dev 和Ops 各半,但和Chef 是比較同類型的工具。 也由於Puppet 和Chef 的使用上頗相近,很多企業也採用Puppet + Chef 來彌補各自的 ...
#7. ansible puppet saltstack三款自动化运维工具的对比! - 腾讯云
二、技术特性比较. 名称. Puppet. SaltStack. Ansible ... 相对其他工具较复杂,需学习Puppet的DSL或Ruby安装过程缺少错误校验和产生错误报表.
#8. Ansible vs Terraform vs Puppet差异比较:有什么区别?选择 ...
Ansible vs Terraform vs Puppet有什么区别?在“DevOps”世界中,组织正在使用基础设施即代码(IAC) 来实施或构建流程。Ansible、Terraform 和Puppet ...
#9. 运维管理工具的对比Puppet、Chef、Ansible和SaltStack
至于比较复杂的任务,Ansible配置通过名为Playbook的配置文件中的YAML语法来加以处理。Playbook还可以使用模板来扩展其功能。 Ansible有一大批模块,可用 ...
#10. 为什么选择Terraform而不选择Puppet,Ansible或 ... - 知乎专栏
如果您去查找上述工具之间的对比,大多数的比较都只不过列出了每个 ... Chef,Puppet,Ansible和SaltStack等配置管理工具通常默认为可变基础架构。
#11. Puppet、Chef、Ansible、Salt對比- 台部落
各種運維工具只是用於幫助人員進行運維的,每種工具都有其使用的優勢領域,Puppet適用於軟件自動化配置和部署;SaltStack適用於基礎設施管理,在幾分鐘內 ...
#12. puppet!ansible!saltstack!我到底爱着谁? - 睿象云
目前市场上主流的开源自动化配置管理工具有puppet、ansible、saltstack。到底选择哪一个好?puppet:有产品线已经在用,优点是历史悠久,比较成熟, ...
#13. Ansible/Puppet/saltstack比较- 简书
Puppet 、Chef、Ansible、Salt对比Ansible或者Puppet 存在即是合理,起码是存在3年以上的;没有最好的,只有合适的,你说白菜和青菜哪个最好? 一...
#14. Ansible和Terraform以及Puppet这三者如何选择 - 服务器租用
这三个都是高级平台,用于部署具有高度复杂要求的可复制和重复应用程序。比较这些应用程序在配置管理、架构和编排方面的异同,并做出明智的决定。 Ansible ...
#15. UCloud 资源编排工具与Chef,Puppet,Ansible对比
与其它工具的对比本篇目录配置管理工具(如Chef,Puppet,Ansible 等)友 ... 一个比较好的实践是,由资源编排工具创建资源,配置管理工具配置机器, ...
#16. Puppet,Ansible,Saltstack 有哪些区别和联系 - 百度知道
根据自身的技术栈还有需求决定吧。 puppet 国内用的比较多,资料也多,运行稳定。但是是使用ruby开发的。 saltstack 最近几年才开始使用的吧,配置管理方面稍微弱 ...
#17. [DevOps系列] 为什么我们使用Terraform 而不使用Puppet ... - 掘金
更难以理解的是,您在这些工具之间在线找到的大多数比较只是列出每个工具 ... Chef, Puppet, Ansible, and SaltStack 都是配置管理工具,这意味着它们 ...
#18. puppet!ansible!saltstack!我到底爱着谁? - 墨天轮
目前市场上主流的开源自动化配置管理工具有puppet、ansible、saltstack。到底选择哪一个好? puppet:. 有产品线已经在用,优点是历史悠久,比较成熟,在可远程可 ...
#19. 自動化部署工具:Ansible、Chef、Puppet、Saltstack對比
Ansible 提供一種最簡單的方式用於發布、管理和編排計算機系統的工具,你可在數分鐘內搞定 ... 比較項. puppet. chef. saltstack. ansible. 開發語言.
#20. 為什麼要用Puppet
Puppet 和Chef 彼此相似,在選擇上開發者多數喜愛Chef,而系統人員偏愛Puppet / Ansible,這是由於使用Chef 需要比較多的Ruby 經驗,開發者容易上手,系統人員反之。
#21. DevOps Taiwan | 這篇文章介紹了三種代表性的#基礎架構即 ...
#Puppet 代表比較傳統的master/slave 模式。 ... 部署的劇本(Playbook) 可以存在任何地方,Ansible 會根據Inventory 把playbook 裡面指定的module 推到部署節點上。
#22. Ansible Puppet Chef - 構成管理ツール
Ansible / Puppet / Chef ; 比較項目, Ansible, Puppet ; 開発組織, RedHat, Puppet Labs ; 使用言語, Python, Ruby ; アーキテクチャ, エージェントレス, エージェント ; 構成 ...
#23. Puppet,Ansible,Saltstack 有哪些区别和联系 - 搜狐
如果考虑后期自己开发,并且是无agent方式,可以用ansible,基于ssh的,比较直接粗暴,会有种很“爽“的感觉。 ansible主要是远程命令执行,比较适合做“一次 ...
#24. Puppet Saltstatck Ansible 自动化运维工具对比 - 风纳云
下面我们只比较相对来说比较常用的自动化运维工具puppet saltstatck ansible. Puppet www.puppetlabs.com. 基于rubby开发c/s架构支持多平台可管理配置 ...
#25. hello-ansible/vs-puppet.md at master - GitHub
三、ansible和puppet比较. 1、服务器端:. puppet:至少包含一个或多个puppetmaster服务器,每个客户端安装agent包。 ansible:不需要master和agent,只需要一个节点 ...
#26. オープンソースのAnsibleとPuppetを比較 - OSSNewsサイト
Ansible とPuppetを比較. 「Ansible」と「Puppet」の比較. 「Ansible」と「Puppet」は構成管理ツールです。 ... Ansible. 概要. Ansibleは、最小限の手間で各種設定を自動化 ...
#27. OSSの運用自動化ソフト 注目の7製品まとめ(Chef/Puppet ...
「IaC(Infrastructure as Code)」を実現するソフトウェア製品を比較し ... 4, Puppet, Puppet, Inc. AnsibleやChefと同様に、サーバを立ち上げる際 ...
#28. 第3回「システムを創るプログラム」 - NTTデータ先端技術
これらのツールで使う「プログラム」ですが、Puppetは「manifest(マニフェスト)」、Chefは「recipe(レシピ)」、Ansibleは「playbook(プレイブック)」という名称 ...
#29. 对比平台--Ansible vs Puppet对比 - 1024云平台导航与技术测评
Ansible 与Puppet之间的主要区别让我们讨论Ansible与Puppet之间的顶级比较:. Ansible 红帽(Red Hat)在2012年推出了Ansible,它完全是用python开发 ...
#30. terraform ansible比較2023-在Facebook/IG/Youtube上的焦點 ...
Chef; Puppet; Ansible; SaltStack; CloudFormation; Terraform ... 如果您去查找上述工具之间的对比,大多数的比较都只不过列出了每个工具的一般 .
#31. 基于自动化运维工具SaltStack、Ansible、Puppet等运 ... - 蓝队云
(1)制定比较通用的校验架构,按脚本规范编写脚本利于脚本的校验;. (2)有一些像配置核查的功能也能够帮助我们找出配置的不一致,这些校验功能帮助我们 ...
#32. 部署管理工具:Chef vs Puppet vs Ansible vs SaltStack vs Fabric
何时使用:Salt是一种不错的选择,如果可扩展性和永续性是一个大问题, 它对系统管理员很有好处,因为它的可用性比较好。 价格:免费的开源版本,这是基于每年每节点订阅的 ...
#33. 拿什么拯救你,我的Ansible - 速石科技
就我个人而言,当时是比较推崇Salt的,因为看起来Salt更轻量级,跟Puppet在配置管理方面也非常相似,而且Salt的源码看起来很舒服,结构很简单,很适合学习 ...
#34. 什么是Chef/Puppet/SaltStack/Ansible? 何故我觉得它们的功能 ...
配置管理工具是开发和运维的统一服务部署语言(非容器应用,容器环境现在k8 比较流行);在没有专职运维的公司里,开发人员不想加太多的班的话,自动化运 ...
#35. What Is Ansible? How Ansible Works? Ansible Tutorial For ...
Chef vs Puppet vs Ansible vs Saltstack _ Configuration Management Tools. 《linux入门必备:学会linux命令的快速方法!》.
#36. Puppet 和Chef 哪个好用?哪个比较流行点?要学的话先学谁 ...
Anyway,其实我是想跟vagrant 配合使用的,看vagrant 的文档里面只提到了Ansible, Chef 和Puppet,估计只能用这三个?... hooopo #4 2013年07月04日.
#37. Ansible 快速上手 - 运维生存时间
最近纠结于在Puppet、Chef、SaltStack、Ansible 等一干配置管理工具中如何选择。考虑到一旦开始没有选好, ... 经过对Ansible 的把玩,我感觉Ansible 于我比较相投。
#38. Deployment Management Tools: Chef vs. Puppet vs. Ansible ...
What are the pros and cons of Chef, Puppet, Ansible, SaltStack and Fabric? Working in production today often means continuous deployments ...
#39. 自动化部署工具:Ansible、Chef - Saltstack对比 - 今日头条
Ansible 提供一种最简单的方式用于发布、管理和编排计算机系统的工具,你可在数分钟内搞定。Ansible 是一个模型驱动的配置管理器,支持多.
#40. 浅谈自动化运维最佳实践 - 江苏保旺达软件技术有限公司
主流的自动化运维工具主要有Ansible 、 SaltStack 、 Puppet 。 ... 至于比较复杂的任务则可以使用Ansible-Playbook剧本编写。Playbook还可以使用模板 ...
#41. 2021 年25 大DevOps 工具(上) - 测试窝
这些基于代理的部署一般比较准确、及时,还能生成错误日志以供审查。 Puppet 还为版本控制提供了与Git 的简单集成。 Puppet是声明式的,通常适合基线 ...
#42. 選擇IaC 工具是多選題,而不是單選題 - Phil's Workspace
... 議題應該要以共生共榮的角度看待比較好. 早期的時候都是Shell Script 當道居多,直至2012 年左右Ansible (2015 年被Red Hat 收購)、Puppet (2022 ...
#43. Ansible VS Puppetの比較 |【ITreview】IT製品のレビュー ...
Ansible 、Puppetをユーザー評価やレビュー内容で比較。使いやすさや、管理のしやすさ、サポート品質などの違いも、ユーザー評価を基に比較できます。
#44. Ansible FAQ | 张吉的博客
翻译这篇原始FAQ文档是因为它陈述了Ansible这款工具诞生的原因,设计思路和特性,以及与Puppet、Fabric等同类软件的比较,可以让我们对Ansible有一个 ...
#45. 部署管理工具:Chef vs Puppet vs Ansible vs SaltStack vs Fabric
Chef,Puppet,Ansible,SaltStack和Fabric的利弊是什么? ... 如果可擴展性和永續性是一個大問題, 它對系統管理員很有好處,因爲它的可用性比較好。
#46. 学习Ansible + Vagrant - icyleaf
简单来说Ansible 是一个极简化的应用和系统部署工具,类似Puppet、Chef、SaltStack。由于默认使用 ssh 管理服务器(集群),配置文件采用yaml 而不是 ...
#47. プロビジョニングツールの比較 - Qiita
出典 Chef vs Puppet vs Ansible vs Saltstack: Which Works Best For You? 全ての指標でAnsibleはChef,Saltを同等かそれ以上である。 特にChefはRuby ...
#48. Ansible 作為puppet/chef/cfengin 和其他的替代 - 開源互助社區
Ansible 作為puppet/chef/cfengin 和其他的替代,.Ansible as an alternative to puppet/chef/cfengin and others ... 《解決方案》 有比較detai……
#49. saltstack与ansible对比-IT运维管理 - UML软件工程组织
Ansible 、SaltStack、Puppet都是目前比较受用户欢迎的自动化化运维工具,其中Ansible和SaltStack使用python 编写,具有良好的可移植性。
#50. AnsibleとChefとPuppetの比較 - MacRuby
Ansible やChefやPuppetは,「構成管理ツール」(Configuration Management)の代表的な技術として知られています。構成管理ツールとは,複数のサーバー ...
#51. 1.1 Ansible 介绍 - Erdong' Blog
与其他IT 自动化产品相比较,Ansible 可以提供一种不需要安装客户端软件、管理便捷、功能强大的基础架构配置、维护工具。 Ansible 基于Python 语言实现,由Paramiko ...
#52. 2021 年25 大DevOps 工具(上) - 自动化测试 - 禅道
Puppet 是一种开源软件配置管理和部署工具,通常用于确保所有服务器都配置为 ... 这些基于代理的部署一般比较准确、及时,还能生成错误日志以供审查。
#53. 什麼是Ansible?:利用Ansible 管理組態 - NetApp
Ansible 是一款組態管理平台,可將儲存設備、伺服器與連網設備自動化。使用Ansible 配置這些元件時,困難的手動工作就變得可重複執行,因此比較不容易出錯。
#54. SaltStack 与Ansible 选择? - ITPUB博客
目前的感觉是1)Ansible是有个公司在支持,可能支持比较好。2)Ansible不用安装 ... Puppet、Chef基于Ruby开发,ansible、saltstack基于python开发的.
#55. Ansible (軟體) - 維基百科,自由的百科全書
Ansible 最初由Michael DeHaan 編寫,並於2015 年被Red Hat收購,其旨在自動化設定類Unix系統 ... 與其他流行的組態管理軟體(如Chef 、 Puppet 、 Salt和CFEngine) 相 ...
#56. Puppet:基于Ruby的服务器管理自动化套件 - InfoQ
本文总结了Lyft工程师们从易用性、成熟度、性能和开发社区等方面,详细比较SaltStack和Ansible后得出的结论。 DevOps语言& 开发. App 打开. Go 语言, ...
#57. 自动化之Ansible - FeiYi's Blog
程序自动化(Ansible/Saltstack/Puppet) ... Saltstack :基于python开发,支持统一管理,比较轻量级支持管理500台服务器,python编写,需要 ...
#58. Re: [請益] 自動化佈署(Chef, Ansible, Salt) - 看板Soft_Job
後來才發現應該是其他的像是: Puppet, Chef, SaltStack, Ansible, Juju? ... Jenkins 比較適合在node 數固定,且混雜異質平態,需高度客製化的情境。
#59. Puppet、Chef、Ansible、Salt对比_weixin_34378767的博客
这四款自动化运维工具网上的比较很多,但是很难说谁就一定比谁好很多,还是那句话,你的团队具有哪方面的人才就使用哪个,如果非要选出一个我个人推荐ansible,因为基于 ...
#60. 善用組態管理自動化機制輔助IT維持正常維運 - 網管人
實際接觸客戶端IT部門後發現,若本身具有基本程式開發能力,學習Ansible速度比較快。至於專屬維運基礎架構的IT人員,大多習慣撰寫Shell Script輔助 ...
#61. ChefとPuppetの比較 - SlideShare
ChefとPuppetの比較 ~Puppetユーザから見たChef~(仮) クックパッド株式会社 菅原 元気 自己 ... Ansible 2.0を使って組む kubernetesクラスタ vol.1.
#62. 持续部署与发布(五)自动化的实现“一切即代码”-云社区-华为云
Ansible 可以用来自动化日常任务,比如服务器的初始化、配置、安全基线配置、更新和打补丁系统安装软件包等; Ansible与Chef、Puppet 以及SaltStack 相 ...
#63. DevOps 筆記- 使用Jenkins、Git、RPM - 第二十四個夏天後
DevOps 筆記- 使用Jenkins、Git、RPM、Ansible、Slack 建置持續整合 ... 的問題,因為Puppet 需要比較強的關係式(Server/Client認證),雖然硬做也是ok ...
#64. 自己架設各種服務的ansible playbook:Sovereign
從puppet 跳槽,因為SaltStack (Salt) 與Ansible 都是使用Python 而被選擇,然後完整比較後記錄下來:「Moving away from Puppet: SaltStack or Ansible?
#65. 【DevOps】Ansible v.s. Salt (SaltStack) v.s. StackStorm - 架构
StackStorm 有Salt、Chef、Puppet 和Ansible 的包,所以如果你想 ... Salt 有很多作用,所以通常当你听到Salt 粉丝将它与Ansible 进行比较时,你会 ...
#66. Ansible自动化运维教程_w3cschool - 编程狮
Ansible 是个与 Puppet, SaltStack, Chef 并驾齐驱的组态设定 (Infrastructure as Code) 工具,其简单易用的 ... Ansible的部署比较简单,agentless 无客户端工具;
#67. Ansibleの評価(ChefやPuppetと比較) | tracpath:Works
Ansible を利用されている方、これからAnsibleの利用を検討されている方は、ChefやPuppetといった類似の構成管理ツールを利用した事がある、そこからの ...
#68. Ansible - Maxkit
目前在DevOps 設定管理的工具中,以Puppe、Chef、Salt、Ansible 四者最有名, ... 及puppet 在2017 的比例有下降一些,但還是比較多人使用的工具。
#69. Puppet 是什么?为什么Unix/Linux管理员需要Puppet?
在云计算时代基础设施呈指数性增长,所以我们需要Puppet , Ansible这样 ... 根据我的经验,Devops使用Puppet比较好,而系统管理员使用Ansible更方便。
#70. NetDevOps开源工具的选择| SDNLAB知识社区
开源工具主要推荐ansible/saltstack和puppet/chef两类,但是Ansible ... 偏向于应用级开发,所以比较推荐使用Ansible,Ansible受到越来越多人的青睐。
#71. 如何做一个有质量的技术分享| 酷壳- CoolShell
有各种各样的推导和方案的比较,让你知其然知其所以然。有了不同方案的 ... 有了比较后,听众才会更相信你。 ... (Puppet/Chef/Ansible, VM, LXC etc.) ...
#72. Linode: Cloud Computing Services | VMs, Kubernetes, Storage
Simplify your infrastructure with Linode's cloud computing and hosting solutions and develop, deploy, and scale faster and easier.
#73. Ansible VS Puppet - 立地货
Ansible 和Puppet 正迅速成为管理大量服务器的重要组件。它们通常被称为配置管理和远程执行工具。 这些超级有用的应用程序允许管理员同时在多台服务器上执行 ...
#74. Scm软件推荐- 2023
4、全功用比較gentoo可以靈活控制軟件版本,能夠適應各種環境; arch官方只有·A ... 如下列表: Jenkins Ansible CFEngine Puppet CHEF JUJU Bamboo Server Octopus ...
#75. 2023 Scm软件推荐- annaba.pw
如下列表: Jenkins Ansible CFEngine Puppet CHEF JUJU Bamboo Server Octopus ... システムの比較4選SCMシステムを選ぶ時のポイント3つSCMを導入して物流プロセスを ...
#76. Teamcity Vs Jenkins
What's the difference between Ansible, Jenkins, and TeamCity? Compare Ansible vs. ... これらを比較して、自社の開発要件に応じたCI/CDツールを検討しよう。
#77. Scm软件推荐2023 - bedir.pw
如下列表: Jenkins Ansible CFEngine Puppet CHEF JUJU Bamboo Server ... システムの比較4選SCMシステムを選ぶ時のポイント3つSCMを導入して物流 ...
#78. Ansible徹底入門|雲端時代的組態管理(電子書)
... 並與類似的工具如 Puppet 及 Chef 進行比較。 Puppet 與 Chef 都是以 Ruby 所描述的組態管理工具,雙方皆在 Ansible 問世之前就已經十分普及了。Puppet 這個工具是 ...
#79. Continuous Integration and Deployment - Teamcity Vs Jenkins
What's the difference between Ansible, Jenkins, and TeamCity? ... Puppet Enterprise - Get started with Puppet Enterprise, or upgrade or expand.
#80. Scm软件推荐2023 - bitlis.pw
如下列表: Jenkins Ansible CFEngine Puppet CHEF JUJU Bamboo Server ... システムの比較4選SCMシステムを選ぶ時のポイント3つSCMを導入して物流 ...
#81. Teamcity Vs Jenkins
これらを比較して、自社の開発要件に応じたCI/CDツールを検討しよう。 ... What's the difference between Ansible, Jenkins, and TeamCity? Compare Ansible vs.
#82. c# mssql - Korea
... 起來應該比較不會有怪問題,而且安裝過程中不太需要手動選擇參數,安裝 … ... Bash, Azure API, AWS CLI • Ansible, Puppet, Terraform, Docker, ...
#83. ITフリーランスエンジニアの案件・求人はPE-BANK
Puppet Ansible SAP / Salesforce その他言語 インフラ(その他) ... Puppet · Ansible ... エンジニアの働き方や年収を比較 · プログラマーとは?
#84. OpenStackクラウドインテグレーション オープンソースクラウドによるサービス構築入門
14.5 アプリケーション展開方式の比較本章のまとめとして、AnsibleやChefなどの構成 ... の場合構成管理ツール(Chef/Ansible/Puppetなど)仮想マシンイメージコンテナー ...
#85. Ansible徹底入門 クラウド時代の新しい構成管理の実現
1.5 Ansible の特徴最後に、構成管理ツールとしての Ansible が持つ特徴をいくつか挙げて、代表的な類似ツールである Puppet および Chef との比較を見ていきましょう ...
#86. NetAdmin 網管人 10月號/2018 第153期 - 第 47 頁 - Google 圖書結果
Harmony 控制器底層運用了不同技術引擎,例如Ansible、Chef、Puppet 等, ... 判斷個人資料合理運用新加坡經驗可參考比較何謂適當安全維護措施個資法無具體規定文◎ ...
#87. シスコ技術者認定教科書 CCNP Enterprise 完全合格テキスト&問題集 ...
Ansible の Playbookのように手順を記述するのでなく、あるべき状態の宣言を記述する宣言型の記述となります。 Puppetマスターはマニフェストファイルを元にカタログを ...
puppet ansible 比較 在 Re: [請益] 自動化佈署(Chef, Ansible, Salt) - 看板Soft_Job 的推薦與評價
※ 引述《Sanbeishuu (三杯鼠)》之銘言:
: 請問主流的幾款自動化佈署軟體有無較適合單純的update某個web application的呢?
[--------] [-----------------------]
update 這確實很容易,但事情不是只有 update
你現在只想到 {自動化, 部署}
不是真的 {自動化部署} 完整的思維應該是 delivery pipeline
自動化不是必要的,但要完全「非人工」介入,
並讓每一個程序可以被追蹤,得付出額外的努力。
當你真的做到「完善」的時候,
你要做的事就不是單純你現在描述的這些內容了。
可以先看個入門學,培養一下概念
https://www.books.com.tw/products/0010653820
https://www.thoughtworks.com/continuous-delivery
(由於成書至今有些年份,工具可能改朝換代,
或 DVCS 的接受度有變,那就依自己的情境代換一下吧。)
: 一開始試了Jenkins,發現他好像不是這樣的用途。後來才發現應該是其他的像是
: Puppet, Chef, SaltStack, Ansible, Juju?
Jenkins 最初大家拿它來做測試為主,
並因為是基於 jvm 為主的應用程式,所以拿它來控制各種平台的活動
實在非常方便,所以才有用它的 agent 在常見的 Linux, Windows, OSX
上配合與不同的 Browser 組合互相試測(配合 selenium 更是如虎添翼)
甚至到現在,加上 android device 或 iOS device 的自動化測試依然也適用。
對它來說,工作的「單位」都是 Job,只要有安裝上 java agent
(在防火牆內還可以透過 JNLP 由 node 上連回 jenkins master)
就能輕鬆遞送要做的工作。
Jenkins 比較適合在 node 數固定,且混雜異質平態,需高度客製化的情境。
因為 "Job" 的內容很多變,可以是 Ant Job、Maven Job、Gradle Job
或沒限制你寫什麼的 FreeStyle Job,你想改什麼,或呼叫端遠指令都做得到。
不過要寫成這樣,已經跟「高度」客製化沒什麼差別了啊。
(這隱含著,你目標的環境並沒有「整理」成較一致的情況)
不過,到了 2.x 要準備發佈的這個時代,加上「雲端」與
Continuous Delivery 概念與 DevOps 哲學觀的推擠,
它開始將 workflow 的概念合併改名字為 Delivery Pipeline 的 Pipeline。
也就是你一個完整的軟體開發流程的「管線 (pipeline)」是怎麼串起來的
1. 開發者把程式送往 VCS
2. VCS 的程式被拿來 Build 成 Artifact
3. Artifact 被拿來跑單元測試
4. Artifact 加上 Configuration 丟上 UAT 跑整合測試
5. UAT 跑過後,送上 Staging 跑整合測試與煙霧測試(smoke test)
6. 通過各種測後,進行 release 的 workflow
這整個 workflow 的每一階段都是 1 個 pipeline
pipeline 內可以是另一個 pipeline 或實際執行的步驟。
且每 1 輪的 workflow 的發起都會對上 VCS 的 revision
release 的 workflow 會是某個標示通過測試的 artifact
(你會有 jenkins build number 與知道它是哪個 revision)
以你的情況,可能是某個 war 或 jar
會在 prod 上 deploy 並進行煙霧測試,確定狀態良好後開始服務
不然就維持舊的版本
==========================================================
Puppet, Chef, SaltStack, Ansible 則是不同的動機而起的,
雖然目前比較「紅」的詞是 DevOps,但應該回到最初的想法去看它
他們該做的是 Configuration Management 這個工作。
但有個尷尬的問題是,你得先面對一個「選擇題」。
在 Continuous Delivery 書上,它的想法是
一個應用程式的良好運作是建立在 {組態設定、程式、資料} 三者都正確的情況
並且認為 {組態設定} 應獨位於程式,它的建議是 {組態設定}
不會包含在 Build 與 Package 內,應該獨立於它之外。
以這個邏輯來說,應該上組態的時間點在 Deploy 或 Provision 的時候。
而 Puppet, Chef, SaltStack, Ansible 正好是在做這件事的最佳助手
能幫檢查設定檔在不在、程式的狀態是不是在期望的狀態等等
他們的用法多為「描述一種最終的狀態」並且試著修正不合預期的狀態
尷尬的部分是,在 Java EE 的規範是把 {組態設定} 也封狀進 WAR 內的
我並不會說書上那麼建議,就一定要遵守,最適合的情況,
只有身處於那個工作場域的人自己知道。
以我目前的情境是比較傾向於把 {組態設定} 包進去的,
對我來說,來自同一個 revision 建出來的東西好追蹤比較重要
同一個 team 的開發者,不用多認識其他 tool 就能建出一樣的結果
這樣也同時能減少 {組態設定} 管理不當的意外。
因為二組 repo 可能會不好對上,
不管是 cfg 的 revision 沒跟上,或是 project 的 revison 沒跟上,
都可能有意外發生,或是 deploy process 失敗了,因為要 deploy 二次,
一次是 project 本身,一次是 {組態設定} 本身。
由於 DevOps tool 自己另一組 VCS repo 管理,
若是硬分割至各專案內,就變得難以看清楚
Infrastructure as Code 的全貌,除非剛好它們有機會共用一個 repo
且不會意外形成 duplicated code 那會是個較佳的型式。
(或是區分開來系統層面的 Automation 與專案元件的區分開來也是個辦法)
另外,不包進去,也不另外透過 deploy 程序來更新組態設定的話,
第 3 條路就是 service discovery 的方法了
(應該是書上第 2 部,講組態管理有提到這概念),
通常就是跑個 agent 讓你問現在的設定。
像 EC2 在機器內部提供的 metadata
https://amzn.to/2cLJW4a
現在有 https://www.consul.io/ 這類的工具能做到
(但以你的情況需求 "portable" 大概不會採用 :P)
用這東西確實能讓你把組態抽出來,不過實際是否真的需要那麼「彈性」
是存疑的,過度的彈性與靈活,會造成「設置困難」,
每個選項間可能又有相依關係,這也許會搞死新進的開發者,
或是終於使用者根本無法利用這些「彈性」的設計。
: 目前看起來1跟2是Ruby派,3跟4是Python派,小弟是純Java派,所以沒特別偏好。
: 但如果可以的話是傾向Py派,但其實各款的script好像也不一定是用Py或Ruby寫..
: 主要使用情境如下:
: 1. Standalone & portable
: 希望是可以單純locally的去run,run這一台機器本身的deployment。
: 貌似這類軟體都是為了cloud management,所以都有server/client的架構。
: 目前只先略略survey了Chef,應該是有單純Chef-client跑CookBook的功能。
: SaltStack有看到masterless跟standalone的documentation的樣子。
: 另外還希望這是可以portable的,也就是我可以調整好script後打包起來,
: 然後交給客戶在on-premises的情境下,double click去完成deployment。
要讓客戶去 double-click 不覺得跟標題的「自動化」有點違悖嗎 :P
或許我該先忘記 double-click 或是「自動化」其中一個提前。
假設,我捨棄了「自動化」,讓客戶 double-click 的話,
又能 portable、又不可以另外裝些什麼軟體
那我該做些什麼呢?
弄個 executable JAR 做:
1. 下載最新的 WAR 回來(executable JAR 內知道 revsion => artifact)
2. 開一台 embedded Tomcat 跑這個 WAR (如果要改組態的話,也改吧)
3. 開始做 smoke test 確認重要的功能都可以動 (至少 DB 要連得上)
4. 如果有問題就,send log 回來
5. 如果沒問題就換上新版的至 prod
(這其實沒有像一些不上 store 的 andoird app 給你個 apk
它是讓你下載另一個 apk 用的!?)
如果我捨棄的是 double click。首先,為什麼要捨棄 double click 呢!?
因為客服可能收到了你「最新」的安裝檔,但卻執行了「舊的」安裝檔,
然後再寫信問你為什麼不 work。
其實 double click 不是主因,是人工判斷的品質差異比較大,
有可能他半夜被 call 來換檔(可能是加班,或不同時區),不小心點錯了
也可能是他沒有點錯,但我方給錯了版本。
至少,把品質放在人少的那一方比較好控制,
你可以把那個要 double click 的檔變成 windows service,
定期去查有沒有新的更新,有的話就執行更新程式
(這不就是 windows update 嗎?)
PS. 千萬不要把更新程式與 tomcat 綁在一起
你無法預知,你上新版後 tomcat 是不是會被你弄死
萬一綁在一起了,他們就只好殉情了
(其實 AWS 的 Beanstalk 也是弄個 hostmanager 的 agnet 做這件事啊)
PS. 不管你選擇的是什麼,都得能方便的知道使用者現行的版本
例如在 http response 加上特殊 header 標上各 component 的 revision
: 2. 只單純的deploy一個Java web application到tomcat
: 沒有要做複雜的server setup跟provisioning。想達到的其實只是單純的
: upgrade某個web application而已。所以整個flow有點類似以下這樣
: 已經有一個application跑在tomcat。該application有a.xml跟b.properties檔案
: a.xml的內容會類似如下
: <Property>
: <Name>ServerURL</Name>
: <Value>192.168.1.2</Value>
: </Property>
: b.properties的內容會類似如下
: database.host=192.168.112.25
: database.port=5432
: 有一個新的版本出來了,當然他是一個war檔。war檔內一樣有a.xml跟b.properties
: 只是這時war檔內的這些configure値會是default狀態。例如:
: <Property>
: <Name>ServerURL</Name>
: <Value>localhost</Value>
: </Property>
: database.host=127.0.0.1
: database.port=5432
: 自動化的把war檔解壓,將a.xml跟b.properties內容與正在運行的
: application有不同的地方做更改。然後可能必須在壓回去war包,
: call tomcat的rest API去進行deploy,如此將web app upgrade,
: 又不需要人工去處理這些application properties的設定値。
如果你只是要簡單的換 IP ... 那不如改 local host 對應的設定
C:\Windows\System32\drivers\etc\hosts
: 3. Windows platform
: Tomcat跑在Windows平台上(Win7, Win10, Win Server 2008, 2012 etc..)
: 所以等於是master跟client或者說standalone的運行是在Windows平台上。
: Chef有Windows的msi安裝檔,還沒確定是否可以portable的包起來。
: SaltStack的getting started doc都是Linux版本的範例..
很遺憾的,這些程式最初的開發者都不是 Windows User。
即使用提供,因為開發者人不夠多,用的人也不夠多
待「踩雷」的點應該很多,需要有「愛」才用得下去,
或是加入改善它們的行列吧!
: 4. Free~
: 目前看到Chef, Ansible, SaltStack都有付費版本或者提供SaaS。
: 但應該都有真正的freeware版吧? Ansible看不太出來
: 只有一個Ansible Tower Free trial
: 不知道有沒有大大可以建議一下哪一款比較適合簡單的達到這個的佈署呢?
: 感謝
看來看去,是前一篇大大自己 deploy tool 對你來說最適合。
或是問問其他 windows 深度使用的管理者,看看有沒有好招!?
我們現行的 deploy tool 也跟他相似,不過是仿 AWS Beanstalk
指定 revision 後,deploy 至各機器上
(但沒有做 agent 是 rsync 去遞送 + ssh remote command)
不過隨著系統的環境,與 project 整理的越來越一致,
之後應該會轉移至 ansible 上,透過它 deploy。
--
JCConf 工商服務
https://www.facebook.com/jcconf/posts/974947969317750
JCConf 2016 售票至 10/9 (日) 結束呦 :D
報名網址:https://twjug.kktix.cc/events/jcconf2016-register
議程網址:https://jcconf.tw/2016/
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 211.21.157.224
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1475483798.A.9C0.html
... <看更多>