Linux系统基本技术基础

Linux系统基本技术基础

一、Linux系统升级补丁

linux系统升级补丁:
yum update -y
yum upgrade 进行验证

二、CentOS/RHEL自动更新安全补丁

1.配置自动更新

# yum update -y ; yum install yum-cron -y

安装完成以后,打开/etc/yum/yum-cron.conf,然后找到下面这些行内容,你必须确保它们的值和下面展示的一样

update_messages = yes
download_updates = yes
apply_updates = yes

第一行表明自动更新命令行应该像这样:

# yum --security upgrade

而其它的行保证了能够通知并自动下载、安装安全升级。
为了使来自 root@localhost 的通知能够通过邮件发送给同一账户(再次说明,你可以选择其他账户,如果你想这样的话),下面这些行也是必须的。

emit_via = email
email_from = root@localhost
email_to = root

2.启动自动安全更新

默认情况下, cron 任务被配置成了立即下载并安装所有更新,但是我们可以通过在 /etc/sysconfig/yum-cron 配置文件中把下面两个参数改为yes,从而改变这种行为。

# 不要安装,只做检查(有效值: yes|no)
CHECK_ONLY=yes
# 不要安装,只做检查和下载(有效值: yes|no)
# 要求 CHECK_ONLY=yes(先要检查后才可以知道要下载什么)
DOWNLOAD_ONLY=yes

为了启用关于安装包更新的邮件通知,你需要把MAILTO 参数设置为一个有效的邮件地址。

# 默认情况下 MAILTO 是没有设置的,crond 会将输出发送邮件给自己
# (执行 cron 的用户,这里是 root)
# 例子: MAILTO=root
MAILTO=[email protected]

最后,打开并启用yum-cron 服务:

------------- On CentOS/RHEL 7 -------------
systemctl start yum-cron
systemctl enable yum-cron
------------- On CentOS/RHEL 6 -------------
# service yum-cron start
# chkconfig --level 35 yum-cron on

三、Linux离线安装软件

1.在联网的机器上本地安装

#修改yum设置,让rpm包缓存到本地
vi /etc/yum.conf 

cachedir=/缓存路径   #原始值/var/cache/yum/$basearch/$releasever
#修改keepcache为1
keepcache=1  

#清空yum缓存
yum clean all

#安装你要离线安装的rpm包
yum install xxx.rpm -y  

#rpm包缓存到了/var/cache/yum下面
cd /var/cache/yum
find ./ -name *.rpm

#找到你的rpm包,并拷走就可以离线安装了

2.yum离线下载安装包

方法一:yum
yum命令本身就可以用来下载一个RPM包,标准的yum命令提供了–downloadonly(只下载)的选项来达到这个目的。

$ sudo yum install --downloadonly
默认情况下,一个下载的RPM包会保存在下面的目录中:

/var/cache/yum/x86_64/[centos/fedora-version]/[repository]/packages
以上的[repository]表示下载包的来源仓库的名称(例如:base、fedora、updates)
如果你想要将一个包下载到一个指定的目录(如/tmp):

$ sudo yum install --downloadonly --downloaddir=/tmp
注意,如果下载的包包含了任何没有满足的依赖关系,yum将会把所有的依赖关系包下载,但是都不会被安装。
另外一个重要的事情是,在CentOS/RHEL 6或更早期的版本中,你需要安装一个单独yum插件(名称为 yum-plugin-downloadonly)才能使用–downloadonly命令选项:

$ sudo yum install yum-plugin-downloadonly
如果没有该插件,你会在使用yum时得到以下错误:
Command line error: no such option: --downloadonly

方法二: Yumdownloader
另外一个下载RPM包的方法就是通过一个专门的包下载工具–yumdownloader。 这个工具是yum工具包(包含了用来进行yum包管理的帮助工具套件)的子集。

$ sudo yum install yum-utils
下载一个RPM包:

$ sudo yumdownloader
下载的包会被保存在当前目录中。你需要使用root权限,因为yumdownloader会在下载过程中更新包索引文件。与yum命令不同的是,任何依赖包不会被下载。
下载lsof示例:

yumdownloader lsof --resolve --destdir=/data/mydepot/  #resolve下载依赖

四、shell脚本

1、#!/bin/bash或者#!/bin/sh的作用

#!/bin/sh是指此脚本使用/bin/sh来解释执行,#!是特殊的表示符,其后面跟的是解释此脚本的shell的路径。

#!是对脚本的解释器程序路径,脚本的内容是由解释器解释的

#!/bin/sh是#!/bin/bash的缩减版

五、负载均衡

1、四层负载均衡和七层负载均衡的区别

四层负载,说的是基于IP+端口的负载均衡;

七层负载,说的是基于WEB请求,URL等应用信息的负载均衡。

四层常见软件是haproxy,LVS,七层常见软件是nginx。

  • Nginx优缺点:
    优点:开源软件,简单易部署;功能强大,七层负载基本可以满足所有需求。
    缺点:仅支持http,https,Email协议;对后端服务器的检测,仅通过IP+端口来检查,不可以通过URL来检查;不支持会话session保持的一致行,但可以通过IP+HASH来解决。

    调度算法:

    轮询:按请求时间逐一分配

    weight:指定轮询几率

    ip_hash:按访问IP的hash结果分配,每个访客固定访问一个后端服务器,可以解决session的问题

    fair:按后端服务器的响应时间来分配请求,响应时间短的优先分配

    url_hash:按访问url的hash结果来分配请求

  • LVS优缺点:
    优点:工作在4层,仅做分发作用,没有流量产生,因此。负载性能最强,对内存和cpu消耗率更低;
    缺点:不支持正则表达式,不支持动静分离。

    三种模式:

    NAT:网络地址转换模式。进站/出站的数据流量经过分发器

    DR:直接路由模式。只有进站的数据流量经过分发器

    TUN:隧道模式。只有进站的数据流量经过分发器

    调度算法:轮循调度、加权轮询调度、最小链接调度、加权最小链接调度、基于局部性的最少链接、带复制的基于局部性最少链接、目标地址散列、源地址散列、最短的期望的延迟、最少队列调度

  • haproxy优缺点
    优点:支持session会话保持一致,四层和七层都支持;支持通过URL来检测后端服务器的状态。
    缺点:在七层转发支持上,不如nginx强大。

    调度算法(静态和动态调度算法):

    通过修改balance字段的值从而修改其调度算法

Guess you like

Origin blog.csdn.net/weixin_47444128/article/details/120307321