运维测试简单概述

一、运维概述
一、什么是运维
服务器的运行维护
二、名词
一、IDC(互联网数据中心)
服务器租用、机柜租用
二、监控软件
zabbix、nagios、cactti
三、经常使用Linux操做系统
一、CentOS
二、RedHat
三、Ubuntu
四、虚拟化
五、Web正向代理(客户端知道本身使用的代理IP)
一、用途
一、访问原来没法访问的资源(google)
二、对Web服务器隐藏用户信息
六、nginx反向代理(客户端没有感受)
一、流程
客户端 -> 反向代理服务器 -> 把请求转发给内部网络的服务器
二、做用
一、保证内网安全,可使用方向代理提供WAF功能,阻止WEB攻击
二、负载均衡,优化网站的负载
七、负载均衡规则(nginx反向代理)
一、轮询 :逐一循环调度
二、权重(weight) :指定轮询概率,权重值和访问比例成正比
三、ip_hash :根据客户端IP分配固定的后端服务器
八、负载均衡实现(修改nginx配置文件)
upstream servers{#定义集群
server 10.10.10.11;
server 10.10.10.12 weight=2;
server 10.10.10.13;
server 10.10.10.14 backup;
}
server{
listen 80;
... ...
}
二、Linux经常使用命令
一、ifconfig : 查看IP地址和MAC地址
## windows中为ipconfig
二、ping :测试网络连通性
ping IP地址/域名 -c 2
三、nslookup :解析域名对应的IP地址
nslookup www.baidu.com
四、top :Linux下的任务管理器,动态显示当前全部进程CPU以及内存的使用率,q退出
五、ps -aux : 显示系统进程(PID号)
ps -aux | grep "mysql"
六、kill :杀死1个进程
sudo kill PID号
七、df -h : 查看磁盘使用状况
八、ls -lh : l表示长格式,h提供易读单位
ls -lh 文件名
九、chmod :修改文件权限
chmod +x 文件名
chmod 644 文件名
rw-r--r--
r : 4
w : 2
x : 1
十、wc -l :统计文件的行数
wc -l /etc/passwd :统计Linux系统有多少个用户
十一、sort :对文件中的内容进行排序
sort ip.txt
十二、uniq -c
一、做用 :去除重复行,并统计每行出现的次数(相邻行)
二、用法 :sort 文件名 | uniq -c
1三、find命令 :根据指定条件查找文件/目录
一、-name :文件名查找
-iname :不区分大小写
find 路径 -name "文件名"
一、查找 ~/spider目录中的全部的 py 文件
find ~/spider -name ".py"
二、-type :根据类型查找(文件 | 目录)
一、经常使用选项
-f :文件
-d :目录
-l :连接(link快捷方式)
二、查找主目录下以mysql开头的文件
find ~ -name "mysql
" -type f
三、-size :按大小查找
一、+ :大于...的文件/目录
二、- :小于...的文件/目录
三、查找/home/treana/software大于20M的文件
find ~/sofware -size +20M -type f
四、-ctime :根据时间查找
一、-ctime +1 :1天之前的文件/目录
二、-cmin -5 :5分钟之内的文件/目录
三、查找~/spider下1天之内的文件
find ~/spider -ctime -1 -type f
五、处理动做
find .... -exec Linux命令 {} ;
一、查找1天之内的以.doc结尾的文件,而后删除
find . -name "*.doc" -ctime -1 -type f -exec rm -rf {} ;
1四、ssh :远程链接到服务器
一、格式 :ssh 用户名@IP地址
二、示例 :ssh tarena@X.X.X.X
1五、scp
一、远程复制文件/目录
二、scp 文件名 用户名@IP地址:绝对路径
scp A.tar.gz tarena@X.X.X.X:/home/tarena
1六、du -sh :显示当前目录大小
du -sh 目录名
三、运维工具
一、xshell(软件,安装在windows)
安全终端模拟软件
二、xshell使用方法
文件 - 新建 - 输入服务器IP地址 - 用户名 - 密码 - 确认链接
三、Windows <--> Linux
一、安装lszrz
sudo apt-get install lrzsz
二、Windows文件 -> Linux
xshell终端 :$ rz
三、Linux文件 -> Windows
xshell终端 :$ sz 文件名mysql

一、shell编程
一、解释执行器
一、sh
二、bash
## /etc/passwd查看用户默认bash, sh解释执行器没有高亮显示,也没有自动补全
二、shell编程
一、全部的shell程序都是以 .sh 结尾
二、执行方式
一、bash test.sh
二、chmod +x test.sh
./test.sh
## 保证文件中第1行为 :#!/bin/bash
三、shell基础
一、变量赋值
一、变量名=值 : =两侧不能有空格
number=10 name="张三丰"
二、获取Linux命令的执行结果给变量赋值
一、time=$(date)
二、time=date
三、接收用户从终端输入给变量赋值
read -p "提示信息" 变量名
read -p "输入姓名:" name
三、输出语句
echo $变量名
四、'' 和 "" 的区别
一、'' 没法获取变量的值
二、"" 能够获取变量的值
read -p "Input Name:" name
echo '名字是:$name' 结果:名字是:$name
echo "名字是:$name" 结果:名字是:张三丰
五、运算符
一、算术运算符
+ - * / %
++ :自加1运算
--
运算命令(let):
一、let运算表达式
i=1
let i++
echo $i
二、expr运算表达式
i=1
sum=expr $i + 5
echo $sum
二、比较运算符
一、文件状态
-e : 文件/目录是否存在
-d : 判断是否为目录
-f : 判断是否为文件
二、字符比较
= !=
空 :-z
非空 :!-z 或者 -n
三、数值比较
等于 :-eq
大于 :-gt
>= :-ge
小于 :-lt
<= :-le
不等于:-ne
四、逻辑比较
逻辑与 :&&
逻辑或 :||
六、if条件判断
一、语法格式
if [ 条件 ];then
执行语句
elif [ ];then
执行语句
else
执行语句
fi
二、输入2个数字,比较大小
七、for循环1
一、语法格式
for 变量名 in 值列表
do
执行语句
done
二、造数方法 : seq 起始值 步长 终止值
seq 5 : 1 2 3 4 5
seq 1 2 10 : 1 3 5 7 9
seq 2 2 10 : 2 4 6 8 10
三、用for循环输出1 2 3 4 5
八、C-for循环
一、语法格式
for ((赋初值;条件判断;步长))
do
执行语句
done
二、C-for循环输出1 2 3 4 5
九、while循环
一、语法格式
while [ 条件 ]
do
执行语句
done
二、输出1-10之间的整数
十、函数
一、语法格式
函数名(){
代码块
}
# 函数调用
函数名
二、在用户主目录建立一个文件夹,若是不存在就建立,若是存在提示用户一下
二、每隔5分钟检查根分区使用量,低于20G时发出警告
#!/bin/bash
while [ 1 -eq 1 ]
do
h=df -h | grep "/$" | awk '{print $4}' | awk -F "G" '{print $1}'ios

if [ $h -lt 20 ];then
      echo "根分区将满,请输出没必要要的文件"
  fi

  sleep 300

done
三、计划任务+备份脚本(天天18:00作数据备份)
#!/bin/bash
day=$(date +%F)
dir=/home/tarena/mydir
mysqldump -hlocalhost -uroot -p123456 db5 > $dir/db5-$(date +%F).sql &> /dev/null
echo "数据库备份成功"nginx

计划任务操做:
crontab -e
0 18 * * * bash /home/tarena/sh/backup.shsql

一、shell编程
一、解释执行器
一、sh
二、bash
## /etc/passwd查看用户默认bash, sh解释执行器没有高亮显示,也没有自动补全
二、shell编程
一、全部的shell程序都是以 .sh 结尾
二、执行方式
一、bash test.sh
二、chmod +x test.sh
./test.sh
## 保证文件中第1行为 :#!/bin/bash
三、shell基础
一、变量赋值
一、变量名=值 : =两侧不能有空格
number=10 name="张三丰"
二、获取Linux命令的执行结果给变量赋值
一、time=$(date)
二、time=date
三、接收用户从终端输入给变量赋值
read -p "提示信息" 变量名
read -p "输入姓名:" name
三、输出语句
echo $变量名
四、'' 和 "" 的区别
一、'' 没法获取变量的值
二、"" 能够获取变量的值
read -p "Input Name:" name
echo '名字是:$name' 结果:名字是:$name
echo "名字是:$name" 结果:名字是:张三丰
五、运算符
一、算术运算符
+ - * / %
++ :自加1运算
--
运算命令(let):
一、let运算表达式
i=1
let i++
echo $i
二、expr运算表达式
i=1
sum=expr $i + 5
echo $sum
二、比较运算符
一、文件状态
-e : 文件/目录是否存在
-d : 判断是否为目录
-f : 判断是否为文件
二、字符比较
= !=
空 :-z
非空 :!-z 或者 -n
三、数值比较
等于 :-eq
大于 :-gt
>= :-ge
小于 :-lt
<= :-le
不等于:-ne
四、逻辑比较
逻辑与 :&&
逻辑或 :||
六、if条件判断
一、语法格式
if [ 条件 ];then
执行语句
elif [ ];then
执行语句
else
执行语句
fi
二、输入2个数字,比较大小
七、for循环1
一、语法格式
for 变量名 in 值列表
do
执行语句
done
二、造数方法 : seq 起始值 步长 终止值
seq 5 : 1 2 3 4 5
seq 1 2 10 : 1 3 5 7 9
seq 2 2 10 : 2 4 6 8 10
三、用for循环输出1 2 3 4 5
八、C-for循环
一、语法格式
for ((赋初值;条件判断;步长))
do
执行语句
done
二、C-for循环输出1 2 3 4 5
九、while循环
一、语法格式
while [ 条件 ]
do
执行语句
done
二、输出1-10之间的整数
十、函数
一、语法格式
函数名(){
代码块
}
# 函数调用
函数名
二、在用户主目录建立一个文件夹,若是不存在就建立,若是存在提示用户一下
二、每隔5分钟检查根分区使用量,低于20G时发出警告
#!/bin/bash
while [ 1 -eq 1 ]
do
h=df -h | grep "/$" | awk '{print $4}' | awk -F "G" '{print $1}'shell

if [ $h -lt 20 ];then
      echo "根分区将满,请输出没必要要的文件"
  fi

  sleep 300

done
三、计划任务+备份脚本(天天18:00作数据备份)
#!/bin/bash
day=$(date +%F)
dir=/home/tarena/mydir
mysqldump -hlocalhost -uroot -p123456 db5 > $dir/db5-$(date +%F).sql &> /dev/null
echo "数据库备份成功"数据库

计划任务操做:
crontab -e
0 18 * * * bash /home/tarena/sh/backup.sh编程

相关文章
相关标签/搜索