Linux天天见
一、Linux基础篇
1. 发行版本
redhat/centos/suse/debian/
2. 目录结构
/bin
/boot -> grub
/dev
/etc ->init.d sysconfig
/home -> dmtsai Iccnet
/lib -> modules
/mnt
/opt/
/proc
/root
/sbin 做磁盘/网络的配置
/src
/sys
/tmp 所有用户都可以存放的目录,系统管理员一般会定期清除/tmp目录
/usr ->bin ->X11R6 ->share -> local
/var ->log ->lib ->spool ->run 日志文件
/usr
/var
3. 基础服务及组件
FW:防火墙
LB:负载均衡
FTP:
NFS:NFS(Network File System)即网络文件系统。其他参考GFS
MAIL:
DHCP:分配IP
NTP:时间服务器
DNS:
GW: 网关(网络设备,交换机),跨网段服务器之前交换
4. 远程登录
1)远程登录Linux-SSH
(1)口令登录
用户->登录请求->主机
用户<-主机公钥<-主机
用户->公钥加密密码->主机
用户<-主机私钥解密,密码ok允许登录<-主机
用户<-密码ERROR,拒绝登录<-主机
(2)公钥登录
用户->登录请求->主机(存有用户公钥)
用户<-随机字符串<-主机(存有用户公钥)
用户->用户私钥加密字符串->主机(存有用户公钥)
2)Security CRT
定时发送空格,这样security crt就可以一直保持登录。(注意可能更改服务器里的文件)
buffer调大
Appearance 字体设置UTF-8
5. 运维提供的工具及介绍
开发日志访问规则,里面有脚本,可批量跑脚本
查看,下载,批量命令
6. 异常排查
系统错误日志: /var/log.{message,cron,boot.log}
应用日志
性能数据:cpu、内存、io
JVM状态
实时性能工具:
top:综合,偏cpu,内存
1 多核
b 高亮
x 选择列
shift + 箭头
dstat:综合、磁盘
dstat -lcms --top-cpu
iostat:
pidstat: pidstat -d
iftop:网络、实时刷新(类似工具还有nload,ifstat)
nethogs
ss
free
Netstat、ss
内存:
free -m
dstat -lcms --top-mem
IO:
iostat -x 1
dstat -lcmd --top-mem
pidstat
网络
ss -nap
历史性能数据:
sar(每10分钟记录一次)
sar -f saNUM
zabbix
CAT
二、 JVM性能分析
1. Java CPU消耗过多问题排序
top查看java消耗CPU
开启top的线程模式,找出消耗CPU最多的java线程ID
thread-id转为十六进制
jstack javapid > /tmp/jstatck.log
从jstack.log,查看该线程的运行情况
2. Java内存消耗过多问题排查
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath
OR jmap -dump:format=b,file=xxx.hprof<pid>
MAT
jmap -histo:live pid查看类的示例
jstat -gcutil pid 200 200 查看GC情况
三、运维篇
1. 运维的类别: 应用运维,系统运维,DBA
2. 真实的运维
(1)Dev和Ops的相互能力传递
(2)工具可视化
(3)价值观
客户第一、效率优先、持续优化、责任共担、紧密合作
3. 典型的网站拓扑
Fire Wall
负载均衡
应用系统
DB/缓存
4. 万级别系统管理
(1)大批量物理机装机
(2)怎样提高物理资源的使用率
(3)虚拟化:KVM
(4)怎样定制各种操作系统需求
(5)资产怎样管理
(6)服务器和应用的关联:CMDB
(7)。。。
5. 大规模应用管理
(1)可持续的稳定性保障
(2)变更
灰度,窗口,风险意识(敬畏产线变更)
(3)不同/相同应用集群差异化的管理
配置文件
入库配置
可运维性、可拓展性
(4)应用交付(发布)管理
效率(灵活)
风险(灰度),发布包的正确性,变更内容风险
(5)应用系统容量评估
(6)关键组件(中间件等)管理
(7)日常事务管理
N研发 VS 1运维
6. 高可用方案
(1)远程调用框架
(2)集群化及消除单点
(3)缓存
(4)静态化
(5)降级
F5降级
Nginx降级
Client降级
(6)容灾
渠道备份:
短信
银行
第三方支付
运营商线路
IDC容灾机房
切换:
自动化切换
半自动化切换
7. 监控
(1)应用监控
异常
调用耗时,失败率等
Linux天天见的更多相关文章
- 大话重构 之 原来反OO天天见
在OO(面向对象)时代长大的小伙伴们一定记得: 面向对象的基石:把数据和依赖该数据的行为封装在一起. 但我们经常遇到一个类依赖其它类的数据的情况.不多的话,正常,对象间势必存在交互,毕竟完全独立的类无 ...
- 【Linux探索之旅】第二部分第三课:文件和目录,组织不会亏待你
内容简介 1.第二部分第三课:文件和目录,组织不会亏待你 2.第二部分第四课预告:文件操纵,鼓掌之中 文件和目录,组织不会亏待你 上一次课我们讲了命令行,这将成为伴随我们接下来整个Linux课程的一个 ...
- Linux入门第二天——基本命令入门(上)
一.常用命令介绍 常见命令可参考:http://man.linuxde.net/ http://linux.51yip.com/ 请对照参考! 常用的快捷键:http://blog.csdn.net/ ...
- 【Linux探索之旅】第二部分第三课:文件和文件夹,组织不会亏待你
wx_fmt=jpeg" alt="" style="max-width:100%; height:auto!important"> 内容简单介 ...
- 77个常用Linux命令和工具
77个常用Linux命令和工具 Linux管理员不能单靠GUI图形界面吃饭.这就是我们编辑这篇最实用Linux命令手册的原因.这个指南是特别为Linux管理员和系统管理员 设计的,汇集了最有用的一些工 ...
- Linux 驱动开发
linux驱动开发总结(一) 基础性总结 1, linux驱动一般分为3大类: * 字符设备 * 块设备 * 网络设备 2, 开发环境构建: * 交叉工具链构建 * NFS和tftp服务器安装 3, ...
- 高速开车换底盘记:Windows 与 Linux 部署都抗住了,但修车任务艰巨
抱歉,又是一篇流水账,在排查问题的焦头烂额中写博客的确是一个挑战,望大家见谅. 今天园友溪源More发了一篇博文博客园翻车启示录,而翻车之后的最新进展是——昨天下午我们又把 .net core 引擎的 ...
- [转载] 深入理解Android之Java虚拟机Dalvik
本文转载自: http://blog.csdn.net/innost/article/details/50377905 一.背景 这个选题很大,但并不是一开始就有这么高大上的追求.最初之时,只是源于对 ...
- 【ASP.NET Core】EF Core - “影子属性” 深入浅出经典面试题:从浏览器中输入URL到页面加载发生了什么 - Part 1
[ASP.NET Core]EF Core - “影子属性” 有朋友说老周近来博客更新较慢,确实有些慢,因为有些 bug 要研究,另外就是老周把部分内容转到直播上面,所以写博客的内容减少了一点. ...
随机推荐
- Poj 2528 Mayor's posters 分类: Brush Mode 2014-07-23 09:12 84人阅读 评论(0) 收藏
Mayor's posters Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 40570 Accepted: 11798 ...
- Sea.js入门
本文只是seajs的入门贴.要详细了解,请看GitHub主页上的相关链接,精彩不断,精选几篇: 前端模块化开发的价值 前端模块化开发的历史 ID和路径匹配原则 与RequireJS的异同 模块的加载启 ...
- Core Data数据库迁移
一. Lightweight Migration i. 适合场景 Simple addition of a new attribute Removal of an attribute A non-op ...
- 在JavaScript中实现yield,实用简洁实现方式。
原题还是老赵的: http://blog.zhaojie.me/2010/06/code-for-fun-iterator-generator-yield-in-javascript.html 原以为 ...
- DirectShow 最简单的入门 -- 播放一段视频
#include <dshow.h> #pragma comment(lib,"strmbase.lib") #pragma comment(lib,"qua ...
- Extjs文本输入框
var loginForm = Ext.create('Ext.form.Panel', { title: '单行输入', renderTo: Ext.getBody( ...
- Linuxshell脚本之if条件判断
IF条件判断 .基本语法: if [ command ]; then 符合该条件执行的语句 fi .扩展语法: if [ command ];then 符合该条件执行的语句 elif [ comman ...
- UVALive6571 It Can Be Arranged(最小路径覆盖)
题意:现在有n个课程,每个课程有一定的参与人数,然后每个课程有开始时间和结束时间ai,bi. 而且给定了一个矩阵clean(ij),表示的是上完i课程需要clean[i][j]的时间打扫卫生才能继续上 ...
- group_concat
分割字符串 group_concat(a.EvidencesID separator ',') as EvidencesID #在MySQL配置文件(my.ini)中默认无该配置项,使用默认值时,值为 ...
- C# Socket 入门2(转)
现在来传一个图片看看, 改改程序, 看看服务端 图片为 140K, 1.jgp 1. 服务端 1 using System; 2 using System.Collections.Generic; ...