当前位置:首页 > 技术分析 > 正文内容

Linux运维工程师面试题3

ruisui883个月前 (03-25)技术分析42

1.如何排查数据库故障?

  1. slow query log

slow query log 是 MySQL 的一个功能,可以记录查询执行时间超过指定阈值的语句,以便进行 SQL 优化。启用 slow query log 需要在 MySQL 配置文件中设置:

slow_query_log = 1
slow_query_log_file = /var/log/mysql/slow_query.log
long_query_time = 2

其中 slow_query_log 表示是否开启慢查询日志,slow_query_log_file 表示慢查询日志文件路径,long_query_time 表示查询执行时间的阈值。

  1. general query log

general query log 可以用来记录所有查询语句的执行情况,是排查数据库问题的重要工具之一。启用 general query log 也需要在 MySQL 配置文件中设置:

general_log = 1
general_log_file = /var/log/mysql/general.log

其中 general_log 表示是否开启 general query log,general_log_file 表示查询日志文件路径。

  1. innodb status

InnoDB 是 MySQL 自带的一种存储引擎,使用 innodb status 命令可以查看 InnoDB 引擎的状态信息,包括缓存、锁等情况。只需要在 MySQL 中执行以下命令即可查看:

SHOW ENGINE INNODB STATUS;
  1. performance schema

performance schema 是 MySQL 的一个监控工具,可以监控数据库的性能指标和状态信息。通过 performance schema,可以查看各种 MySQL 组件的性能指标,例如查询次数、缓冲区使用情况、锁等情况。

常用的 MySQL 日志和监控工具,通过它们可以了解数据库的运行状态和性能指标,以便进行问题排查和调优。在实际应用中,要根据具体情况选择合适的工具,以便更方便快捷的进行数据库调试和优化。

2.如何排查网络故障?

  1. ping

Ping 命令可以用来测试网络连接是否可达,以及连接的延迟情况。具体的使用方法如下:

ping [option] [host]

其中 option 是命令参数,host 是主机名或 IP 地址。

  1. traceroute

traceroute 命令可以用来跟踪数据包在网络中的路由情况,以便判断网络连接是否存在传输问题。具体的使用方法如下:

traceroute [option] [host]

其中 option 是命令参数,host 是主机名或 IP 地址。

  1. netstat

netstat 命令可以用来显示当前系统的网络连接状态信息,以便进行网络连接排查和调试。具体的使用方法如下:

netstat [option]

其中 option 是命令参数。

  1. tcpdump

tcpdump 命令可以用来抓取网络数据包,以便对网络数据进行分析和调试。具体的使用方法如下:

tcpdump [option]

其中 option 是命令参数。

  1. Wireshark

Wireshark 是一款比较流行的网络数据包分析软件,可以用来显示和分析网络数据包,以便排查网络问题。使用 Wireshark 需要有 GUI 界面支持,使用起来比较简单。

3.请介绍一下Docker容器和Kubernetes的区别,并简述它们的作用。

Docker 是一种容器化技术,Kubernetes 则是一个容器编排平台。它们都是现代应用程序开发中广泛使用的技术。下面简要介绍一下它们的区别和作用。

  1. Docker 容器

Docker 是一种轻量级的容器技术,可以将应用程序和依赖项打包在一个独立的容器中,以便进行交付和部署。通过 Docker,开发人员可以快速而方便的构建、测试和部署应用程序,不同的容器可以在任何平台上运行,从而实现了应用程序的移植性。

  1. Kubernetes 容器编排平台

Kubernetes 是 Google 开源的一个容器编排平台,可以管理多个容器部署到多个主机上。Kubernetes 可以自动扩展、管理和监视应用程序容器,确保它们始终运行在可用的状态,并能够按需调整资源分配和负载均衡,以适应不同的负载需求。

与 Docker 不同,Kubernetes 更加侧重于集群部署,它提供丰富的功能和 API,支持动态伸缩、自动故障恢复、升级和回滚等操作,使得应用程序容器的管理更加灵活和高效。

  1. 区别

Docker 是一种容器技术,主要用于打包和部署应用程序以及构建独立的、可移植的容器环境。而 Kubernetes 则是一个容器编排平台,主要用于管理和部署多个容器,并提供自动化、高可用性的扩展和故障恢复机制。

4.如何进行文件系统的扩容?

  1. 手动扩展分区

要扩展文件系统,需要先扩展磁盘分区。可以使用工具如 fdisk 或 parted 扩展分区,具体步骤如下:

  • 使用 fdisk 或 parted 查看当前磁盘分区
  • 备份数据
  • 使用 fdisk 或 parted 扩展磁盘分区
  • 使用 resize2fs 命令扩展文件系统

例如,如果要扩展 /dev/sda1 分区,可以按照以下步骤进行:

# 1. 查看当前磁盘分区
fdisk -l

# 2. 备份数据
# 可以使用 tar 或其他备份工具备份数据

# 3. 使用 fdisk 扩展磁盘分区
# 具体操作可以参考 fdisk 的帮助文档
fdisk /dev/sda

# 4. 使用 resize2fs 扩展文件系统
resize2fs /dev/sda1
  1. 使用 LVM 进行扩容

逻辑卷管理器(LVM)是一种抽象层,可在物理磁盘和文件系统/卷之间创建一个层。这使得文件系统扩展更加简单和方便。以下是一个使用 LVM 扩展文件系统的例子:

  • 创建物理卷 pvcreate /dev/sdb
  • 创建卷组 vgcreate vg01 /dev/sdb
  • 扩展卷组 vgextend vg01 /dev/sdc
  • 扩展逻辑卷大小 lvextend -L +10G /dev/mapper/vg01-lv01
  • 文件系统扩容 resize2fs /dev/mapper/vg01-lv01

注:以上命令需要先安装 lvm2 工具包。

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/3000.html

分享给朋友:

“Linux运维工程师面试题3” 的相关文章

教培收费管理系统有哪些?

大部分培训机构走上正轨后,随着学员数量不断增长,各种业务和课程报名费用项目逐渐增多,如果还是采用传统的人工收费,就势必会出现算错账或收支对不上的问题。此时,再去查询哪里出了问题是一件非常难的事情。因此,很多培训机构都会使用机构收费系统。那培训机构收费系统有哪些呢?校宇宙是一款适合培训学校内部使用的信...

迁移GIT仓库并带有历史提交记录

迁移git仓库开发在很多时候,会遇到一个问题。GIT仓库的管理,特别是仓库的迁移。我需要保留已有的历史记录,而不是重新开发,重头再来。我们可以这样做:使用--mirror模式会把本地的分支都克隆。// 先用--bare克隆裸仓库 git clone git@gitee.com:xxx/testApp...

《暗黑破坏神 2:重制版》PC 版 2.3 版本发布,支持英伟达 DLSS

IT之家 12 月 3 日消息,暴雪为《暗黑破坏神 2:重制版》PC 版发布了更新 2.3 版本,添加了“离线难度缩放”滑块(玩家可以在单人游戏时增加挑战和奖励的级别)、多项辅助功能和用户界面改进,以及英伟达 DLSS 支持。玩法改进:玩家现在可以在离线游戏的选项菜单中使用“游戏难度等级”,它提供与...

Vue Router 4 路由操作 - 路由导航

路由导航分为 声明式导航 和 编程式导航。通过 <router-link to="..."> 标签跳转的方式为声明式导航。通过 路由实例对象(router.push(...))跳转的为编程式导航。导航到不同的位置想要导航到不同的URL,使用 router.push 方法。...

三勾商城(java+vue3)微信小程序商城+SAAS+前后端源码

项目介绍本系统功能包括: 前台展示+后台管理+SAAS管理端,包括最基本的用户登录注册,下单, 购物车,购买,结算,订单查询,收货地址,后台商品管 理,订单管理,用户管理等等功能,小伙伴一起来看看吧。三勾小程序商城基于springboot+element-ui+uniapp打造的面向开发的小程序商城...

千智云低代码平台 v2.0.6发布「平台升级」

【平台简介】千智云低代码应用平台是一款低代码开发+低代码PaaS+SaaS应用中台为一体的应用平台。平台提供了多种应用场景功能及应用组件,满足各种应用的基本实现,可以使用低代码开发的方式,定制化的开发软件项目,并使用平台提供的各种功能,提供了大多数业务场景的支持。也可以将开发的应用发布到平台,成为S...