如何在 Ubuntu 上安装配置管理系统 Chef (大厨)
| 2015-08-10 13:53:00 评论: 1
Chef是面对IT专业人员的一款配置管理和自动化工具,它可以配置和管理你的基础设施(设备),无论它在本地还是在云上。它可以用于加速应用部署并协调多个系统管理员和开发人员的工作,这包括可支持大量的客户群的成百上千的服务器和程序。chef最有用的是让基础设施变成代码。一旦你掌握了Chef,你可以获得自动化管理你的云端基础设施或者终端用户的一流的网络IT支持。
下面是我们将要在本篇中要设置和配置Chef的主要组件。
安装Chef的要求和版本
我们将在下面的基础环境下设置Chef配置管理系统。
管理和配置工具:Chef | |
---|---|
基础操作系统 | Ubuntu 14.04.1 LTS (x86_64) |
Chef Server | Version 12.1.0 |
Chef Manage | Version 1.17.0 |
Chef Development Kit | Version 0.6.2 |
内存和CPU | 4 GB , 2.0+2.0 GHz |
Chef服务端的安装和配置
Chef服务端是核心组件,它存储配置以及其他和工作站交互的配置数据。让我们在他们的官网https://www.chef.io下载最新的安装文件。
我使用下面的命令来下载和安装它。
1) 下载Chef服务端
root@ubuntu-14-chef:/tmp# wget https://web-dl.packagecloud.io/chef/stable/packages/ubuntu/trusty/chef-server-core_12.1.0-1_amd64.deb
2) 安装Chef服务端
root@ubuntu-14-chef:/tmp# dpkg -i chef-server-core_12.1.0-1_amd64.deb
3) 重新配置Chef服务端
现在运行下面的命令来启动所有的chef服务端服务,这一步也许会花费一些时间,因为它需要由许多不同一起工作的服务组成一个可正常运作的系统。
root@ubuntu-14-chef:/tmp# chef-server-ctl reconfigure
chef服务端启动命令'chef-server-ctl reconfigure'需要运行两次,这样就会在安装后看到这样的输出。
Chef Client finished, 342/350 resources updated in 113.71139964 seconds
opscode Reconfigured!
4) 重启系统
安装完成后重启系统使系统能最好的工作,不然我们或许会在创建用户的时候看到下面的SSL连接错误。
ERROR: Errno::ECONNRESET: Connection reset by peer - SSL_connect
5) 创建新的管理员
运行下面的命令来创建一个新的管理员账户及其配置。创建过程中,用户的RSA私钥会自动生成,它需要保存到一个安全的地方。--file选项会保存RSA私钥到指定的路径下。
root@ubuntu-14-chef:/tmp# chef-server-ctl user-create kashi kashi kashi [email protected] kashi123 --filename /root/kashi.pem
Chef服务端的管理设置
Chef Manage是一个针对企业级Chef用户的管理控制台,它提供了可视化的web用户界面,可以管理节点、数据包、规则、环境、Cookbook 和基于角色的访问控制(RBAC)。
1) 下载Chef Manage
从官网复制链接并下载chef manage的安装包。
root@ubuntu-14-chef:~# wget https://web-dl.packagecloud.io/chef/stable/packages/ubuntu/trusty/opscode-manage_1.17.0-1_amd64.deb
2) 安装Chef Manage
使用下面的命令在root的家目录下安装它。
root@ubuntu-14-chef:~# chef-server-ctl install opscode-manage --path /root
3) 重启Chef Manage和服务端
安装完成后我们需要运行下面的命令来重启chef manage和服务端。
root@ubuntu-14-chef:~# opscode-manage-ctl reconfigure
root@ubuntu-14-chef:~# chef-server-ctl reconfigure
Chef Manage网页控制台
我们可以使用localhost或它的域名来访问网页控制台,并用已经创建的管理员登录
1) Chef Manage创建新的组织
你或许被要求创建新的组织,或者也可以接受其他组织的邀请。如下所示,使用缩写和全名来创建一个新的组织。
2) 用命令行创建新的组织
我们同样也可以运行下面的命令来创建新的组织。
root@ubuntu-14-chef:~# chef-server-ctl org-create linux Linoxide Linux Org. --association_user kashi --filename linux.pem
设置工作站
我们已经完成安装chef服务端,现在我们可以开始创建任何recipes(基础配置元素)、cookbooks(基础配置集)、attributes(节点属性),以及做一些其他修改。
1) 在Chef服务端上创建新的用户和组织
为了设置工作站,我们需要用命令行创建一个新的用户和组织。
root@ubuntu-14-chef:~# chef-server-ctl user-create bloger Bloger Kashif [email protected] bloger123 --filename bloger.pem
root@ubuntu-14-chef:~# chef-server-ctl org-create blogs Linoxide Blogs Inc. --association_user bloger --filename blogs.pem
2) 下载工作站入门套件
在工作站的网页控制台中下载并保存入门套件,它用于与服务端协同工作
3) 下载套件后,点击"Proceed"
用于工作站的Chef开发套件设置
Chef开发套件是一款包含开发chef所需的所有工具的软件包。它捆绑了由Chef开发的带Chef客户端的工具。
1) 下载 Chef DK
我们可以从它的官网链接中下载开发包,并选择操作系统来下载chef开发包。
复制链接并用wget下载
root@ubuntu-15-WKS:~# wget https://opscode-omnibus-packages.s3.amazonaws.com/ubuntu/12.04/x86_64/chefdk_0.6.2-1_amd64.deb
2) Chef开发套件安装
使用dpkg命令安装开发套件
root@ubuntu-15-WKS:~# dpkg -i chefdk_0.6.2-1_amd64.deb
3) Chef DK 验证
使用下面的命令验证客户端是否已经正确安装。
root@ubuntu-15-WKS:~# chef verify