常用自动化运维工具简介和Ansible安装

2023-05-16

自动化运维工具

Puppet

Puppet是历史悠久的运维⼯具之⼀。它是⼀种基础架构即代码(IaC)⼯具,使⽤户可以定 义其
基础架构所需的状态,并使系统⾃动化以实现相同状态。
Puppet可监视⽤户的所有系统,并防⽌任何偏离已定义状态的情况。从简单的⼯作流程⾃ 动化到
基础架构配置和合规性,Puppet都能做到。
Puppet通过让客户端检查主站的更新清单来更新节点的配置,然后从主站服务器拉下新的 配置。
由于这个特点,Puppet⽐这⾥提到的许多其他⼯具更倾向于系统管理员。
特点:
(1)通过PuppetLabs建⽴良好的⽀持社区
(2)它有最成熟的接⼝,⼏乎在每个操作系统上运⾏
(3)简单的安装和初始设置
(4)在这个空间中最完整的Web UI (5)强⼤的报告功能

特点:
Puppet是早期的Linux自动化运维工具,是一种LINUX、WINDOWS、UNIX平台的集中配置管理系
统,到现在已经非常成熟,可以批量管理远程服务器,模块丰富,配置复杂,基于Ruby语言编写。
是最典型的C/S结构,需要安装服务端和客户端 。

Puppet采用C/S星状的结构,所有的客户端和一个或者多个服务器交互,每个客户端周期地(默认
半个小时)向服务器发送请求,获得最新的配置信息,保证和配置信息同步。

每个Puppet客户端周期地连接一次服务器,下载最新的配置文件,并且严格按照配置文件来配置客
户端。配置完成后,Puppet客户端可以反馈给服务器端一个消息,如果出错也会给服务器端反馈一
个消息。

Puppet适用于服务器管理的整个过程,比如初始安装、配置、更新等
优缺点:

  • 优点

模块由Ruby或Ruby子集编写
push命令可以即可触发变更
Web界面生成处理报表、资源清单、实时节点管理
代理运行端进行详细、深入的报告和对节点进行配置

  • 缺点

相对其他工具较复杂,需学习Puppet的DSL或Ruby
安装过程缺少错误校验和产生错误报表

SaltStack

Salt由Salt Master和被称为Salt Minions的客户端组成,后者作为代理在每个节点机器上运⾏。
Puppet的⼯作⽅式是由节点请求更新,⽽Salt的⼯作⽅式与此相反,SaltMaster将所有配置推送
给所有客户机。

Salt还可以在多主机配置中运⾏。如果⼀个Salt主服务器发⽣故障,代理将连接到配置中列 出的另
⼀个主服务器。这⼀功能提⾼了整个系统的整体可⽤性和冗余度。
Salt的另⼀个好处是,它允许⼀次并⾏执⾏多个命令。这些命令通过AES(⾼级加密标准) 进⾏加
密,并通过SSH协议推送给客户端节点。
特点:
(1) 实时交互 所有的minion机器同时执⾏命令

(2)no freeloader
每⼀台salt minion上都装有执⾏master传来的命令所需要的程序,saltmaster发送命令的时 候,
只需要指明哪台机器做什么,所有的saltminion都会收到这条命令,然后判断⾃⼰是否符 合执⾏条
件,然后再将执⾏结果返回给saltmaster。 ⽂档中,freeloader的意思是没有揩油/吃⽩⻝的⼈,
所有的saltminion机器都会完成⾃⼰ 的指令,⽆需saltmaster帮助,saltminion⾃⼰完成,往往⽐
saltmaster帮忙去做,做的更好。

(3)可测量性 salt为⾼性能和可测量性⽽⽣。
salt的master和minion的信息传输,是由基于ZeroMQ 或者raw TCP在saltmaster和saltminion之
间建⽴的⼀个持久性的数据管道来实现的。这相对于其它传输机制,有更好的性 能优势。使⽤
MessagePack使得消息⾮常⾼效地被序列化。 salt内部使⽤python Tornado作为异步⽹络库,
并发和多线程也都采⽤了先进的技术。

(4)salt可以在任意python能够运⾏的环境下运⾏ 只要⽀持任何⽹络协议的就⾏。 salt 命令被发送
到 代理minion机器,将协议转换为本地写协议,再发送给salt minion机 器,返回的数据经转以后
存储在数据设备中,再返回

(5)⾃动化管理
(6)可扩展性强

特点:
SaltStack和Puppet一样,也是C/S模式,需要安装服务端和客户端,基于Python编写,加入了MQ
消息同步,可以使执行命令和执行结果高效返回,但其执行过程需要等待客户端全部返回,如果客
户端没有及时返回或者没有响应的话,可能会导致部分机器没有执行结果。

优缺点:

  • 优点

状态文件可用简单YAML配置模块或复杂的Python/PyDSL脚本
与客户端可以基于SSH或在被管节点安装代理
Web界面可看到运行的工作、minion状态、事件日志、可在客户端执行命令
扩展能力极强

  • 缺点

Web界面像毒药竞争产品不稳定与相对不完善
缺乏生成深度报告的能力

Ansible

Ansible是当下⽕热的⾃动化运维⼯具,它基于模块⼯作的,本身没有批量部署的能⼒。真 正具有
批量部署的是ansible所运⾏的模块,通过集成⾮常丰富的模块,它可以实现各种管 理任务,如批
量系统配置、批量程序部署、批量运⾏命令等。 重要的是,Ansible操作简单,即使新⼿也可以轻
松上⼿,同时⼜提供⾮常丰富的功能,在 运维领域,⼏乎可以做任何事。 特点: (1)轻量级,⽆需
在客户端安装agent,更新时只需在操作机上进⾏⼀次更新即可
(2)批量任务执⾏可以写成脚本,⽽且不⽤分发到远程就可以执⾏。
(3)使⽤Python编写,维护更简单
(4)⽀持sudo (5)模块化
(6)Ansible社区⾮常活跃。Ansible本身提供的模块⾮常丰富,第三⽅资源多

特点:
Ansible和SaltStack一样是基于Python开发,Ansible只需要在一台普通的服务器上运行即可,不需
要在客户端服务器上安装客户端。因为Ansible基于SSH远程管理,而Linux服务器大部分都离不开
SSH,所以Ansible不需要为配置添加额外的支持。

Ansible安装使用都很简单,而且基于上千个插件和模块,实现各种软件、平台、版本的管理,支持
虚拟容器多层级的部署。

有时候会觉得Ansible比SaltStack执行效率慢,其实并不是软件本身的问题,二是由于SSH服务慢,
可以通过优化SSH连接速度和使用Ansible加速模块提高效率.

优缺点:

  • 优点

模块可以用任何语言开发
备管节点不需要安装代理软件
有Web管理界面、可配置用户、组、资源清单和执行Playbook
安装、运行极其简单

  • 缺点

对备管理节点为Windows有待加强
Web管理界面是内置的Ansible的一部分
需导入资源清单
执行效率较低

Chef

Chef是配置管理的开源⼯具,它能使每个环境与基础设施中的相同配置保持⼀致。它还有 ⼀个庞
⼤的⽀持社区,有⼤量的⽂档和指导。Chef主控和节点软件在Unix/Linux系统上都可 以使⽤,但
只有客户端和⼯作站版本可以部署在Windows服务器上。
特点:
(1)丰富的模块和配置配⽅集合
(2)代码驱动的⽅法为您的配置提供更多的控制和灵活性
(3)围绕Git提供强⼤的版本控制功能
(4)“Knife”⼯具(使⽤SSH从⼯作站部署代理)减轻了安装负担

技术特点对比:

名称PuppetSaltStackSaltStack
开发语言RubyPythonPython
客户端
二次开发不支持支持支持
通信验证
通信加密标准SSL协议AES加密OpenSSH
配置文件格式Ruby语法格式YAMLYAML

Ansible是什么

Ansible是⼀款⾃动化运维⼯具,基于Python开发,集合了众多运维⼯具(puppet、cfengine、
chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运⾏命令等功能。
Ansible是基于模块⼯作的,本身没有批量部署的能⼒。
真正具有批量部署的是Ansible所运⾏的模块 Ansible只是提供⼀种框架。
在这里插入图片描述
在这里插入图片描述

主要包括:
(1) 连接插件connection plugins:负责和被监控端实现通信;
(2) host inventory:指定操作的主机,是⼀个配置⽂件⾥⾯定义监控的主机;
(3) 各种模块核⼼模块、command模块、⾃定义模块;
(4) 借助于插件完成记录⽇志邮件等功能;
(5) playbook:剧本执⾏多个任务时,⾮必需可以让节点⼀次性运⾏多个任务

Ansible⽆需代理

Ansible 围绕⽆代理架构构建。
通常⽽⾔,Ansible 通过 OpenSSH 或 WinRM 连接它所管理的主机并且运⾏任务,⽅法通常是将
称 为 Ansible 模块的⼩程序推送⾄这些主机。这些程序⽤于将系统置于需要的特定状态。
在Ansible运⾏完其任务后,推送的所有模块都会被删除。

Ansible 不需要批准使⽤任何特殊代理,然后再部署到受管主机上。由于没有代理,也不 需要额外
的⾃定义安全基础架构

Ansible 具有多个重要的优点:
(1) 跨平台⽀持:Ansible 提供Linux、Windows、UNIX和⽹络设备的⽆代理⽀持,适⽤于物 理、
虚拟、云和容器环境。

(2) ⼈类可读的⾃动化:Ansible Playbook采⽤YAML⽂本⽂件编写,易于阅读,有助于确保所 有
⼈都能理解它们的⽤途。

(3) 完美描述应⽤:可以通过 Ansible Playbook进⾏每种更改,并描述和记录应⽤环境的每⼀ 个⽅
⾯。
(4) 轻松管理版本控制:Ansible Playbook和项⽬是纯⽂本。它们可以视作源代码,放在现有版 本
控制系统中。

(5) ⽀持动态清单:可以从外部来源动态更新 Ansible 管理的计算机列表,随时获取所有受管服 务
器的当前正确列表,不受基础架构或位置的影响。

(6) 编排可与其他系统轻松集成:能够利⽤环境中现有的 HP SA、Puppet、Jenkins、红帽卫星 和
其他系统,并且集成到 Ansible ⼯作流中。

Ansible⼯作⽅式

Ansible 的设计宗旨是⼯具易⽤,⾃动化易写易读。所以在创建⾃动化时我们应追求简单化。

Ansible ⾃动化语⾔围绕简单易读的声明性⽂本⽂件来构建。正确编写的 Ansible Playbook可以清
楚地记录你的⼯作⾃动化。

Ansible 是⼀种要求状态引擎。它通过表达你所希望系统处于何种状态来解决如何⾃动化IT部署的
问题。Ansible 的⽬标是通过仅执⾏必要的更改,使系统处于所需的状态。试图将 Ansible 视为脚
本 语⾔并⾮正确的做法。

安装Ansible

控制节点

Ansible 易于安装。 Ansible 软件只需要安装到要运⾏它的⼀个(或多个)控制节点上。
由 Ansible管理的主机不需要安装 Ansible。 对控制节点的要求: 控制节点应是Linux或UNIX系
统。不⽀持将Windows⽤作控制节点,但Windows系统可以是受 管主机。

控制节点需要安装Python3(版本3.5或以上)或Python2(版本2.7或以上)。 如果操作系统是红
帽8.0,Ansible 2.9可以⾃动使⽤ platformpython 软件包,该软件包⽀持使 ⽤Python的系统实⽤
程序。你不需要从 AppStream安装python37或python27软件包。

[root@localhost ~]# yum list installed platform-python
Installed Packages
platform-python.x86_64                            3.6.8-33.el8                             @anaconda
[root@localhost ~]# 

受管主机
Ansible的⼀⼤优点是受管主机不需要安装特殊代理。Ansible控制节点使⽤标准的⽹络协议连接受
管主机,从⽽确保系统处于指定的状态。 受管主机可能要满⾜⼀些要求,具体取决于控制节点连
接它们的⽅式以及它们要运⾏的模块。
Linux和UNIX受管主机需要安装有Python2(版本2.6或以上)或Python3(版本3.5或以上),这
样 才能运⾏⼤部分的模块。 对于红帽8,可以启⽤并安装python36应⽤流(或python27应⽤流)

yum module install python36

如果受管主机上启⽤了SELinux,还需要确保安装python3libselinux软件包,然后才能使⽤与任何 复制、⽂件或模板功能相关的模块。所以在⼯作的时候,应当把SELinux功能关闭。

基于Windows的受管主机
Ansible有许多专⻔为Windows系统设计的模块。
这些模块列在官⽅⽂档部分中。 ⼤部分专⻔为Windows受管主机设计的模块需要在受管主机上安
装PowerShell 3.0或更⾼版本,⽽ 不是安装Python。此外,受管主机也需要配置PowerShell远程
连接。Ansible还要求⾄少将.NET Framework 4.0或更⾼版本安装在Windows受管主机上。

受管⽹络设备
Ansible还可以配置受管⽹络设备,例如路由器和交换机。Ansible包含⼤量专⻔为此⽬的⽽设计的
模块。其中包括对Cisco IOS、IOS XR和NXOS的⽀持;Juniper Junos;Arsta EOS;以及基于VyOS的⽹络设备等。 我们可以使⽤为服务器编写playbook时使⽤的相同基本技术为⽹络设备编写
Ansible Playbook。由 于⼤多数⽹络设备⽆法运⾏Python,因此Ansible在控制节点上运⾏⽹络模
块,⽽不是在受管主机上 运⾏。特殊连接⽅法也⽤于与⽹络设备通信,通常使⽤SSH上的CLI、
SSH上的XML或HTTP(S)上 的API。

安装Ansible

环境说明:

主机名称IP相应环境系统
localhost192.168.141.144AnsibleCentOS8
//使用阿里源
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# rm -rf *
[root@localhost yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-Base.repo htt
ps://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo

//下载platform-python
[root@localhost ~]# yum -y install platform-python

//安装ansible
[root@localhost ~]# yum -y install centos-release-ansible-29

[root@localhost ~]# yum -y install ansible
[root@localhost ~]# ansible --version
ansible 2.9.27
  config file = /etc/ansible/ansible.cfg
  configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3.6/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 3.6.8 (default, Sep 10 2021, 09:13:53) [GCC 8.5.0 20210514 (Red Hat 8.5.0-3)]
[root@localhost ~]# 

//通过使用setup模块验证localhost上的ansible_python_version
[root@localhost ~]# ansible -m setup localhost|grep ansible_python_version
        "ansible_python_version": "3.6.8",
[root@localhost ~]# 


//查看ansbile配置环境
[root@Masters ~]# ansible -m setup localhost | less
localhost | SUCCESS => {
    "ansible_facts": {
        "ansible_all_ipv4_addresses": [
            "192.168.141.144"
        ],
        "ansible_all_ipv6_addresses": [
            "fe80::216:3eff:fe09:aed9"
        ],
        "ansible_apparmor": {
            "status": "disabled"
        },
        "ansible_architecture": "x86_64",
        "ansible_bios_date": "07/22/2020",
        "ansible_bios_version": "6.00",
        "ansible_cmdline": {
            "BOOT_IMAGE": "(hd0,msdos1)/vmlinuz-4.18.0-257.el8.x86_64",
            "biosdevname": "0",
            "crashkernel": "auto",
            "net.ifnames": "0",
            "quiet": true,
            "rd.lvm.lv": "cs_llb/swap",
            "resume": "/dev/mapper/cs_llb-swap",
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

常用自动化运维工具简介和Ansible安装 的相关文章

  • sip电话注册失败问题解决心得总结

    这是我学习搭建opensips服务器以来持续性最长的一个问题 xff0c 具体就是终端电话软件一直注册不了已经创建好的sip会话账号 我刚开始用的终端电话软件是Zoiper xff0c 要么一直在注册中 xff0c 要么直接注册失败 xff
  • 面向对象以及类和对象的概念

    面向对象 面向对象和面向过程的区别 面向过程 xff1a 主要的关注点是实现具体的过程 xff0c 因果关系 集成显卡的开发思路 优点 xff1a 对于业务逻辑比较简单的程序 xff0c 可以达到快速开发 xff0c 前期投入成本较低 缺点
  • 尚硅谷hadoop3.x集群配置笔记及常见错误解决方式

    1 搭建集群准备工作 总体流程 准备3台客户机 xff08 关闭防火墙 静态IP 主机名称 xff09 安装JDK 配置环境变量 安装Hadoop 配置环境变量 配置集群 单点启动 配置ssh 群起并测试集群 一 模板虚拟机的搭建 配置要求
  • Centos 7系统下NTP时间同步服务配置

    NTP分为服务器端与客户端 xff08 自己选择某一台机器为服务器端 xff0c 其他机器则为客户端 xff09 xff0c 其中 xff0c 客户端通过向服务器端发送时间同步请求实现整个集群的时间同步 具体操作步骤如下所示 xff1a 1
  • EduCoder-程序设计技术R(第四部分循环结构程序设计1)- 第5关:求sn=a+aa+aaa+aaaa+......的值

    大家好鸭 x1f60e xff0c 前几期的EduCoder题解 xff0c 阅读量超过了之前的好多文章 xff01 谢谢大家的阅读 如果题目AC的话 xff0c 求一个免费的赞噢 x1f47b 如果有编程相关的问题 xff0c 可以一起交
  • 和风天气获取天气情况

    和风天气api xff08 实时天气 xff09 https dev qweather com docs api weather weather now 控制台 https console qweather com apps 1 进入控制台
  • Java习题练习:组队

    目录 题目描述 思路 其他真题 题目描述 作为篮球队教练 你需要从以下名单中选出1 号位至5 号位各一名球员 组成球队的首发阵容 每位球员担任1 号位至5 号位时的评分如下表所示 请你计算首发阵容1 号位至5 号位的评分之和最大可能是多少
  • 基于朴素贝叶斯分类器的西瓜数据集(实战)

    最近刚开始学习机器学习中的朴素贝叶斯分类器 xff0c 用西瓜数据集做了一下 xff0c 最后结果预测正确率75 xff0c 其中运用到的python语法并不复杂 xff0c 适合小白观看 目录 朴素贝叶斯分类器思想的自然语言描述 xff1
  • Golang将密码盐加密

    代码地址 xff1a https gitcode net m0 51510236 go password 首先我们来初始化一个项目 go mod init go password golang密码加密我们可以使用 golang org x
  • Spring使用SpringJUnit4ClassRunner时出现java.lang.NoSuchMethodError错误

    报错情况如下 xff1a java lang NoSuchMethodError org springframework core annotation AnnotatedElementUtils getAnnotationAttribut
  • 自己动手搭建网站:electerm远程连接云服务器,部署环境并发布第一个静态页面

    上篇写了云服务器和域名的选购 xff0c 这篇接上篇 xff0c 记录一下如何远程连接云服务器 xff0c 并发布第一个静态网页 xff0c 环境部署在另一篇博文里 xff1a Linux xff08 CentOS7 xff09 下配置jd
  • 解决IDEA报错Failed to start bean ‘documentationPluginsBootstrapper‘

    前言 白嫖容易 xff0c 创作不易 xff0c 若以下方案解决了问题烦请点赞支持一下 xff08 关注一下更好 xff09 在使用IDEA做项目时使用了Swagger进行接口文档的处理 swagger 使用的版本为2 9 2 xff0c
  • C语言%d输出的不同形式

    d就是普通的输出 2d是将数字按宽度为2 xff0c 采用右对齐方式输出 xff0c 若数据位数不到2位 xff0c 则左边补空格 2d是将数字按宽度为2 xff0c 采用左对齐方式输出 xff0c 若数据位数不到2位 xff0c 则右边补
  • latex常用语法

    字母表 字母上面的上标输入方法 xff0c 如右图所示 xff0c 如 bar a 表示字母a头上有一横线 小写希腊字母的输入方法 xff0c 如右图所示 xff0c 大写希腊字母的输入方法 xff0c 如右图所示 xff0c 大写希腊字母
  • Centos 7 内核升级

    一 升级至最新版本内核 1 升级系统包 xff0c 命令如下 yum update y 2 升级内核 xff0c 命令如下 rpm import http www elrepo orq RPM GPG KEY elrepo orq rpm
  • Win11安装Android子系统

    目录 一 获取安卓子系统安装包 二 安装Hyper v 三 运行Android安装包 四 安装组策略编辑器 五 配置Android环境 六 安装安卓apk格式app 一 获取安卓子系统安装包 百度云盘获取包 链接 xff1a https p
  • python-切割字符串成为列表(split函数)

    split函数切割字符串成为列表 在python的input时 xff0c 我们接收都是string类型 information span class token operator 61 span span class token buil
  • MyBatis实现分页查询

    目录 一 基于注解的简单分页查询 1 定义对象 2 Mapper接口 3 Controller类 4 功能实现 二 基于注解的较复杂分页查询 1 定义shop实体类和page分页类 2 Mapper接口 3 Controller类 4 功能
  • python 读取word表格中的表格

    解决方案 xff1a 在网上没有找到可行的嵌套表格内容读取方法 查看python docx包源代码找到以下两种解决方案 xff1a 方案一 xff1a 按行列读到单元格后再取tables xff0c 此处table cell tables值
  • sublime配置C/C++并调试

    文章目录 前言1 工具准备1 1 sublime的安装1 2 MinGw的安装和配置 2 开始配置2 1 MinGw路径放进环境变量2 2 sublime的配置 3 开始使用3 1 运行代码3 2 调试代码 前言 本文主要讲关于sublim

随机推荐

  • 洛谷P1025 [NOIP2001 提高组] 数的划分(DP)

    题目描述 将整数 n n n 分成 k k k 份 xff0c 且每份不能为空 xff0c 任意两个方案不相同 xff08 不考虑顺序 xff09 例如 xff1a
  • 【Rust深入浅出-5】拓展数据类型

    Rust深入浅出 5 拓展数据类型 第一章Hello World 第二章 变量和基本数据类型 第三章 运算符 第四章 类型转换 第五章 拓展数据类型 文章目录 Rust深入浅出 5 拓展数据类型前言slice切片tuple元组索引match
  • sort 函数排序之cmp浅析

    1 一般来说 xff0c sort可对整型和浮点型数据进行排序 xff0c 排序从小到大 xff0c 如果需要变为从大到小 xff0c 那么我们可以定义一个cmp函数 xff0c 定义如下 xff1a bool cmp int x int
  • 魔导师晨拥

    链接 xff1a 登录 专业IT笔试面试备考平台 牛客网 来源 xff1a 牛客网 魔导师晨拥是 炉石传说 中的一张传说卡牌 魔导师晨拥的英雄技能为初始造成 222 点伤害 xff0c 如果恰好消灭某个随从 xff0c 则伤害永久增加 11
  • Royal TSX常见问题:解决远程桌面(RDP)连接错误

    Royal TSX mac破解版是一款帮助用户管理桌面的Mac桌面管理软件 xff0c Royal TSX for mac为你提供方便安全的访问远程系统 Royal TSX专为服务器管理员 系统工程师 开发人员和IT信息工作者开发设计 xf
  • 解决jupyter notebook :No module named ‘tensorflow‘ 及python.exe无法找到入口问题及500 : Internal Server Error

    目录 jupyter notebook ModuleNotFoundError No module named 39 tensorflow 39 问题 可能性1 xff1a tensorflow版本与python版本不匹配 可能性2 xff
  • Ceph安装步骤1——基础Ceph集群安装

    一 基础环境 本文所搭建环境为Centos 7 内核4 17版本 xff0c 安装Ceph版本为luminous 一共配置三台机器 xff0c 每台机器的IP地址和主机名称分别为 xff1a 192 168 1 131 ceph admin
  • 远程桌面--某些设置由你的组织管理

    解决某些设置由你的组织管理 在cmd的运行里输入 gpedit msc 选择 计算机配置 gt 选择 管理模块 gt 选择 Windows组件 gt 选择 远程桌面服务 gt 选择 远程 桌面会话主机 gt 选择 连接 gt 右击 允许用户
  • 数据结构--第三章--栈和队列--知识点回顾

    第三章 栈和队列 一 基本知识点 1 栈 队列和线性表的异同 2 顺序栈的基本运算算法设计 3 链栈的基本运算算法设计 4 顺序队的基本运算算法设计 5 环形队列和非环形队列的特点 6 链队的基本运算算法设计 7 利用栈 队列求解复杂的应用
  • 实验四 SQL连接查询

    一 实验目的 xff1a 掌握SQL连接查询语句 二 实验内容和主要步骤 xff1a 查询每个学生及其选修成绩的情况 select sno cno Grade from sc 分别用左外连接和右外连接实现查询所有学生信息及其选修成绩的情况
  • wsl+opencv——清除旧版并安装新版,实测有效

    写在前面 我用的是cmake方式编译安装的opencv xff0c 但一直弄不好contrib这个东西 xff0c 索性先不用老版本的opencv我把源文件都删掉了 xff0c 没法用网上的一些方法make uninstall 卸载清除旧版
  • JAVA编程——父子类

    编程需求 需求如下 xff1a 编写父类People xff0c 子类Student继承自People类 父类People具有姓名 xff0c 性别 xff0c 年龄等性质 xff0c 还具有吃和说的行为 子类Student继承父类Peop
  • 部署zabbix6.2

    zabbix6 2安装步骤 配置阿里云源 注意本机的操作系统的centos8 span class token punctuation span root 64 localhost span class token operator spa
  • zabbix功能介绍

    1 zabbix介绍 zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案 zabbix能监视各种网络参数 xff0c 保证服务器系统的安全运营 xff1b 并提供灵活的通知机制以让系统管理员快速定位
  • haproxy部署安装

    haproxy简介 HAProxy是一个使用C语言编写的自由及开放源代码软件 xff0c 其提供高可用性 负载均衡 xff0c 以及基于TCP和HTTP的应用程序代理 HAProxy特别适用于那些负载特大的web站点 xff0c 这些站点通
  • KVM虚拟化介绍和安装使用方法

    一 KVM虚拟化介绍 虚拟化 xff1a 在一台计算机上虚拟出多个逻辑的计算机 xff0c 而且每个逻辑计算机 它可以是不同操作系统 虚拟化技术 xff1a 可以扩大硬件容量 xff0c 单个cpu模拟出多个cpu并行 xff0c 允许一个
  • nginx反向代理与负载均衡以及高可用

    nginx反向代理介绍 nginx通常被用作后端服务器的反向代理 xff0c 这样就可以很方便的实现动静分离以及负载均衡 xff0c 从而大大提高服务器的处理能力 nginx实现动静分离 xff0c 其实就是在反向代理的时候 xff0c 如
  • Ceph 配置URL访问s3 Bucket

    一 创建json文件 xff0c 用于编辑policy xff0c 文件内容如下 xff08 Version并不重要 xff09 xff0c Action存在多种选择 如步骤三所示 xff0c 并且允许同时选择多个 xff0c 本文只是通过
  • nginx做负载均衡服务器,配置动静分离

    nginx做负载均衡服务器 xff0c 配置动静分离 1 题目要求 xff1a 后端RS服务器 台部署LNMP nginx1 22 43 mysql8 0 43 php8 1 xff0c 台部署 httpd 要求nginx和php使 编译安
  • 常用自动化运维工具简介和Ansible安装

    自动化运维工具 Puppet Puppet是历史悠久的运维 具之 它是 种基础架构即代码 xff08 IaC xff09 具 xff0c 使 户可以定 义其 基础架构所需的状态 xff0c 并使系统 动化以实现相同状态 Puppet可监视