51CTO学习笔记--Linux运维故障排查思路与系统调优技巧视频课程(高俊峰)
51CTO学习笔记--Linux运维故障排查思路与系统调优技巧视频课程
第一课 Linux运维经验分享与思路
1、一般把主机名,写到hosts下 127.0.0.1 hostname,因为很多应用要解析到本地。oracle没有这个解析可能启动不了。
2、注释掉UUID以及MAC地址,需要绑定网卡的时候,这个可能会有影响。
3、磁盘满了无法启动, var下木有空间,无法创创建PID等文件,导致文件无法启动,按e 进入single 然后b 重启进入单用户模式。
4、ssh登陆系统策略
/etc/ssh/sshd.conf port 改成5位数 设置 允许IP
permitroot 改为 no
使用秘钥登录 可以关闭 passwordauth
GSSAPIAuthentication no 以及UseDNS no 提高ssh链接速度
5、用户权限策略
禁止root用户远程登录系统,授权仅普通用户登录系统,需要管理员权限执行 sudo,避免root用户登录。
/etc/sudoers (普通用户切换到root权限,sudo 时不需要加密码)
liqilong ALL=(ALL) NOPASSWD: ALL
6、更新yum源以及必要软件安装
常用的yum源:epel、repoforge软件更新快 系统升级 yum update
7、定时自动更新服务器时间
1、) crontab 推荐服务器 time-a.nist.gov ntp.sjtu.edu.cn
/usr/sbin/ntpdate ntp.sjtu.edu.cn >> /var/log/ntp.log 2>&1;
/sbin/hwclock -w
执行同步,以及保存
2、) 架设ntp server /etc/ntp.conf
8、精简开机自启动服务
线上服务建议开启的服务:crond,network,syslog,sshd,iptables,udev-post (资源安全设置),sysstat(系统负载、资源监控)
全部关闭
for serv in `chkconfig --list|grep 3:on|awk '{print $1}'`;do chkconfig --level 3 $serv off;done
然后开启需要的服务
for serv in ‘crond network syslog sshd iptables udev-post sysstat;do chkconfig --level 3 $serv on;done
9、删除无关用户组、用户
查看组 more /etc/group 查看用户 /etc/passwd
10、定时自动清理垃圾文件
du -sh ./* 查看目录里 文件的大小
ls -al 查看全部文件(使用习惯)
/var/spool/cron 每个用户的定时任务都会生成相应的目录
11、重要文件安全策略(重要文件加锁,禁止修改)
chattr +i /etc/sudoers (加锁) chattr -i (去锁)
chattr +i /etc/shadow /etc/passwd /etc/grub.conf
12、内核参数优化
1、关注ulimit命令 ulimit -a 查看相关参数
需要重点关注:ulimit -c -f -n -u
ulimit -c core file 类似于 debug,调试程序 ulimit -c unlimited 打开core file
ulimit -f file size 限制文件大小
ulimit -n open file 最大打开文件个数,大一点 一般 65536,tomcat 可能是404,没有更多的文件可以打开。
ulimit -u 最大用户进程数,某个用户的最大进程数,一般不需要修改,系统一般设置成最大值。
临时生效,永久生效需要配置文件 /etc/security/limits.conf 以及 /etc/security/limits.d/20-nproc 两个同时配置,20-nproc生效,max user processes 设置在20-nproc
/etc/sysctl.conf
net.ipv4.ip_forward = 0 ,默认关闭,要做代理服务器或nat需要打开
* soft nofile 65536 最大打开文件个数
* hard nofile 65536
13、系统故障排查关注点
1、tail -f /var/log/messages #应用日志查询
2、tail -f /var/log/secure #登陆日志查询
3、dmesg #系统日志查询(内存信息,系统重启保存在/var/log/dmesg)
4、/var/tmp, /tmp #容易***点查询,权限777
5、crontab -l、/etc/crontab #计划任务查询(经常***对象)
/etc/cron.d 目录下会被 crontab调用, 各个目录(cron.daily/ cron.hourly/ cron.monthly/ cron.weekly/)里面的文件
第二课 Linux系统性能优化思路和方法
一、影响Linux性能的各种因素
1、系统硬件资源
(1)CPU 个数 频率
processor、physical id 、cpu cores(每个CPU核数)、
如何判断CPU 超线程:核数是 physical id 、cpu cores 的两倍使用了超线程
消耗CPU的业务:动态web服务,mail服务
(2)内存 64位系统、磁盘操作改到内存中 swap分区:任何时候都需要,物理内存足够大,swap可以小点 , 服务器内存大于16G,swap可以设为16G,小于16G,swap=物理内存也可以是物理内存*2
消耗内存的业务:内存数据库(redis、hbase、mongodb)读写在内存,支持大并发
(3)磁盘IO
RAID技术:RAID0/1/5/01/10 性能、安全性,RAID1 互为镜像 ,安全性 ; RAID 0 两个磁盘 变为一个; RAID5 带奇偶校验 ;RAID10 底层两个磁盘 RAID0 然后再RAID1,RAID10 安全性、性能 ;数据库重要 RAID10。
消耗磁盘的业务:数据库服务器、、、
(4)网络带宽
网卡/交换机的选择:千兆网卡、接入交换全千兆、核心交换万兆交换
操作系统双网卡绑定:双网卡的负载均衡或者累加
消耗宽带的业务:hadoop平台,视频业务平台
2、操作系统相关资源
系统安装优化、内核参数优化、文件系统优化(xfs高性能文件系统,linux 3.10内核开始默认支持)
读操作频繁,同时小文件众多的应用:首选ext4文件系统,接下来依次是xfs、ext3
写操作频繁的应用:首选是xfs、接下来是ext4和ext3
二、Linux性能优化工具
1、cpu性能评估工具
(1)vmstat 3 5 每三秒输出一次,输出5次
procs r:运行和等待cpu时间片的进程数,这个值如果长期大于系统CPU个数,说明CPU不足,需要增加CPU核数
b:等待资源的进程数,长期比较大,CPU不足
memory :swap 切换到内存交换区的内存数量,(单位k)
buff表示 buffer cache 一般是对块设备的读写才需要缓冲。
cache 表示page cache 的内存数量,一般作为文件系统caches,频繁访问的文件都会被cached,如果cached值较大。说明caches的文件较多
swap :si 由磁盘进入内存 经常非常大内存不足
so 内存进入磁盘 经常非常大内存不足
IO : bi 从块设备读入数据的总量(读磁盘)(每秒kb)
bo 写入块设备数据的总量(写磁盘)(每秒kb)
bi+bo 超过1000,并且wa值较大,则表示 系统磁盘有问题,应该考虑提高磁盘的书写性能。
system : in 某一时间间隔中观测到的每秒设备中断数
cs 每秒产生的上下文切换
2个值越大,由内核消耗的CPU时间会越多
CPU : us 用户进程消耗的CPU时间百分比。us的值比较高时,说明用户进程消耗的CPU时间多,但是如果长期大于50%,就需要考虑优化程序或算法。
sy 内核消耗的CPU时间百分比
us+ys 参考值80% 大于80%可能内存资源不足
id 显示了CPU处在空闲状态的时间百分比。
wa :io等待所占用的CPU时间百分比,wa越高,说明等待越严重。
2、内存评估
(1) free -m
(2)sar/ pidstat -r 内存 -u cpu -d 磁盘
sar -r 3 5 每三秒输出一次,输出5次
sar -u 3 获取内存3秒内的状态
kbcommit 内存使用
pidstat -r -p 1 3 获取内存3秒内的状态 -p 进程 pid
3、硬盘性能
iostat -d 3 5 tps 每秒到物理磁盘的传送数,也每秒的I/O流量
4、网络性能
mtr 动态路由跟踪
traceroute 静态路由跟踪
netstat -i 查看路由情况 -r 网络接口
debug模式 Shift+F2
案例1、/etc/passwd root名称改成别的名称(test),权限不改。。。导致系统无法启动, 能登录,ps -ef发现所有进程都是 以test用户启动的
解决方案:单用户模式修改/etc/paawd
案例2、远程登录以后,立即退出,本地登录也是如此。密码错误有提示。ulmit -n 设置 问题
tail -f /var/log/secure
error :PAM:pam_open_session():Permission denied.
pam_limits: could not set limit
解决方案:ulmit -n 6553600 基本满足一般要求
limits.conf nofiles 设置过大,申请不到最大值回复到默认的值1024。
欢迎打算使用阿里云服务器的小伙伴,加我私聊!!QQ:3533470970 或直接领取阿里云幸运券:https://promotion.aliyun.com/ntms/act/ambassador/sharetouser.html?userCode=b6h928qb&utm_source=b6h928qb
转载于:https://blog.51cto.com/liqilong2010/1897683
51CTO学习笔记--Linux运维故障排查思路与系统调优技巧视频课程(高俊峰)相关推荐
- 【干货】Linux 运维故障排查思路,有这篇文章就够了
关注我,你的眼睛会怀孕 1. 背景 有时候会遇到一些疑难杂症,并且监控插件并不能一眼立马发现问题的根源.这时候就需要登录服务器进一步深入分析问题的根源.那么分析问题需要有一定的技术经验积累,并且有些问 ...
- linux 丢包多少正常_干货总结!Linux运维故障排查思路
1. 背景 有时候会遇到一些疑难杂症,并且监控插件并不能一眼立马发现问题的根源.这时候就需要登录服务器进一步深入分析问题的根源.那么分析问题需要有一定的技术经验积累,并且有些问题涉及到的领域非常广,才 ...
- Linux 运维故障排查思路,有这篇文章就够了
1. 背景 有时候会遇到一些疑难杂症,并且监控插件并不能一眼立马发现问题的根源.这时候就需要登录服务器进一步深入分析问题的根源.那么分析问题需要有一定的技术经验积累,并且有些问题涉及到的领域非常广,才 ...
- Linux运维故障排查——SSH连接Fedora不成功的原因
首先说下连接Fedora不成功的原因 ①网络服务没有开启:此时首先 关闭 NetWorkManager服务:systemctl stop NetWorkManager 然后配置网卡vi /etc/sy ...
- linux学习项目,[ Linux运维学习 ] 路径及实战项目合集
我们知道运维工程师(Operations)最基本的职责就是负责服务的稳定性并确保整个服务的高可用性,同时不断优化系统架构.提升部署效率.优化资源利用率,确保服务可以7*24H不间断地为用户提供服务. ...
- 【运维学习笔记】运维入门
前言: 这几天过的很像第一年来提高班装系统那会儿,接触了很多新的东西,大量的东西塞在脑子里!今天系统的整理了一下! 时间 事件 1周 看一些硬件的结构,拆 了一些东西(发现其实硬件也没有很神奇,是一些 ...
- linux运维工程师培训课程_《Linux运维工程师必学技能》完整版视频课程专题(1.0)...
高性能负载均衡集群HAProxy实战视频课程 13节 4小时7分钟 课程目标: 欢迎大家加入 51CTO学院Linux交流群575837909,与喜欢学习Linux小伙伴们做朋友,一起为梦想增值.高性 ...
- IDC运维如何转linux运维,智简魔方DCIM系统助力IDC运维人员解决难题
机房是企业网络的核心,需要经常维护,机房运维工程师就是这样一种职业,保障机房设备的正常运行.企业的发展离不开网络的支持,为了保障计算机相关设备的正常运转,通过对机房系统.监控设备.主机设备等进行维修和 ...
- 线上RPC超时故障排查及后续GC调优思路
本文记录了一次线上RPC服务调用超时问题的排查流程,排查过程中涉及到 JVM 优化的过程与思路,包括 JVM GC 原理以及问题排查思路,分享出来希望对大家有所帮助. 本文概要 RPC服务异常和排查过 ...
最新文章
- php将url出现 双斜杠,php-URL重写在末尾添加斜杠会破坏我的css链接
- SQLCLR(五)聚合
- LeetCode 340. Longest Substring with At Most K Distinct Characters
- 云炬Android开发笔记 使用新版本Android studio快速Build低版本项目的仓库代码(标红部分)
- HTML 鼠标坐标和元素坐标
- ssb门限_画出滤波法ssb信号调制器模型,并说明低通和高通滤波器分别得到哪个边带信号...
- “锐捷伴你行”之“300路”喊话郭德纲:有空来蹭网呀!
- mysql主从搭建_手把手教你搭建MySQL主从架构
- PDF内嵌字体分析 - 提取的文字是乱码原因分析
- ref获取元素 vue 删除子元素_vue 添加删除子元素
- QT中双击mdiArea区域打开文件(监听双击事件)
- Git和Repository简明理解(GitHub是什么?)
- android sqlite存对象,【Android基础】Android SQLite存储自定义对象
- 算法模板ACW(更新中)
- 如何实现国外域名调转到国内已备案ip
- 为什么选择Tomcat及Tomcat下载
- 免疫佐剂CpG ODN说明——艾美捷CpG ODN 方案
- Android读取手机ROM总大小方法
- 重要一步!低温压力测试成功,SpaceX星际飞船原型将进行发动机静态点火测试...
- 给自己的一封信(给未来,也给现在)
热门文章
- 上周热点回顾(10.22-10.28)
- 雷电pygame代码
- Chrome 自动化交互利器:用 tampermonkey 向页面注入自定义 Javascript
- [vuex]状态管理vuex
- 自学Python,学不会怎么办?
- 前端程序员入门、进阶必备的5大网站,你知道几个?
- 数字化技术助石油天然气行业实现碳中和
- 限制对比度自适应直方图均衡化
- 介绍一个产品的思维导图_什么叫产品思维导图(产品思维的定义)
- LeetCode——978. 最长湍流子数组(Longest Turbulent Subarray)——分析及代码(Java)