• SaltStack 的远程执行机制


    SaltStack 的远程执行特点:
    SaltStack 在设计之初的定位就是远程执行工具,远程执行对于 Salt 而言是十分频繁的操作,其具有如下特点。
    (1).Salt 命令是跨操作系统、跨平台的。例如:salt '*' pkg.install git 将在不同的操作系统及平台上调用 yum、apt、pacman 甚至 Salt windows 包仓库等工具。
    (2).所有 Salt 命令的返回结果都是以统一的数据结构保存,这使得检查结果正确性以及存入结果至数据库十分方便。
    (3).Salt minion 在执行作业上几乎是同时开始的。
    (4). Salt 可以调用成本上千种的 Python 模块,以执行远程管理。同时,Salt 也可以轻易地加入其它的自定义模块
     
    SaltStack 的远程执行机制:
    例如:执行命令 salt '*' test.rand_sleep 120 时,其执行过程如下:
    (1).命令通过发布者(publisher)端口,分发至所有已连接的 Salt minion;
    (2).每个 Salt minion 都需要检查命令,评估是否应该在节点上运行命令;
    (3).目标系统将会运行命令,并将结果返回至请求服务器。
    当 Salt minion 接收到命令时,其执行过程如下:
    (1).每条命令都将被分拆为一个独立的工作进程,从而 Salt minion 才能在同一时刻处理多项作业。
    (2).针对 Salt 命令(结构如下图),找到正确的 module,随后以提供的 arguments 作为参数,调用 function。注意:Salt 实际上可以看做是 Python 函数的抽象层

  • 相关阅读:
    VSCode一键调用DOSBox运行MASM/TASM代码的自定义任务
    C# | VS2019连接MySQL的三种方法以及使用MySQL数据库教程
    Visual Studio 2019连接MySQL数据库详细教程
    Visual Studio 2022 激活码
    Python | 使用SVM支持向量机进行鸢尾花分类
    Python | __init__.py的神奇用法
    Java简单介绍及Java生态
    NoSQL:一个帝国的崛起
    学习哪门语言好
    浅析HTTP协议
  • 原文地址:https://www.cnblogs.com/autopenguin/p/7093129.html
Copyright © 2020-2023  润新知