论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
虚拟化.超融合.云计算
›
虚拟化与私有云
›
天下职业技能大赛云计算赛项---Linux体系调优案例_云计 ...
天下职业技能大赛云计算赛项---Linux体系调优案例_云计算应用 职业技能赛 ...
星球的眼睛
金牌会员
|
2024-7-20 00:10:10
|
显示全部楼层
|
阅读模式
楼主
主题
555
|
帖子
555
|
积分
1665
最全的Linux教程,Linux从入门到精通
======================
linux从入门到精通(第2版)
Linux体系移植
Linux驱动开发入门与实战
LINUX 体系移植 第2版
Linux开源网络全栈详解 从DPDK到OpenFlow
第一份《Linux从入门到精通》466页
====================
内容简介
====
本书是获得了许多读者好评的Linux经典畅销书**《Linux从入门到精通》的第2版**。本书第1版出版后曾经多次印刷,并被51CTO读书频道评为“最受读者喜好的原创IT技术图书奖”。本书第﹖版以最新的Ubuntu 12.04为版本,循序渐进地向读者先容了Linux 的基础应用、体系管理、网络应用、娱乐和办公、步伐开发、服务器配置、体系安全等。本书附带1张光盘,内容为本书配套多媒体教学视频。另外,本书还为读者提供了大量的Linux学习资料和Ubuntu安装镜像文件,供读者免费下载。
本书恰当广大Linux初中级用户、开源软件爱好者和大专院校的门生阅读,同时也非常恰当准备从事Linux平台开发的各类职员。
需要《Linux入门到精通》、《linux体系移植》、《Linux驱动开发入门实战》、《Linux开源网络全栈》电子书籍及教程的工程师朋侪们劳烦您转发+评论
网上学习资料一大堆,但如果学到的知识不成体系,碰到标题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份体系化的资料的朋侪,可以点击这里获取!
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎参加我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、口试辅导),让我们一起学习成长!
天下职业技能大赛云计算赛项—Linux体系调优案例
Linux体系调优案例:
OpenStack平台调度计谋优化:
OpenStack平台镜像优化:
OpenStack平台I/O优化:
OpenStack 平台内存优化:
Linux 体系调优-防止SYN 攻击:
Linux体系调优案例:
1.Linux体系句柄先容
文件句柄,会随着进程数增长而增长。实在Linux是有文件句柄限制的,而且Linux默认一般都是1024。在生产情况中很容易到达这个值,因此这里就会成为体系的瓶颈。
在Linux体系的生产情况中,会经常碰到“too many open files”的报错。这个报错顾名思义是打开过多文件数。不外这里的files不单是文件的意思,也包罗打开的通讯链接(比如socket),正在监听的端口等等,以是有时间也可以叫做句柄(handle),这个错误通常也可以叫做句柄数超出体系限制。
在出现“too many open files”报错的时间,大多数情况是由于步伐没有正常关闭一些资源引起的,以是出现这种情况,这个时间需要检查I/O读写,socket通讯等是否正常关闭等。当然也可以通过修改参数,将体系的文件句柄限制提高,来缓解这一压力。
2.Linux体系句柄优化
1.规划节点
IP 主机名节点192.168.200.21 localhost实验节点 2.基础准备
登录云平台,进入实验主动分配一台CentOS 7.9云主机。使用云主机作为本次案例的实验节点。
(1)查看当前的句柄数
查看当前体系默认的文件句柄数目,以是优化句柄数目限制是很有必要的。命令如下:
[root@localhost ~]# ulimit -n
1024
可以看到体系默认限制是1024。体系默认的1024远远不够,会导致体系报“too many open files”的错误。
(2)修改句柄数.
修改Linux体系的句柄数限制有两种方法,一种是使用ulimit命令临时见效,另外一种是修改配置文件,永世见效。此处使用修改配置文件的方式。
留意:如果使用命令临时见效句柄限制,root用户可以调大大概调小句柄的限制,而非root用户一旦设定了值,就只能调小这个限制,不能调大,不然会报“bash: ulimit: open files: cannot modify limit: Operation not permitted”的错误。
修改配置文件调整句柄限制为65535,命令如下:
[root@localhost ~]# echo “* soft nofile 65535” >>/etc/security/limits.conf
[root@localhost ~]# echo “* hard nofile65535” >> /etc/security/limits.conf
添加配置的解释如下:
● *:代表所有用户。
● soft:凌驾文件句柄数时,仅提示。
● hard:凌驾文件句柄数时,直接限制。
修改完之后,不需要重启体系即会见效,但是需要重新登录。退出重新登录该云主机,查看当前的句柄限制,命令如下:
[root@localhost ~]# logout
Connection closed.
Last login: Tue Feb 801:58:31 2022 from 192.168.0.70
[root@localhost ~]# ulimit -n
65535
可以看到当前的限制为65535。
OpenStack平台调度计谋优化:
1.规划节点
IP 主机名节点192.168.200.11 controller控制节点 2.基础准备
根据云平台分配的主机All in one作为实验节点,该案例只研究云平台在大规模创建云主机碰到特定报错时的解决方法。
案例实行
1.OpenStack平台报错分析
在OpenStack平台经历大并发的时间,比如同一个平台,大量的用户同时创建云主机(单个用户创建大量云主机不会触发此种现象),会到达云平台的性能瓶颈,导致创建云主机报错。
大量用户同时创建云主机,会对云平台的两个服务造成性能瓶颈,一个是RabbitMQ,当RabbitMQ到达瓶颈时,会报如下错误:
ERROR oslo.messaging._drivers.impl_rabbit
[req-eb79ea09-247e-49e0-960b-0896ef978661 - - - - -]
[303415c0-e494-4ea2-8158-d66d4165600d] AMQP server on controller:5672
is unreachable: timed out. Trying again in 10 seconds.: timeout: timed
out
另一个就是DHCP。本案例重点讨论DHCP报错的情况,不考虑RabbitMQ的性能瓶颈。DHCP报错信息如下:
WARNING nova.compute.manager [req-8d9240cd-6a47-4979-a289-bdd58d399f0a
891c061e4aea4af8909a4affe0c24f92 c509a52800de4902845460fcc5318f3f -
8d899afee33641e0a094f85fbeb9b2c6 8d899afee33641e0a094f85fbeb9b2c6]
[instance: 374aa944-6cd7-4dbf-a741-5bd44623919d] Received unexpected
event network-vif-plugged-b803941a-c3ae-45d7-b962-13ba1ff00a31 for
instance with vm_state active and task_state None.
在这种情况下,因为大量的创建云主机,导致获取IP地点超时,然后就发生了如上的报错。
留意:这个报错还和计算节点的性能有关,大量创建云主机的时间,计算节点如果没有创建过该镜像的云主机,会先从控制节点复制镜像到计算节点,这也会导致速度变慢。而且在创建大量云主机的时间,对计算节点的硬盘也是一个考验,如果硬盘性能差的话,也会导致创建速度慢,大量排队,超时等现象。
2.解决计谋
在解决标题之前,起首了解创建云主机的过程,在创建虚机过程中,Nova-compute会调用wait_for_instance_event函数(nova/compute/manage.py)举行network-vif-plugged的事件等候。
在Nova-compute配置文件中有两个与该事件相关的参数- vif_plugging_timeout、vif_plugging_if_fatal,前者是等候事件的最大时间,后者是处理超时非常的方式。若在规定时间内,Nova-compute接受到了事件响应,那么虚机可正常创建,那么当超时现象发生时,Nova-compute会根据vif_plugging_is_fatal的配置采取两种处理方式。
若超时发生,并且配置文件中vif_plugging_is_fatal为True,Nova起首执行guest.poweroff,停止Qemu进程;然后执行cleanup函数,先扫除网络资源,使用函数_unplug_vifs,删除plug_vifs函数创建的ovs port,ovs agent检测到了删除端口的事件然后通知Neutron-server删除neutron db中的port信息,末了抛VirtualInterfaceCreateException。
如果vif_plugging_is_fatal为False,即便发生eventlet.timeout.Timeout非常,创建过程也会继承。然后等假造机创建乐成后,依然可以拿到IP地点。
通过上述假造机创建的过程,对于上述云平台发生的错误,就有了解决的思路,通过修改/etc/nova/nova.conf配置文件,将vif_plugging_is_fatal参数由true改为false,命令如下:
修改/etc/nova/nova.conf配置文件:
[root@controller ~]# vi /etc/nova/nova.conf
找到如下这行:
#vif_plugging_is_fatal=true
将该行的注释去掉,并将true改为false,修改完之后如下:
vif_plugging_is_fatal=false
保存退出nova.conf,末了重启Nova服务,也可以重启所有服务,命令如下:
[root@controller ~]# openstack-service restart
等候重启完毕即可。通过该参数的修改,可解决在大并发量创建假造机时,因排队超时导致假造机获取不到IP地点的报错。
OpenStack平台镜像优化:
1.OpenStack平台制作镜像
在OpenStack平台的使用过程中,镜像是一个不可或缺的组件与服务,一般来说,使用最多的是基础镜像,比如CentOS7.5;CentOS7.6;CentOS7.9等,获取这些基础镜像的方式也很简单,可以通过官网直接下载。
当用户想使用自定义镜像的时间,可以使用OpenStack平台中打快照的方式,去制作镜像,比如想制作一个带有数据库服务的镜像(具体操作不再演示)。
2.OpenStack平台镜像优化
1.规划节点
IP 主机名节点192.168.200.11 controller控制节点 2.基础准备
使用云平台分配的All in one作为实验节点,本案例只陈诉怎样优化通过打快照方式制作的镜像。
案例实行
1.OpenStack平台制作镜像
在OpenStack平台的使用过程中,镜像是一个不可或缺的组件与服务,一般来说,使用最多的是基础镜像,比如CentOS7.5、CentOS7.6、CentOS7.9等,获取这些基础镜像的方式也很简单,可以通过官网直接下载。
当用户想使用自定义镜像的时间,可以使用OpenStack平台中打快照的方式,去制作镜像,比如想制作一个带有数据库服务的镜像,可以按照如下步调操作:(具体操作不再演示)
(1)启动一个基础的CentOS镜像;
(2)连接假造机,配置Yum源;
(3)安装数据库服务;
(4)初始化数据库;
(5)设置开机自启;
(6)在OpenStack平台中将该假造机实例打成快照;
(7)在控制节点的镜像和快照存放目录/var/lib/glance/images目录下找到这个镜像文件,改名成mysql.qcow2;
通过上述的方法打快照制作镜像,可以获得一个mysql.qcow2的镜像文件,使用该文件上传至其他云平台中,今后使用该镜像启动的假造机,就带有数据库服务了。
2.OpenStack平台镜像优化
在使用打快照方式制作镜像后,镜像的大小会变得非常大,比如一个基础的CentOS镜像大小为400M左右,但是使用打快照方式制作的镜像大小会有1个G左右,具体的大小还要根据安装的东西来实际情况实际分析。
qemu-img命令中提供一个可用于镜像转换与压缩的选项,即qemu-img convert。接下来使用该命令,对已经打快照完成的镜像举行压缩操作。
使用提供的镜像CentOS7.5-compress.qcow2,下载至controller节点的/root目录下,查看镜像的大小,命令如下:
[root@controller ~]# curl -O
http://mirrors.douxuedu.com/competition/CentOS7.5-compress.qcow2
[root@controller ~]# du -sh CentOS7.5-compress.qcow2
892M CentOS7.5-compress.qcow2
网上学习资料一大堆,但如果学到的知识不成体系,碰到标题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份体系化的资料的朋侪,可以点击这里获取!
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎参加我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、口试辅导),让我们一起学习成长!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
正序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
发新帖
回复
星球的眼睛
金牌会员
这个人很懒什么都没写!
楼主热帖
体系集成项目招标要诀
Java项目:基于SSM框架实现的康健综合 ...
微调神器LLaMA-Factory官方保姆级教程 ...
SecureCRT连接Linux利用教程
防止邮箱发信泄露服务器IP教程 ...
Git必知必会根本(07):git diff的利 ...
CMake构建学习笔记11-minizip库的构建 ...
这可能是最全面的Spring面试题总结了 ...
【Neo4j】Windows11使用Neo4j导入CSV数 ...
Ubuntu上安装Chrome浏览器
标签云
挺好的
服务器
快速回复
返回顶部
返回列表