Saltstack (modules、返回值cache、syndic、salt-ssh、API)

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
简介:

接上篇内容


redhat6.5

server1 172.25.29.1 salt-master  

server2 172.25.29.2 salt-minion  

server3 172.25.29.3 salt-minion  

server4 172.25.29.4 salt-master  syndic

server5 172.25.29.5 salt-minion  


一.Salt modules

1.创建_modules,my_disk.py模块


4c65cf3328d99320417d7932f8bd21f8.png

2.同步模块

c79c426feb7b4293a58a7caf20d73873.png


server5的缓存已经有了my_disk

bad45d53524c92b0f53ee4bf2459e951.png


3.使用disk模块查询server5

487fe5e92a35d3dc476bbe8c6834bbb3.png



二.salt采集数据的返回值保存到数据库里

采集数据的返回值事件在jobs下面,以文件显示


2c7a35c1dd2de6ae43b019234a5ced7c.png


外部缓存


e560efce32f4d35e4d776dc5d07a961c.png


1.安装mysql-python模块


9329e68337e04feb07634fdff63f54ca.png


在minion server5上远程安装mysql-python模块

821d74914eb6a6979a5e4fc5e0b50ba5.png

bdceeffab185d98ed3246a666df1b909.png


2.在master server1上安装mysql-server,初始化设置密码

724320d882a32275463d277e7d6800b7.png

3f05e718dbcb0cabd1e5556b5246f585.png

3.创建salt数据,并导入mysql


1be41db23918ca502d194558fef9b6ea.png

a7987cf37c07c8dbf33a639e8bb89ba2.png

6a6f8347149fc0e62b52ad8bd9ca0786.png


导入出现的错误需要注释数据内容

987634824008a2ccf0b5719f276967f7.png

86f35d4acd1f4ce3b1f2fb90e67cad11.png


4.在server5上安装mysql,创建salt用户

f7f78474626b17688039841eefe1d366.png

29d1e1b49f62b0416c617ff600a98511.png


5.修改配置/etc/salt/master文件,数据库地址为master server1

添加数据库配置

76d7a628ccbd765798ef934bfb7ef846.png


8384a11e420cd885011318a37751a549.png


6.测试采集的数据是否保存到master的数据库上

3597ffd24c08431687d02d1bf3caaa4b.png


远程登陆master server1的数据库

facfb96244f10c3188cdbc2a24c324e3.png

235a0acba8e64a5fbb80a3560bb24972.png


数据已经保存

e12f07151d35184b07b2bc5d05b163a7.png



三.salt采集数据的返回值保存到数据库里

主缓存

36f3da7328b88e9569be37c41e5dde0c.png



1.在sevrer1上安装mysql-python模块

7f779ff886dad4edea8cfd2b4b878560.png


2.注释之间server5上配置的外部缓存mysql设置,以免影响主缓存设置

38344805b09293b060f756e75f174938.png

5cf3000e0247ab6945352400fe219eb2.png


3.修改server1上的master设置

设置为主缓存

20a7d96684b407937c4e95cf9aac583e.png

70c4ff49d882e2f4dce24493b4b8ec08.png


4.采集数据

采集server5的所有项目

1c950aca9302e64fa86703306bed660d.png

登陆数据库数据已经生成

6140d52639e3eff360ae9803ed973dbb.png

63650cd37e978c01650d39d09a492711.png



四.salt syndic

salt的基本设置是一个salt master指挥一组salt minion。syndic允许建立salt命令拓扑结构,它运行在一个master上,并且连接到另一个master。syndic所连接的master可以控制syndic和syndic下的minions

注意事项:各个 syndic 必须提供自己的file_roots目录,文件不会在 master-master 之间自动分发

                syndic下边的minion执行的命令会执行syndic top里边的命令。

                Syndic 必须运行在master上,并且连接到另一个master(比他更高级)


1.salt syndic配置

需要将server4变为master

f9ea0134dad4ae2c2e4ba8f103bb9492.png


在server1上安装salt-syndic

8d49c9a8a92df7f41e252b1f430ed85b.png

1f4a6ffd528c521ce19dd92f41d55910.png


2.配置server4上的master文件

8688be81c1231ef43315b1e62d715eae.png

开启base目录

87b658b252489cdea57ce2e2d79b7021.png

开启pillar目录

d121c853b138422ec2c23633a55e2653.png

0c6764ae7f086aee2190f87c6557083e.png


3.设置server1上的syndic master

1c9a62c071fec4f23ba8e7190ab1c09a.png

bc7b6a4d953a3e2cbead52f2d3e4a4f7.png


4.在server4上添加server1的salt-key

5e1b7099128885eb31cfc2fb7974d801.png


5.测试配置成功

f212620fa1cb92b624b2afa672fc6103.png



五.salt ssh远程连接

      salt需要安装和启动minion,这样master才能控制minion。 对于远程执行命令,最常见的方法是用ssh,因为直接启动远程的sshd服务即可。salt ssh可以集成两者的优点,同时免安装minion又同时可以使用saltstack的功能特点。


1.安装salt-ssh

6e57e15bd4447f92e9bd068e11ce9e79.png


2.将原先的其他服务关闭

3894e71ba73fd66313dd8d413895e748.png

0b2fd90636894ebe62b19dcc9b2ed76c.png


3.编辑roster文件

3c8970f73d93310fcf530793959a2a19.png

aa67bda8aecafe5c5af4daec9bdf11c1.png


4.测试salt ssh成功

97c96c77e149cdc6739476dc11239fd7.png



六.salt api 安装

1.安装python-cherrypy模块和salt-api

3c8a3d9442a980747cd50333116166a5.png

069d4c164b5060807eda575bb73a502b.png

2.生成生成自签名证书

1400d1d58de5003e9100c95b17d52f1f.png


报错,需要用openssl生成rsa私钥文件

17acb2bc9187cc938f5259a25ad34ca7.png


生成自签名证书

4f1640173aeb5d659f38c8d5edb44b09.png


3.配置salt-api   ,配置eauth

d9adcee3ed55a6897144a880254cdedb.png

vim    /etc/salt/master.d/api.conf

aeee46bb79dac447d38ad961d3acde86.png

    

vim    /etc/salt/master.d/eauth.conf

33a9e055b1692106f9d85715aa6f413f.png


4.创建saltapi用户,设置密码


2d13e7c0ce071e02b9cac4701f29511f.png

b311736ea9699adeab147e22f11b3c17.png


5.启动服务

2539265fccc867f4156c317257476359.png



6.测试使用api

测试工具为操作系统自带的      curl

获取 token 后边的串为认证成功后获取的token串,之后可以不用再次输入密码,直接使用本Token即可

f820b07e19345b6f4d21aa2d856359af.png


远程执行命令

37f0ec79eb218cf6a9a5976cb2aa0e7e.png

ebb5c65ba77f8ea50b50d297c3168c3d.png



7.利用网上的写好的py脚本测试api,需要自己写界面

列出key值

9780faa73f20e62aee59785523645dc2.png

618f4a729d90bb1aae4002eb9e946f2b.png


远程server5安装httpd

9beb938d3142299f172ce93110351ce0.png

43c7b623b950c753535f48c7c7dcb92c.png


远程server5安装nginx

0d62552069937eff8f3a59ff084cb81f.png

d1cfbc05937048c9748a18bdb25cae07.png

a7afb85a63d7e2d62e6cc389be8480ec.png



      本文转自一百个小排 51CTO博客,原文链接:http://blog.51cto.com/anfishr/1974211,如需转载请自行联系原作者








相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
XML JSON API
淘宝/天猫获得淘宝商品详情 API 返回值说明
API(Application Programming Interface),即应用程序编程接口,是一组用于构建软件应用程序的协议、例程和工具。它定义了不同软件组件之间如何进行交互,就像是软件世界中的 “语言翻译官” 或者 “沟通桥梁”。 简单来说,当你使用一个软件应用(比如手机上的天气应用)去获取天气数据时,这个应用就是通过 API 接口向提供天气数据的服务器发送请求,服务器收到请求后,通过 API 接口返回天气数据给应用,然后应用才能把天气信息展示给你。
164 2
|
API 开发者
如何获取淘宝/天猫购物车的商品列表 API 返回值说明
淘宝/天猫的购物车API返回值会包含当前用户购物车中的商品列表及相关信息。以下是API返回值可能包含的主要字段和信息的详细说明:
|
7月前
|
JSON 供应链 数据挖掘
解锁淘宝/天猫SKU详情API返回值价值:为电商业务增长赋能
本文深入解析淘宝/天猫SKU详情API返回值的使用方法,涵盖核心内容如商品基础信息、SKU属性(价格、库存、属性列表)、多媒体信息等。同时探讨其在商品详情页优化、库存管理、动态定价、数据分析及精准营销等场景的应用策略,并提供API调用与返回值处理的技术实现示例。文章强调合规要求,助商家高效利用电商数据提升竞争力。
|
8月前
|
搜索推荐 API UED
淘宝/天猫获得淘宝app商品详情原数据 API 返回值的应用
该API专注于商品信息整合与展示,提供基础信息抓取、多媒体内容整合等功能,助力实时同步商品数据,构建丰富的详情页。同时支持数据分析与市场洞察,包括销售趋势分析和竞品对比,优化库存与定价策略。此外,动态促销管理和个性化推荐系统可提升营销效果,而实时库存预警和评价数据可视化则显著增强用户体验,为用户决策提供透明依据,全面提升平台竞争力与用户满意度。
|
8月前
|
API 监控 双11
淘宝/天猫获取商品历史价格信息 API 返回值的应用
本内容介绍了一款基于API的工具的核心功能,涵盖消费者决策支持、商家运营优化、市场趋势分析及数据服务拓展四大方面。消费者可借助历史价格曲线判断价格合理性、选择最佳购买时机;商家可通过竞品数据分析优化定价策略与促销活动;第三方平台能监测价格波动、跟踪竞品动态以洞察市场趋势。此外,工具还支持比价工具开发与价格预警服务,为用户和企业带来全方位的价格智能解决方案。
|
7月前
|
供应链 监控 数据挖掘
淘宝/天猫SKU详情API返回值实战指南:赋能电商高效运营
本文详解了淘宝/天猫获取SKU详细信息API的返回值结构与深度应用。首先解析了API的核心字段,包括基础信息(商品ID、名称、链接)、SKU属性(价格、库存、属性列表)及多媒体信息(图片、销量)。其次探讨了其在商品详情页渲染、库存管理、价格监控等基础场景以及数据分析、精准推荐、供应链协同等高级场景的应用价值。最后提供了Python调用示例,并强调了权限认证、调用限制及错误处理等注意事项。该API是电商业务精细化运营的重要工具。
|
7月前
|
JSON 监控 API
深度剖析:淘宝商品详情API返回值结构及高效使用方法
本文详解了淘宝商品详情API(taobao.item.get)的使用方法与返回值解析,涵盖接口基础认知、返回值结构及核心字段说明。通过四步调用流程(注册-认证-请求-解析),开发者可高效获取商品信息,包括基础数据、库存销量、SKU详情、促销活动等。文章还提供了Python实战代码示例,助您实现商品展示、价格监控、智能选品等场景应用。最后提醒注意权限认证、调用频率限制及错误处理,助力电商业务创新。
|
7月前
|
搜索推荐 数据挖掘 API
权威解读:淘宝/天猫商品描述API返回值在电商领域的创新应用
本文全面解析淘宝/天猫商品描述API返回值的应用价值,涵盖核心内容、应用场景、技术实现与合规要求。API提供商品详情、价格、图片等数据,助力构建商品页、优化SEO、支持数据分析与个性化推荐。通过高效技术和实战案例,展示其在电商运营中的重要作用,帮助开发者挖掘电商业务增长潜力。
|
7月前
|
边缘计算 API 决策智能
淘宝/天猫商品详情API返回值深度解析:应用价值与实战策略
本文深入解析淘宝/天猫商品详情API返回值的应用价值,涵盖核心字段、技术架构、应用场景与合规要求四大维度。从num_iid到skus,详解数据结构;通过分布式架构与边缘计算优化性能;探讨自动化调价、精准推荐等商业场景;并强调合规调用与开发者工具支持。助力企业提升运营效率与用户体验,在电商竞争中抢占先机。
|
JSON API 开发者
微店获得店铺所有商品API返回值说明
微店电商平台提供item_search_shop API接口,帮助商家和开发者获取店铺内所有商品的详细信息,包括基本属性、价格、库存、图片等。返回值为JSON格式,包含商品ID、标题、价格、库存、图片URL、详情页URL及属性等字段。每个商品还附带SKU列表,涵盖不同规格的价格和库存。开发者可使用Python解析API返回值,实现库存管理、数据分析或营销活动。注意数据更新、安全性和错误处理,以确保高效运营和良好用户体验。