一步一步学会puppet(四)--master/agent模型

简介:

这篇博文主要介绍puppet在实际生产环境下的master/agent模型的使用;

===================================================================

1 原理介绍

   1.1 原理图

   1.2 详细说明

2 配置实例

   2.0 准备

   2.1 master配置

   2.2 agent配置

   2.3 master签署证书

   2.4 agent一次完整的同步案例

===================================================================


1 原理介绍

1.1 原理图

wKiom1N4cNDQ8bmfAAPJxggyXqc425.jpg

1.2 详细说明

  • puppet agent通常运行为一个服务进程,其默认每隔半个小时向master发出一次连接请求;

  • puppet agent并不直接访问任何manifest,而是向master请求一个预编译的catalog文件;

  • puppet master会为发出请求的agent读取一个名为“site manifest”的特殊manifest文件,并基于此编译一个catalog后发送给agent;

  • puppet agent在获取到catalog后应用于本地;

  • 因此,基于此种工作架构,仅在master端提供一个或少量几个manifest即可实现管理大量的节点,并能提供更加安全的工作过程;


2 配置实例

2.0 准备

puppet利用主机名识别不同的节点,故需保证master和agent的主机名都可解析,生产环境下使用DNS解析,测试环境使用hosts文件即可;

2.1 master配置

1
2
3
4
5
6
7
8
# 安装puppet-server程序包
yum localinstall facter-1.7.3-1.el6.x86_64.rpm puppet-2.7.25-1.el6.noarch.rpm puppet-server-2.7.25-1.el6.noarch.rpm
# 生成master配置文件:
puppet master --genconfig >>  /etc/puppet/puppet .conf
# 启动puppetmaster服务
puppetmasterd - v  -d --no-daemonize  # 前台测试启动
service puppetmaster start  # 正式启动服务
# 服务验证:ss -antupl |grep 8140

2.2 agent配置

1
2
3
4
5
6
7
8
9
# 安装puppet程序包
yum localinstall facter-1.7.3-1.el6.x86_64.rpm puppet-2.7.25-1.el6.noarch.rpm
# 编辑配置文件
vi  /ect/puppet/puppet .conf  # 在[agent]段添加server=Puppetmaster_Hostname,如
     server = master.lamp.com
# 启动puppet服务
puppet agent --server mem.lamp.com - v  -d --noop -- test  # 测试启动,不实际应用配置
service puppet start  # 正式启动agent服务
chkconfig puppet on  # 配置开启启动

2.3 master签署证书

1
2
3
4
5
6
7
8
# 手动签发:
puppet cert list  # 显示待签发节点的证书请求
puppet cert sign Node_Name  # 签署某一agent的请求
puppet cert sign --all  # 一次性签署全部请求
# 自动签发:
cat  /ect/puppet/autosign .conf << EOF  *.lamp.com  EOF   # 会对所有来自lamp.com的主机请求都自动签发
# 注:master端的任何修改,都要重新装载puppetmaster服务,即执行如下命令即可
service puppetmaster reload

2.4 agent一次完整的同步案例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
[root@nginx1 ~] # puppet agent -v -t
info: Caching catalog  for  nginx1.lamp.com
info: Applying configuration version  '1400402077'
notice:  /Stage [main] /Nginx ::Package::Redhat /Package [nginx] /ensure : created
notice:  /Stage [main] /Nginx ::Config /File [ /etc/nginx/nginx .conf] /content :
---  /etc/nginx/nginx .conf   2013-04-27 04:36:51.000000000 +0800
+++  /tmp/puppet-file20140518-5216-1feu0op-0  2014-05-18 16:34:51.566999838 +0800
@@ -1,42 +1,31 @@
- # For more information on configuration, see:
- #   * Official English Documentation: http://nginx.org/en/docs/
- #   * Official Russian Documentation: http://nginx.org/ru/docs/
-
-user              nginx;
-worker_processes  1;
+user nginx;
+worker_processes 1;
  error_log   /var/log/nginx/error .log;
- #error_log  /var/log/nginx/error.log  notice;
- #error_log  /var/log/nginx/error.log  info;
-
  pid         /var/run/nginx .pid;
-
  events {
-    worker_connections  1024;
+  worker_connections 1024;
+
  }
-
  http {
-    include        /etc/nginx/mime .types;
-    default_type  application /octet-stream ;
+  include        /etc/nginx/mime .types;
+  default_type  application /octet-stream ;
+
+  access_log   /var/log/nginx/access .log;
+
+  sendfile    on;
+
+
+
+  keepalive_timeout  65;
+  tcp_nodelay        on;
-    log_format  main   '$remote_addr - $remote_user [$time_local] "$request" '
-                       '$status $body_bytes_sent "$http_referer" '
-                       '"$http_user_agent" "$http_x_forwarded_for"' ;
-
-    access_log   /var/log/nginx/access .log  main;
-
-    sendfile        on;
-     #tcp_nopush     on;
-
-     #keepalive_timeout  0;
-    keepalive_timeout  65;
-
-     #gzip  on;
-
-     # Load config files from the /etc/nginx/conf.d directory
-     # The default server is in conf.d/default.conf
-    include  /etc/nginx/conf .d/*.conf;
+
+   gzip          on;
+  gzip_disable  "MSIE [1-6]\.(?!.*SV1)" ;
+
+  include  /etc/nginx/conf .d/*.conf;
  }
info: FileBucket got a duplicate  file  {md5}d9dfc198c249bb4ac341198a752b9458
info:  /Stage [main] /Nginx ::Config /File [ /etc/nginx/nginx .conf]: Filebucketed  /etc/nginx/nginx .conf to puppet with  sum  d9dfc198c249bb4ac341198a752b9458
notice:  /Stage [main] /Nginx ::Config /File [ /etc/nginx/nginx .conf] /content : content changed  '{md5}d9dfc198c249bb4ac341198a752b9458'  to  '{md5}df69537f815f9aacfe6dd6a439a7ba06'
notice:  /Stage [main] /Nginx ::Config /File [ /etc/nginx/conf .d /proxy .conf] /ensure : defined content as  '{md5}530e67c1708924887565ce91f2c5b9f8'
info: Class[Nginx::Config]: Scheduling refresh of Class[Nginx::Service]
info: Class[Nginx::Service]: Scheduling refresh of Service[nginx]
info: Class[Nginx::Service]: Scheduling refresh of Exec[rebuild-nginx-vhosts]
notice:  /Stage [main] /Nginx ::Service /Exec [rebuild-nginx-vhosts]: Triggered  'refresh'  from 1 events
info:  /Stage [main] /Nginx ::Service /Exec [rebuild-nginx-vhosts]: Scheduling refresh of Service[nginx]
notice:  /Stage [main] /Nginx ::Service /Service [nginx] /ensure : ensure changed  'stopped'  to  'running'
notice:  /Stage [main] /Nginx ::Service /Service [nginx]: Triggered  'refresh'  from 2 events
notice: Finished catalog run  in  5.06 seconds
# 特别注意notice的输出内容,分别完成了nginx程序的安装,配置文件的生成,服务的启动等操作;









本文转自 xxrenzhe11 51CTO博客,原文链接:http://blog.51cto.com/xxrenzhe/1413189,如需转载请自行联系原作者
目录
相关文章
|
22天前
|
人工智能 API 决策智能
Modelscope结合α-UMi:基于Modelscope的多模型协作Agent
基于单个开源小模型的工具调用Agent,由于模型容量和预训练能力获取的限制,无法在推理和规划、工具调用、回复生成等任务上同时获得比肩大模型等性能。
|
22天前
|
机器学习/深度学习 存储 人工智能
TableAgent数据分析智能体——数据分析师的大模型
TableAgent数据分析智能体——数据分析师的大模型
|
22天前
|
人工智能 数据安全/隐私保护
AI Agent是大模型落地业务场景的主流形式
【1月更文挑战第5天】AI Agent是大模型落地业务场景的主流形式
242 2
AI Agent是大模型落地业务场景的主流形式
|
8天前
|
物联网 测试技术 API
LLM 大模型学习必知必会系列(九):Agent微调最佳实践,用消费级显卡训练属于自己的Agent!
LLM 大模型学习必知必会系列(九):Agent微调最佳实践,用消费级显卡训练属于自己的Agent!
LLM 大模型学习必知必会系列(九):Agent微调最佳实践,用消费级显卡训练属于自己的Agent!
|
6天前
|
机器学习/深度学习 人工智能 测试技术
世界模型也扩散!训练出的智能体竟然不错
【5月更文挑战第30天】研究人员提出了一种名为DIAMOND的新方法,将扩散模型应用于世界模型以增强强化学习智能体的训练。DIAMOND在Atari 100k基准测试中实现了1.46的人类标准化得分,刷新了完全在世界模型中训练的智能体的记录。通过生成视觉细节,智能体在多个游戏中超越人类玩家,特别是在需要精细细节识别的游戏上。不过,DIAMOND在连续控制环境和长期记忆方面的应用仍需改进。这项工作开源了代码和模型,促进了未来相关研究。论文链接:[https://arxiv.org/abs/2405.12399](https://arxiv.org/abs/2405.12399)
30 2
|
7天前
|
物联网 PyTorch 测试技术
LLM 大模型学习必知必会系列(十):基于AgentFabric实现交互式智能体应用,Agent实战
LLM 大模型学习必知必会系列(十):基于AgentFabric实现交互式智能体应用,Agent实战
LLM 大模型学习必知必会系列(十):基于AgentFabric实现交互式智能体应用,Agent实战
|
18天前
|
存储 人工智能 API
文心大模型的智能体(Agent)平台
文心智能体平台是百度推出的大模型开发平台,支持各类开发者创建个性化智能体(Agent)和AI插件。平台提供零代码、低代码工具,让不同能力的开发者能轻松构建智能体,同时具备大模型的强大能力,如内容创作和多模态生成。智能体具备主动思考、理解和记忆功能,可在多个场景下与用户互动。AI插件则扩展了大模型的应用,包括信息检索、多模态交互和服务自动化等。平台还提供流量分发,助力商业闭环。了解更多:[文心智能体平台介绍](https://chatgpt.ciilii.com/show/news-715.html)。
184 0
|
22天前
|
开发框架 数据可视化 Windows
如何提升大模型Agent的能力 ——LLM Agent框架 Modelscope-Agent 实战
本文介绍Agent到底是什么 ,如何进行优化,以及如何使用Agen框架。
|
22天前
|
测试技术 决策智能
专业智能体指导让小模型学会数学推理!微调Mistral-7B实现86.81%准确率
【5月更文挑战第13天】Orca-Math研究展示如何用小模型解决小学数学题,通过70亿参数的SLM在GSM8K基准测试上达到86.81%准确率。采用合成数据集和迭代学习技术,包括多智能体协作创建问题集及“偏好学习”优化解决方案。虽优于其他大、小模型,但可能不适用于复杂数学问题,且依赖高质量合成数据集的创建。[论文链接](https://arxiv.org/abs/2402.14830)
30 4
|
22天前
|
自然语言处理 前端开发 Swift
Llama3 中文通用Agent微调模型来啦!(附手把手微调实战教程)
Llama3模型在4月18日公布后,国内开发者对Llama3模型进行了很多训练和适配,除了中文纯文本模型外,多模态版本也陆续在发布中。

推荐镜像

更多