一、最小化原则 (1)安装最小化 (2)开机启动服务最小化 (3)操作最小化 (4)权限最小化 (5)配置参数合理,不要最大化 二、端口优化 远程登录的端口默认是22号端口,这是大家都知道的。 所以为了安全着想,我们要修改服务器远程连接端口,这样黑客就不好破解你的linux服务器。同时,默认登录的用户名为root,我们可以修改配置,使远程不能使用root登录。 sudo+命令 普通用户使用root授予普通用户的特定权限 普通用户模式下 sudo-l查看你拥有什么权限 visudo 修改sudo权限(本质是修改/etc/sudoers) 四、内核的优化 root@cai ~]# cat /dev/null 锁定关键文件系统: [root@cai ~]# chattr +i /etc/passwd /etc/gshadow /etc/inittab 七、linux clientmqene/目录垃圾文件,防止inodes节点被沾满(centos6.5有默认清理不需要设置) 8)精简开机自启动服务(crond,ssh,network,syslog) 9)以上有 八linux
文章目录 影响Linux性能的因素 CPU 内存 磁盘I/O性能 网络宽带 操作系统相关资源 系统安装优化 内核参数优化 文件系统优化 应用程序软件资源 系统性能分析工具 vmstat命令 iostat ---- 操作系统相关资源 系统安装优化 系统优化可以从安装操作系统开始。当安装Linux系统时,磁盘的划分、交换分区内存的分配都直接影响以后系统的运行性能. 内核参数优化 系统安装完成后,优化工作并没有结束。接下来。还可以对系统内核参数进行优化。不过,内核参数的优化要和系统中部署的应用结合起来整体考虑。 等网络内核参数 ---- 文件系统优化 在Linux下可选的文件系统有ext2、ext3、ReiserFS、ext4、XFS。 所以,对应用程序的优化是性能优化过程的重中之重。 ---- 系统性能分析工具 如何从系统上发现是某个方面或某几个方面出现问题了呢?这就需要使用Linux系统提供的几个常用性能分析工具。
一、优化内核相关参数⚙️内存管理参数vm.swappiness:控制系统使用swap的倾向,默认60。若内存充足可调低至10,减少swap依赖。 -应用场景-高并发Web服务、数据库、消息队列等场景需显著提高这些限制##三、磁盘调度策略Linux支持多种I/O调度器,不同场景选择不同策略:-noop-简单FIFO队列,不做排序,适合SSD等无需优化寻道的设备 -mq-deadline/kyber(现代内核)-针对多队列设备优化,适合NVMeSSD和高并发场景。 /bin/bashLinux性能优化一键脚本set-eecho">>>开始Linux性能优化..."一、优化内核参数echo">>>优化内核参数..." ```总结内核参数优化→控制内存/网络行为,减少瓶颈。资源限制提升→保证高并发应用不因系统默认限制崩溃。磁盘调度策略→根据硬件特性选择最优算法,提升I/O性能。
性能优化 性能指标 高并发和响应快对应着性能优化的两个核心指标:吞吐和延时 应用负载角度:直接影响了产品终端的用户体验 系统资源角度:资源使用率、饱和度等 性能问题的本质就是系统资源已经到达瓶颈,但请求的处理还不够快 下面是常用的Linux Performance Tools以及对应分析的性能问题类型。 然后定位到具体代码位置进行优化即可。 僵尸进程 上述优化后iowait显著下降,但是僵尸进程数量仍旧在增加。 上下文切换本身是保证Linux正常运行的一项核心功能. 如果是软中断导致用/proc/softirqs CPU优化 应用程序优化 编译器优化: 编译阶段开启优化选项, 如gcc -O2 算法优化 异步处理: 避免程序因为等待某个资源而一直阻塞,提升程序的并发处理能力
hard noproc 65535 soft nofile 65535 hard nofile 65535 **生产环境内核参数调整:/etc/sysct.conf 解释 LINUX 简单抗D LINUX性能评估 vmstat 2 10 sar -u 2 10 CPU性能 free -m 性能指标 iostat -d 1 10 磁盘IO性能 sar -d 1 10
sshd_config PermitRootLogin no 增加sudoer组 /etc/sudoers %sysadm ALL=(ALL) NOPASSWD: ALL 优化系统内核参数 kernel.shmmni = 4096 kernel.msgmnb = 65536 kernel.msgmax = 8192 kernel.perf_event_paranoid = 2 sysctl -p 优化程序运行参数 nofile 65535 /etc/security/limits.d/20-nproc.conf soft nproc 65536 root soft nproc unlimited 优化
概述 在Linux 学习笔记一大体介绍了一些简单的Linux知识和一些简单的优化。 下面我们来学习一下Linux和Linux一些安全知识(Linux是基于内核为2.6.32-642 CentOS x86_64操作系统)。 内核优化 针对不同的服务和应用来优化Linux内核,比如针对Apache和Nginx等来设置优化Linux内核,如果针对Oracle设置相应的设置Linux内核优化。 如果没有特殊的要求可以不用设置自己的Linux内核优化。我们下边设置的内核参数主要是适用于Nginx,Squid等web服务。 在优化之前,我们通过命令查看当前连接统计数: [brian@Master ~]$ netstat -n | awk '/^tcp/ {++S[$NF]} END{for(a in S) print a
1、新建用户 $ useradd -m WHO #新建用户,并在/home下创建相应目录 $ passwd WHO #设置passwd 分组、权限等可自行查找 2、源文件(更新源,以cenos 7为例) 对于CentOS 7系统更新‘阿里云’源文件 $ wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 或者 $ curl -o /etc/yum.repos.d/CentOS-Base
刚安装好系统之后,如何对服务器进行基础优化: 1、关闭SElinux SElinux是美国国家安全局NSA对于强制访问控制的实现 [root@xinsz08-64 ~]# setenforce 0 *#SELINUX=disabled#g' /etc/selinux/config 2、精简开机系统启动 linux服务器在运行过程中,会有很多默认的服务在运行,而且这些服务通常是没用,这些服务占用了系统资源 ,存在安全隐患,关闭这些没用的服务 1) sshd 远程连接服务,需要开启,要不然无法连接linux。 ][root@xinsz08-64 ~]# chkconfig iptables off[root@xinsz08-64 ~]# service iptables stop 4、最小化原则安装 1 )linux 2) 操作系统命令最小化 登录linux用户量最小化,不要使用root,使用普通用户即可 4) 普通授权最小化,即只给必须的管理系统的命令 5)linux系统文件及目录权限设置最小化,禁止随便修改,更改
1.1 查看Linux版本 1.1.1 系统版本 [root@znix ~]# cat /etc/redhat-release CentOS release 6.9 (Final) 1.1.2 内核版本 0:off 1:off 2:off 3:off 4:off 5:off 6:off 1.7 显示乱码解决 1.7.1 查看linux 系统字符集 [root@znix ~]# echo $LANG en_US.UTF-8 1.7.2 查看远程软件的字符集 连接软件的字符集是否与系统的一致 1.7.3 乱码解决办法 1) linux系统字符集修改
iptables(iptables工作场景如果有外网IP一定要打开,高并发除外) 调整文件描述符的数量 精简开机启动服务(crond rsyslog network sshd) 内核参数优化
日常工作中 可以以这个负载做为一个快速发生系统是否有负载问题的指标,另外可以以监控的方式覆盖 CPU报警,当然监控越细越好,不同的负载 1.6 推荐命令工具 stress 用来模拟 Linux 系统压测工具 另外,当进程只有一个线程的时候 大家可以理解就是线程切换 根据 Tsuna 的测试报告,每次上下文切换都需要几十纳秒到数微秒的CPU时间,所以优化这个切换非常重要。
只有找到它,才能更高效、更针对性地进行优化。 GDB(The GNU Project Debugger), 这个功能强大的程序调试利器;但是GDB调试会导致程序中断,不适合生产环境直接调试 Linux perf 神器 http://www.brendangregg.com
一、selinux和防火墙优化 1、SElinux selinux 安全增强型 Linux(Security-Enhanced Linux)简称 SELinux,它是一个 Linux 内核模块,也是 Linux selinux,首先用root的身份登录系统,打开一个终端输入gedit /etc/selinux/config命令,回车之后会打开一个文件,将所标记出来部分的enforcing改为disabled,保存之后重启linux systemctl stop firewalld.service停止防火墙,systemctl disable firewalld.service禁止防火墙服务开机启动,接下来我们看一下如何设置中文 二、中文设置优化 如果系统的时间不准,自己手动设置起来比较麻烦,我们可以看下怎么来优化一下 同样还是找到设置,在里面找到详细信息,展开之后可以看到日期和时间的设置,两个自动设置的选项打开,如果你的虚拟机可以联网的话,过一会就会看到时间正常了 四、自启动服务优化 自启动服务优化的方式类似我们之前提到的停止firewalld,但是首先我们要确认一下有哪些服务是开机启动的,然后利用之前用过的systemctl stop servername
学习性能优化第一步了解性能指标 我们最常见的两个核心指标 “吞吐” 和“时延” [image.png] 性能问题的本质就是系统资源已经达到了瓶颈,但是请求资源还不够快,无法支撑更多的请求。 这包含了一些列的步骤,比如以下的步骤: 选择指标评估应用程序和系统性能 为应用程序和系统性能设定目标 进行性能基准测试 性能分析定位瓶颈 优化系统和应用程序 性能的监控和告警 说到 性能分析 必须要提大师 布伦丹·格雷格(Brendan Gregg)以及其相关的一张经典图 可以查看详细链接http://www.brendangregg.com/Perf/linux_perf_tools_full.png
什么是上下文切换 根据任务的不同 CPU上下文切换可以分为进程上下文切换 线程上下文切换和中断上下文切换 CPU上下文切换是保证Linux系统正常工作的核心功能之一,Linux多任务操作系统主要原因之一就是因为将
1、mii-tool -v eth0 查看物理网卡的协商方式,相关信息 image.png 2、ethtool ens33 image.png 3、ifconfig 4、ip -s link //统计信息 image.png 5、sar -n DEV //网卡的接收和发送速率 sar -n SOCK 6、图形化工具 gkrellm、etherape 7、iptraf-ng -d ens33 //实时流量 image.png iptraf-ng -s ens33
Linux 性能优化是个系统工程,除了要学习那些基础知识点之外,还有 2 点比较重要: 掌握性能优化的思路和方法,尝试大量 Linux 性能工具; 从学习到输出,说白了就是不断实践,从实践中总结经验。 我相信你一定见过他所描绘的 Linux 性能工具图谱: △ 图片来自 brendangregg.com 这个图是 Linux 性能分析最重要的参考资料之一,它告诉你在 Linux 不同子系统出现性能问题后 为了让你对性能有个全面的认识,可以看看下面这张思维导图,里面涵盖了大部分性能分析和优化都会包含的知识。 △ Linux 性能优化思维导图 另外,我还要特别强调一点,就是性能工具的选用。 去年年末那会儿,我看极客时间出了个《Linux 性能优化实战》专栏,作者是倪朋飞,上面那张详细的知识图谱就是他画的。 哥们有着近 10 年的云计算工作经验,所以对 Linux 性能优化这套东西有一些自己的思考和沉淀。
Linux 软中断 使用hping3 来模拟SYN攻击观察软中断 # hping3 -S -p 80 -i u10 10.0.0.31 观察发现CPU使用率比较低,到底是什么原因导致被测试机器比较卡呢
Linux操作系统基础优化配置 在安装完成Linux系统之后,我们是需要进行一些优化,使操作系统更加的安全,同样也是一些必备的准备工作(为日后的生产环境) 大牛与高手请略过即可!!!!!!