chef

基于Ansible和Devops的一键测试环境部署实践

十年热恋 提交于 2020-09-30 21:01:52
​转载本文需注明出处:微信公众号EAWorld,违者必究。 随着网络架构的不断升级和业务的复杂化,对产品多环境支持的要求越来越高。产品支持的数据库、应用服务器、中间件、操作系统等的多样化,使测试环境的组合越来越多,导致测试环境的部署难度不断增加。 如何选择一个合适的工具,实现多样化环境部署的同时保证部署操作的易用性。下面分享一下我们基于Ansible和Devops实现的一键式测试环境部署的过程。 Ansible是一款自动化运维工具,基于Python开发,集合了众多运维工具(Saltstack、puppet、chef等)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。Ansible是基于模块工作,具有丰富的内置模块,同时也支持自定义模块开发 1。以下是对Ansible和其他常见运维工具的对比2 : 而ansible在自动化运维过程时具有如下优势: 1.基于模块运行,有丰富的内置模块支持 2. 基于Python开发,方便二次开发 3. 基于SSH 交互,被管机器不要安装 Agent 4. 无Server,在任何安装ansible的机器上执行命令即可 5. 脚本用YAML编写,易读和易维护 正因为ansible操作简单、易上手,功能丰富,已被很多公司纳入使用。 Ansible主要有ad-hoc和playbook两种执行方式,Ansible Ad-hoc是一次性命令

Nginx系列(四)——配置文件自动化管理

最后都变了- 提交于 2020-08-11 02:25:41
Automation 自动化 需要安装Puppet class nginx { package {"nginx": ensure => 'installed',} #确认Nginx已安装 service {"nginx": ensure => 'true', hasrestart => 'true', #确认开机自启 restart => '/etc/init.d/nginx reload', #重启Nginx } file { "nginx.conf": path => '/etc/nginx/nginx.conf', require => Package['nginx'], notify => Service['nginx'], content => template('nginx/templates/nginx.conf.erb'), user=>'root', group=>'root', mode='0644'; } } Chef 安装Chef package 'nginx' do action :install end service 'nginx' do supports :status => true, :restart => true, :reload => true action [ :start, :enable ] end template 'nginx

运维太忙?那是你还没掌握 Ansible !

☆樱花仙子☆ 提交于 2020-08-10 01:59:11
Ansible 初试 实验介绍 随着云技术的日渐成熟以及服务器数量的增多,对于运维的日常管理也就逐渐繁杂,因此越来越多的运维管理就趋向于自动化的方式。所以从本周开始将带着大家认识和学习几个常用的自动化运维的工具。 本节主要讲解的是 Ansible 工具,虽然 Chef、Puppet、SaltStack and Fabric 等等这些都是比较流行的自动化运维管理工具,但是相较于 Ansible 来说要复杂得多,不过每个工具也是各有各的好处,这里我们就先来学习这个比较简单的一款自动化运维工具—— Ansible 。 知识点 Ansible 的简介 Ansible 的安装 Ansible 的配置 ad-hoc 临时命令 Ansible 简介 Ansible 是一款基于 Python 开发,能够实现了批量系统配置、程序部署、运行命令等功能的自动化运维工具。Ansible 主要是基于模块进行工作的,本身没有批量部署的能力,真正实现部署功能的是运行的模块。 结构框架 和 Chef、Puppet 刚好相反,Ansible 使用的是无代理体系结构,这种体系结构可以通过防止节点轮询控制机器来减少网络开销。Ansible 提供的结果框架如下所示: 图片来源: https://geekflare.com/ansible-basics/ Ansible :运行在中央计算机上; Connection

同样是腰间盘,为何程序员如此突出?

别说谁变了你拦得住时间么 提交于 2020-08-07 04:45:03
Steve Jobs 有一句名言:「我们国家的每个人都应该会编程,它能教会你如何思考」。 这里并非让大家都去从事程序员的工作,而是像程序员一样去思考问题,解决问题。在美国、意大利等西方国家,编程已经成为中小学甚至是幼儿园课程的一部分。2014 年,奥巴马曾亲自上阵,编写了一段代码,鼓励民众学习编程,培养编程思维。 很多人,包括一些初级程序员,在面对复杂问题时。习惯从历史经验出发,随机尝试各种解决方案,成功与否就看经验够不够了。他们很少从框架性思维出发,寻求解决问题的方法。 这会导致解决问题的过程耗时耗力,最终效果还不见得好。 HackerRank 在 2018 年开发人员技能报告中就提到,在不强调技术重要性的前提下,拥有框架思维或分解大型复杂问题的能力,比熟练掌握编程语言更重要。 很多有经验或者擅长解决问题的程序员,优势就在于这种框架思维,也可以理解为程序员思维或者编程思维,这种思维除了编程时适用,也可以帮助所有人解决中的问题。 什么是程序员思维? Tim Ferriss 的著作《 The 4-Hour Chef 》(译作:每周四小时下厨房),或许能给你一些启示,不过这本书目前似乎还没有中文翻译版。这位作者是著名的效率学家,TED 上也有非常经典的演讲,他还写了《每周健身四小时》和《每周工作四小时》,指导人们高效生活。 另外 V·Anton Spraul 的《像程序员一样思考》

逆向工程开源工具-PE Tree

本秂侑毒 提交于 2020-08-05 07:54:52
科技媒体ZDNET报道, 黑莓 在Black Hat USA 2020 安全 大会上开源了逆向工程工具PE Tree。遵守Apache开源协议。基于Python编写,可运行于Linux,Mac和Windows。PE Tree可用于逆向工程和分析Portable Executable(PE)文件的内部结构。 黑莓 表示,逆向工程是一个极端的耗费时间和劳动密集过程,需要数小时的反汇编,有时候还需要重建软件程序。黑莓技术团队开源PE Tree将有益于恶意软件逆向工程社区。 特性: 以易于浏览的树状视图列出PE文件内容; 与IDA Pro反编译器集成(轻松导航PE结构,转储内存中的PE文件,执行导入重建); VirusTotal搜索集成; 可以将数据发送到Cyber​​Chef; 可以作为独立应用程序或IDAPython插件运行。 报道原文:https://www.zdnet.com/article/blackberry-releases-new-security-tool-for-reverse-engineering-pe-files/ 相关文件下载地址 本地直接下载 来源: oschina 链接: https://my.oschina.net/u/4254929/blog/4470049

file decompression error during kafka installation with chef

笑着哭i 提交于 2020-06-23 14:49:48
问题 I'm trying to install kafka using the supermarket recipe as my starting point. But when I run kitchen converge it gives me the following error. It should be something inherent in the archive. What do you think?platform kitchen ubuntu 14.04 tar version 1.27.1 execute 'kafka-install' do cwd node['kafka']['install_dir'] command <<-EOH wget http://www-us.apache.org/dist/kafka/2.5.0/kafka_2.12-2.5.0.tgz && \ tar -zxf kafka_2.12-2.5.0.tgz && \ useradd -M #{node['kafka']['user']} && \ chown #{node[

Where do I have to specify the run-list in local-mode?

你。 提交于 2020-06-01 06:43:47
问题 How can in configure the chef-client to know the run_list to run every 15min? I start the chef-client run with "chef-client --local-mode -j run_list.json" which works as expected. To provide a chef run every 15min, I add the chef client cookbook as dependency. In the log file I can see that the chef run starts (in local mode) every 15min, but the run_list is empty for every further run. Where do I have to add the information that the second chef-run should use the same run-list as in the

chef policy group setting: Policyfile does not support setting the run_list in json data

ε祈祈猫儿з 提交于 2020-06-01 05:09:26
问题 I have followed the steps in below article I am getting following error Unexpected Error: ----------------- Chef::PolicyBuilder::Policyfile::UnsupportedFeature: Policyfile does not support setting the run_list in json data. here are the steps I followed include_recipe 'basecookbook::default' directory 'C:/ProgramData/ChefFiles' do inherits true action :create end Updated cooksbooks metadata to specify dependency on base The policy file is as follows cookbooks/test01/Policyfile.rb Changed the

Unable to find Cookbooks in local-mode with chef-client

痞子三分冷 提交于 2020-05-27 05:26:39
问题 I am new to Chef and following a tutorial which is providing information on running a default recipe inside a cookbook or a specific recipe. The tree output for my Cookbook is as follows: pwd /opt/dk-chef/python_code/Chef [root@LUMOS Chef]# tree Cookbooks/BasicLinux/ Cookbooks/BasicLinux/ ├── Berksfile ├── chefignore ├── LICENSE ├── metadata.rb ├── nodes │ └── LUMOS.RMT.com.json ├── README.md ├── recipes │ ├── default.rb │ ├── nodes │ │ └── LUMOS.RMT.com.json │ └── setup.rb ├── spec │ ├──

Devops工程师需要具备的10项技能

萝らか妹 提交于 2020-04-28 12:23:54
Facebook、Amazon和Microsoft等公司正在大量使用DevOps技术来确保软件的一致交付,DevOps的的工作机会和所需要的技能集也是越来越多。 在这里,我们将讨论Devops工程师需要具备的10项技能,以享受成功的职业生涯。 1. 软技能和沟通技巧 正如下面所讨论的,DevOps是开发和运营的结合。因此,DevOps工作需要出色的沟通能力。此外,你不能忘记同理心。记住,你的同理心会显示你的心态。争论和冲突在团队中很常见,这个时候就需要同理心,能站在对方的角度去理解,和和谐合作然后快速地解决问题。 当谈到DevOps技能时,我们不能忘记诚信。DevOps工程师的职责是将来自不同It部门的人员聚集在一起。所以,在做这件事的时候,你必须保持最高程度的诚实。 2. 对不同的源代码控制系统有足够的了解 详细地说,这样的系统是导致多个开发人员之间完美协作的主要DevOps工具。由于DevOps汇集了来自各个部门的专家,所以他们需要了解源代码控制系统。系统跟踪不同应用程序中的更改。此外,它还维护应用程序的多个版本。 3.持续集成技能 2019版DevOps的关键技能之一是持续集成,也可以说是CI。它是构建pipeline的重要部分。DevOps为运营和开发团队使用一个单一的系统。因此,持续集成所做的就是将开发人员的代码与master合并在一起。有了这样的技巧