自动化运维三贱客之 Puppet 安装

Puppet 简介

puppet是一种Linux、Unix、windows平台的集中配置管理系统,使用自有的puppet描述语言,可管理配置文件、用户、cron任务、软件包、系统服务等。puppet把这些系统实体称之为资源,puppet的设计目标是简化对这些资源的管理以及妥善处理资源间的依赖关系。

本案环境

主机名 操作系统 IP地址 主要软件
NTP server CentOS 7.3 192.168.217.137 NTP
puppet master CentOS 7.3 192.168.217.138 ntpdate puppet-server
puppet client1 CentOS 7.3 192.168.217.139 ntpdate puppet
puppet client2 CentOS 7.3 192.168.217.140 ntpdate puppet

部署 Puppet

1.所有服务器修改主机名 :

hostnamectl set-hostname master.test.cn  #修改主机名
bash     #立即生效

2.建立解析(若机器太多,可以通过搭建 DNS,则不用在每台机器上设置这个) :

vim /etc/hosts

192.168.217.138 master.test.cn
192.168.217.139 client1.test.cn
192.168.217.140 client2.test.cn 

3.关闭防火墙 :

systemctl stop firewalld.service
setenforce 0

配置 NTP 服务

1.安装 NTP 服务 :

yum install ntp -y

2.修改 NTP 配置文件 :

vim /etc/ntp.conf     #添加  

server 127.127.217.0
fudge 127.127.217.0 stratum 8   
systemctl start ntpd.service  #开启服务

配置 puppet master

1.安装 ntp 客户端和时间同步 :

yum install ntpdate -y     #安装 ntp 客户端

systemctl start ntpdate.service   #开启服务

ntpdate 192.168.217.137    #同步时间

2.安装epel源及服务 :

yum install epel-release -y     #安装epel源 

yum install puppet-server -y    #安装服务

systemctl start puppetmaster.service     #开启服务
systemctl enable puppetmaster.service    #开机自启动

配置 puppet client

1.安装 ntp 客户端和时间同步 :

yum install ntpdate -y     #安装 ntp 客户端

systemctl start ntpdate.service   #开启服务

ntpdate 192.168.217.137    #同步时间

2.安装epel源及服务 :

yum install epel-release -y     #安装epel源 

yum install puppet  -y    #安装服务

3.编辑 client 配置文件 :

vim /etc/puppet/puppet.conf  #添加

[mail]
server=master.test.cn    #指向 master 地址   

4.申请注册 :

puppet agent --server=master.test.cn --no-daemonize --verbose    #申请注册
Info: Creating a new SSL key for client1.test.cn
Info: Caching certificate for ca
Info: csr_attributes file loading from /etc/puppet/csr_attributes.yaml
Info: Creating a new SSL certificate request for client1.test.cn
Info: Certificate Request fingerprint (SHA256): 1A:4C:EC:C1:61:2B:EB:22:BF:CF:93:F3:DD:37:06:00:2D:35:59:09:A4:57:7C:5D:F0:94:81:44:48:12:0C:FF
Info: Caching certificate for ca
#等一会就好,可以使用ctrl+c组合键结束。

5.返回 master 端 :

[[email protected] ~]# puppet cert --list    #查看申请注册的客户端
  "client1.test.cn" (SHA256) 1A:4C:EC:C1:61:2B:EB:22:BF:CF:93:F3:DD:37:06:00:2D:35:59:09:A4:57:7C:5D:F0:94:81:44:48:12:0C:FF
  "client2.test.cn" (SHA256) 08:A0:AB:06:18:A5:2C:89:51:0D:CB:53:F4:65:6D:09:20:9E:B3:B3:35:74:F0:55:40:DD:B6:EF:B1:D4:74:E7
puppet cert sign client1.test.cn  #对某一台客户端注册

puppet cert sign --all    #对所有客户端注册

6.查看已经注册的客户端 :

[[email protected] ~]# ll /var/lib/puppet/ssl/ca/signed/    #通过目录查看注册客户端
总用量 12
-rw-r--r--. 1 puppet puppet 1956 8月   4 16:51 client1.test.cn.pem
-rw-r--r--. 1 puppet puppet 1956 8月   4 16:52 client2.test.cn.pem
-rw-r--r--. 1 puppet puppet 2025 8月   4 16:47 master.test.cn.pem

原文地址:http://blog.51cto.com/13640803/2154720

时间: 2024-10-07 23:41:26

自动化运维三贱客之 Puppet 安装的相关文章

自动化运维三贱客之 SaltStack 安装

SaltStack 简介 SaltStack是一个服务器基础架构集中化管理平台,具备配置管理.远程执行.监控等功能,基于Python语言实现,结合轻量级消息队列(ZeroMQ)与Python第三方模块(Pyzmq.PyCrypto.Pyjinjia2.python-msgpack和PyYAML等)构建. 通过部署SaltStack,我们可以在成千万台服务器上做到批量执行命令,根据不同业务进行配置集中化管理.分发文件.采集服务器数据.操作系统基础及软件包管理等,SaltStack是运维人员提高工作

Ansible自动化运维(三)

(2)配置和使用ansible #copy复制文件到远程主机(选项说明择自网络) backup:在覆盖之前,将源文件备份,备份文件包含时间信息.有两个选项:yes|no content:用于替代"src",可以直接设定指定文件的值 dest:必选项.要将源文件复制到的远程主机的绝对路径,如果源文件是一个目录,那么该路径也必须是个目录 directory_mode:递归设定目录的权限,默认为系统默认权限 force:如果目标主机包含该文件,但内容不同,如果设置为yes,则强制覆盖:如果为

linux云自动化运维基础知识13(软件安装)

####1.软件名称识别####[abrt-addon-ccpp]-[2.1.11-19].[el7].[x86_64].rpm    ##rpm结尾的适用与redhat操作系统       ||         ||         ||       ||    软件名称       软件版本 软件适用系统 64位 ####2.如何安装软件####1.rpmrpm    -ivh    name.rpm    ##安装 ,-v显示过程,-h指定加密方式为hash    -e    name  

自动化运维工具-Ansible基础

目录 自动化运维工具-Ansible基础 自动化运维的含义 Ansible 基础及安装 Ansible的架构 Ansible的执行流程 ansible配置文件 ansible Inventory(主机清单文件) Ansible ad-hoc ansible常用模块 实战 自动化运维工具-Ansible基础 自动化运维的含义 1.手动运维时代 2.自动化运维时代 3.自动化运维工具给运维带来的好处 Ansible 基础及安装 1.什么是Ansible Ansible是一个自动化统一配置管理工具 2

自动化运维之 Ansible——安装配置

Ansible相对于其他自动化运维工具(saltstack.puppet)的优势: Ansible是一款轻量级框架,基于各个模块实现各种功能,模块可根据需要自行开发 agentless 无需安装agent,可根据具体情况建立一台操作机 支持playbook剧本 python语言开发,做运维的都比较容易接受的语言 其他等等,一百度一大堆,自行百度吧~ 环境说明: 系统环境centos6.8 操作机 192.168.1.121 客户机 192.168.1.122 基本安装 安装gcc,用于编译pyt

自动化运维 Shell

下面是我多年整理并使用多少的Shell 分享给大家.说起自动化运维很多人会谈到 puppet, ansible,saltstack 这些工具我都使用了,最终都放弃了.这些工具前期配置太耗时间,扩展也不方便,适合傻瓜化运维,对于有15年软件开发经验的我更喜欢,自由,随心所欲.最终我选择了自行维护 shell , 将shell 模块化,根据需要组合. github 地址 :  https://github.com/oscm/shell 下面举例,安装一个web 服务器. curl -s https:

?自动化运维工具介绍(第一章)

自动化运维工具介绍 1.Puppet优点:老牌经典自动化配置软件.应用广泛.功能强大 缺点:不能批处理,使用Ruby和DSL语言开发,没有相关技术栈的公司维护和二次开发起来比较很难,门槛比较高:缺少错误检查和报告:最致命的是Puppet的执行是无序执行,对于一些配置或者部署有先后顺序的项目比较难以处理 2.Chef优点:功能也比较强大(资料比较少)缺点:官方文档说明比较模糊浅显:执行并非push实时执行,而是client端定时获取server端数据 3.Ansible优点:社区年轻有活力,pla

MySQL数据库性能优化及自动化运维实践教程!DBA日常工作

MySQL数据库性能优化及自动化运维实践教程!本文作者将站在更加全面的角度分享他在这一年多 DBA 工作中的经验,希望可以给大家带来启发和帮助. DBA 的日常工作 我觉得 DBA 真的很忙,我们来看看 DBA 的具体工作:备份和恢复.监控状态.集群搭建与扩容.数据迁移和高可用. 上面这些是我们 DBA 的功能,了解这些功能以后要对体系结构有更加深入的了解,你不知道怎么处理这些故障和投诉的事情. 所以我们要去了解缓存/线程.SQL 优化.存储引擎.SQL 审计以及锁与实务:体系结构更深一点,就去

【Ansible】自动化运维工具Ansible的安装及使用

常用自动化运维工具: ①CFengine ②Chef ③Puppet ③SaltStack ③Ansible-基于python开发,分布式,无需客户端,轻量级.配置语言采用YAML. Ansible基本架构 Ansible工作原理 Ansible的安装及使用 ①CentOS Linux release 7.3.1611 (Core) 安装: yum install -y ansible [[email protected] ansible]# ls /etc/ansible/ ansible.c