自动化配置服务器 — 配置管理系统( Configuration Management System )

   优德娱乐

在放映 Drupal 从开端到完毕这尾部迅速移动,依我看咱们的问题是,这不仅仅是为了做不常见的。,怎样去做,运用什么方法,即将到来的跑过是翻转的。,可以理想化的事物吗?,自发地化,合作化,这些都很重要。。据我看来的第一件事是,你能找到一任一某一自发地化的方法吗?,走在一任一某一开展局部的配置 Drupal 的典礼,正好 Drupal 使勃起好它,甚至可以自发地使勃起某个公共模块。。

我常常告知大伙儿,你必需在局部的电脑上,用虚拟机人工动手术体系打开典礼,运用虚拟机 Vagrant 去管理。依 Web 打开典礼的得知手册,您理所自然能手工体系即将到来的典礼。。我推荐信亲身来结构典礼。,是因,你需求知情他们在做什么,每一步的意义是什么?,熟识在命令行交流下使过于劳累。占有这些都被忧虑。 ,咱们要以自发地的方法做这件事。,反复使过于劳累哪儿的话美丽。。

学过 Shell 的女朋友,这将引起一任一某一自发地化典礼,这是一任一某一,写某个 Shell 编码,与让服侍进行它。一任一某一运用过Ali云的女朋友,这也一种影象。,它们为一任一某一关头使勃起典礼给予了一任一某一小器。,那理所自然是用的 Shell 写的。Shell 自然,晴天。,但朝一个方向的一般用户,这不太亲密的朋友。,你能够必需先得知报告。一任一某一复杂的 Shell 顺序,也可以是一任一某一列表,咱们通常的把持服侍进行的命令,把它们放跟在前面 Shell 在文档,与去进行它。

持续找寻清算条件,理所自然就会朝某一方向前进配置管理系统(Configuration Management 系统),后头短 CM。一般而言,它是,你在本身的电脑上,依 CM 给予方法,创立某个本子,即描述方法配置典礼的整个跑过。。这些本子就像本子。,把它搀扶服侍,服侍需求遵照本子。,运送差别的伙伴(包管理器),用户,公文 … ),写完你写的戏剧文学。

可以选择的 CM 有很多器,Chef,Puppet,Salt,Ansible … 我有一任一某一执业。,即使一任一某一器有多种选择,我不知情是什么对的。,我会免职网对照一下这些器。,他们写的公文。看一眼网站的设计,或许你能臆测,Chef 跟 Puppet 那必然是旧器了。,从他们的网站设计的作风可以主教教区。。Salt 跟 Ansible 官方网站更更新的行为或事例,因而理所自然是新的。从预感,据我看来我理所自然选择 Salt 或许 Ansible,据我看来它们理所自然是我喜爱的器。。但我往昔耳闻了 Chef 一任一某一大的名字,因而,先试试看。,未能成。与再來一遍 Ansible ,据我看来这执意据我看来要的 。

Chef

这些 CM ,有些会必需品你把戏剧文学上传票一任一某一中央的配置服侍,服侍是什么典型的服侍来进行本子?,异样, 修正本子然后,配置服侍也将收到,与分派某个服侍来进行修正后的本子。。Chef 是运用这种方法吗?,它的本子高气压 食谱(食谱),戏剧文学切中要害差别为设计情节叫做菜单(处方一览表)。,这些 Recipes 这是配置服侍的某个行走。。美丽的图片,因 Chef 这是厨师的意义。。

Chef 两者都不需求中央的服侍来配置服侍。,叫 Chef Solo ,这是写在本子的。,把它正好放在服侍上进行。轻蔑的拒绝或不承认怎样样,Chef 您需求将其使勃起到您要配置的服侍上。 Chef 的客户端软件。Chef 是 Ruby 写的,因而你必需使勃起它 Ruby,与用 gem 去使勃起 Chef。

容器

看一任一某一复杂的 Chef 的撮药,在服侍上创立一任一某一公文,在文档的实质是一句祝贺。下令中其次的实质 的在文档:

file # { env [故乡] } / do
  action :create
  content "您好 { env [用户]!"
end

学过 Ruby 报告的一任一某一女朋友知情这点。,这是一件事。 Ruby 编码。最开端的 file ,在 Chef 它高气压资源。,file 它是与公文互插的资源。,{ env [故乡]的向后 ,表现提出登录用户的主目录。, 要处置的公文的著名的。。详细事实要做,是在 do 与 end 当中,action :create ,说我要创立一任一某一公文,在文档的实质执意在 content 前面的东西。

进行它:

chef-apply 

回转:

Recipe: (chef-apply cookbook)::(chef-apply 撮药)
  * file[/home/vagrant/] action create
    - create new file /home/vagrant/
    - update content in file /home/vagrant/ from none to b4b23f
    --- /home/vagrant/	2015-02-27 02:20:26.630982470 +0000
    +++ /home/vagrant/.20150227-2366-1hx9lnp	2015-02-27 02:20:26.630982470 +0000
    @@ -1 +1,2 @@
    +您好 vagrant!
    - restore selinux security context

水果:

在提出登录的用户的主目录中,将有一任一某一名为 ,因我眼前登录到系统的用户的名字是 vagrant,因而在文档的实质是:“ 您好 vagrant! ” 。

设法 Chef 的 Recipe,拿 … 来说,咱们将使勃起一任一某一名为 Vim ,即将到来的处方一览表瞧像这么大的:

package "vim" do 
  action :install
  package_name "vim"
end

下面的 package ,它是您要运用的资源的著名的。,package 此资源与包装袋互插。,action 是 :install,这目的咱们要使勃起一任一某一包装袋。,要使勃起的包的著名的是 vim 。即将到来的 package 它相反地像摘要层。,Chef 本动手术动手术系统的典型,运用差别的包管理器来使勃起 vim 即将到来的包,拿 … 来说,在 Ubuntu 上,会用 apt,在 CentOS 上会用 yum 。

将前述的编码放入命令中 的在文档,与进行:

sudo chef-apply 

回转:

Recipe: (chef-apply cookbook)::(chef-apply 撮药)
  * yum_package[vim] action install

    - install version 7.4.160-1.el7 of package vim-enhanced

Ansible

Ansible 这是我选择运用的 CM,这是一任一某一弄得尽是煤烟。,那是,你不需求使勃起在服侍上要配置 Ansible 的客户端软件,这是用 Python 写信报告,因而它只需求使勃起在你的服侍上。 Python  就行了。你写的本子在 Ansible 这时叫 Playbooks,与用 SSH  的方法,将本子推送到服侍并进行。Ansible 你所做的执意把你写的本子替换成 Python 编码,与在服侍上做的是 Python 编码。朝一个方向的一般用户,咱们不需求知情 Python,你可以用一种不常见的亲密的朋友的方法。 YAML 以体式编辑本子。

在本子,可以创立许多的使过于劳累。,拿 … 来说,据我看来使勃起它。 nginx ,即将到来的使过于劳累瞧像这么大的:

    - name: 使勃起 nginx
      yum: name=nginx

不常见的简约的!name 前面的使过于劳累的著名的,这时执意 “使勃起 nginx”。秒行,运用一任一某一 yum,这在 Ansible 它高气压模块。,差别的模块可以做差别的事实。,yum 即将到来的模块的效能是运用 yum 使勃起任命包的包管理器,这是要使勃起的包装袋。 nginx 。

即使你想在 Playbook 外面,添加一任一某一使过于劳累,去启动 nginx 保养,让保养自发地运转,即将到来的使过于劳累可以:

    - name: 启动 nginx
      service: name=nginx state=started enabled=yes

使过于劳累的著名的称为 “启动 nginx”,即将到来的使过于劳累是用。 service 即将到来的模块,它的模块可以启动。,中止,或启用,禁用系统保养。name=nginx,这目的咱们要处置它。 nginx 这项保养, state=started,它目的启动保养。,enabled=yes,它目的开端自发地动手术。 nginx 这项保养。

镜像和配置公文

Ali云给予镜像推销,不常见的方便的。,你可以依托你的需求。,为服侍选择差别的镜像,服侍事例被创立后,你已经受胎一任一某一可以运转的敷典礼。。我不知情这些镜子是怎样发生的。,它是人工动手术配置。,与把它装进镜子里?即使是这么大的的话,有个大问题。,拿 … 来说,多少提出图像。,即使我有 100 平台服侍,你是怎样晋级的?依我看胜过的方法是运用某个配置。,将配置作曲编码,与让服侍进行它。

不管多少的运用它 CM 器,率先要以假设的的方法编辑某个配置。,与将它带到服侍并进行它。这么大的做的获利是,可以将这些配置编码放在版本把持中。,你可以批量服侍把持服侍。大概的的 CM 占有供养你的服侍组,你可以一言可尽地管理它们。,拿 … 来说,变换占有 Web Server 的 php 的版本,或假设的的设置等。。

配置管理系统ChefAnsible

没有评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注