实施运维面试题及答案.docxVIP

实施运维面试题及答案.docx

本文档由用户AI专业辅助创建,并经网站质量审核通过
  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

实施运维面试题及答案

一、运维基础技能

1.请描述运维工程师的核心职责,与开发工程师的协作边界在哪里?

核心职责包括:保障业务系统7×24小时稳定运行,优化资源利用率,降低故障率;推动自动化运维体系建设,提升变更效率;监控系统性能与安全,及时发现并处理潜在风险;制定容灾备份策略,确保业务可恢复性。与开发的协作边界:运维负责基础设施(服务器、网络、存储)的稳定,开发负责应用程序的功能实现与性能优化;运维提供标准化的部署环境,开发提交符合规范的部署包;故障排查时,运维定位基础设施或中间件问题,开发定位应用逻辑或代码问题;容量规划中,运维基于历史数据预测资源需求,开发提供业务增长预期。

2.日常工作中,你会通过哪些指标评估系统稳定性?如何设定合理的阈值?

关键指标包括:服务可用性(如HTTP请求成功率≥99.9%)、接口响应时间(P99≤500ms)、服务器CPU/内存/磁盘利用率(均值≤70%,峰值≤85%)、数据库QPS/TPS(达到设计容量的80%时触发预警)、网络丢包率(≤0.1%)、日志错误率(≤0.01%)。阈值设定需结合业务特性:高并发电商系统的CPU峰值阈值可放宽至90%(预留大促弹性空间),而金融交易系统的响应时间P99需严格控制在300ms内;通过历史数据的3σ原则(均值±3倍标准差)确定基线,结合业务SLA(如可用性99.99%对应年宕机时间≤53分钟)反推阈值,最终通过灰度验证调整。

3.当业务提出“将数据库从MySQL迁移至TiDB”的需求时,你的评估流程是什么?

评估流程分四步:①业务适配性分析:梳理现有SQL语句,检查是否包含TiDB不支持的功能(如存储过程、触发器);统计读写比例(TiDB适合读多写少或混合场景);评估数据量(单库超100GB时TiDB分片优势更明显)。②性能测试:搭建与生产同构的测试环境,使用sysbench模拟真实业务压力,对比迁移前后QPS、延迟、锁竞争情况;重点测试事务一致性(如跨分片事务的性能损耗)。③成本测算:计算TiDB集群所需节点数(通常3个PD节点+至少3个TiKV节点),对比原MySQL主从架构的服务器成本;评估运维复杂度(需掌握TiDB监控工具如Grafana+Prometheus,扩容缩容操作)。④风险预案:制定回滚方案(备份原MySQL数据,保留双写过渡期);规划迁移窗口期(选择业务低峰期,如凌晨0-4点);准备应急脚本(如迁移失败时快速切回原库)。

二、Linux系统与工具

4.如何定位一台Linux服务器CPU持续90%以上的问题?请描述具体操作步骤。

步骤1:使用top命令查看CPU占用率,按P键排序(基于%CPU),找到占用最高的进程PID。

步骤2:通过ps-ef|grep[PID]确认进程所属服务(如Java应用、Nginx);若为Java进程,执行jstack[PID]stack.log生成线程快照,分析是否有死锁或大量WAITING状态线程。

步骤3:对CPU密集型进程,使用perftop-p[PID]分析具体函数调用(如某个Java方法循环次数过多);或用strace-p[PID]查看系统调用(如频繁的磁盘IO导致CPU等待)。

步骤4:检查是否有僵尸进程(top中状态为Z的进程),通过psaux|grepZ定位,联系开发确认父进程是否未正确回收子进程(需修复代码或手动kill父进程)。

步骤5:若所有用户进程CPU正常但系统CPU(sy)高,检查是否有大量上下文切换(使用vmstat15查看cs列,正常应≤1000/s),可能原因是线程数过多(如Nginxworker_processes配置超过CPU核心数)或中断异常(通过/proc/interrupts查看是否有某中断源频繁触发)。

5.如何排查“/var/log目录磁盘空间爆满”的问题?给出完整处理流程。

处理流程:①确认爆满目录:df-h查看/var分区使用情况,du-sh/var/log/定位大文件(如nginx.access.log、syslog)。②分析大文件原因:检查日志切割配置(/etc/logrotate.conf及各服务的logrotate.d文件),确认是否因rotate失效导致日志未压缩或删除(如rotate7配置但实际保留30天,可能是脚本权限问题);查看日志写入速率(tail-f日志文件观察是否有异常高频输出,如应用报错循环)。③临时处理:对正在写入的日志文件,使用cat/dev/null日志文件清空(避免直接rm导致服务继续向已删除文件写数据);对历史日志,压缩后归档至其他分区(如tar-czfl

文档评论(0)

ღ᭄ꦿ若西এ⁵²º᭄ + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档