影石insta360 DevOps工程师一面记录

发布于:2025-08-29 ⋅ 阅读:(17) ⋅ 点赞:(0)

没回答的问题是比较简单的问题,自己ai一下

1:自我介绍

2:你用过docker的compose功能吗?

答:所谓的docker compose就是用来创建多容器应用的,类似于kubernetes中的pod,每个容器运行自己的镜像,比如说一个应用有前端http服务器,后端mysql,redis等等。可以在docker-compose.yml文件文件编写。

3:k8s集群是如何部署的

答:先关闭swap分区,防止后续k8s集群收集内存信息不精确,然后调整内核参数,比如说桥接流量参数,然后安装docker这种容器运行时,还有kubeadm这种软件包,之后选择一个虚拟机进行集群初始化,得到集群密钥,在其他虚拟机上通过密钥加入到这个集群

4:docker的网络是什么类型

答:Docker 默认使用的是桥接网络(Bridge Network),这是最常见和默认的网络模式。

详细解释

1. 桥接网络(Bridge)

  • Docker 在宿主机上创建一个叫 docker0 的虚拟网桥(bridge),所有默认创建的容器都会连接到这个桥接网络上。
  • 容器在这个网络内有自己的私有IP地址(一般是 172.x.x.x 网段),彼此之间可以直接通信。
  • 宿主机可以通过端口映射(-p 参数)来访问容器服务。
  • 桥接网络类似于宿主机和容器之间的虚拟交换机。

2. 其他常见网络模式

  • Host网络模式
    容器不使用自己的网络命名空间,而是和宿主机共享网络栈。容器内的端口直接映射到宿主机端口,不需要端口映射规则。性能较好,但隔离较弱。

  • None模式
    容器没有网络接口,完全隔离,适用于需要完全隔绝网络的场景。

  • Overlay网络
    用于 Swarm 集群和跨主机容器间通信,实现跨宿主机容器网络连接。

  • 自定义桥接网络
    用户可以创建自定义的桥接网络,在默认桥接网络基础上功能更强,比如支持容器自动DNS解析等。


总结

网络类型 说明 典型用途
Bridge(桥接) 默认网络,容器连接宿主机上的虚拟网桥,彼此通信,需端口映射访问外网 单机多容器通信,开发测试环境
Host(主机) 容器共享宿主机网络,性能高,无端口映射 性能敏感场景,简化网络配置
None(无网络) 容器没有网络接口 极端安全隔离,特殊场景
Overlay(覆盖) 跨宿主机容器网络,实现分布式系统的容器通信 多主机集群部署,Docker Swarm等
Custom Bridge 用户自定义桥接网络,通常支持更高级网络功能 复杂单机网络拓扑及服务发现

5:怎么看待devops工程师?

答:DevOps工程师是连接开发(Development)和运维(Operations)两个团队的桥梁,致力于通过自动化、工具链建设和文化变革,实现软件开发、测试、部署及运维流程的高效协同,从而提升软件交付速度和质量。使用基础设施及代码管理机器,应用和环境等等,还有搭建完善的监控体系,使用ELK收集日志信息等等。

6:了解过ELK吗

答:没了解过

什么是 ELK?

ELK 是三个开源项目的首字母缩写,分别是:

  • Elasticsearch:一个分布式搜索和分析引擎,负责存储和检索日志数据。
  • Logstash:用于接收、处理和转发日志数据的管道工具,负责日志收集、过滤和转换。
  • Kibana:一个基于浏览器的可视化工具,用于展示和分析存储在 Elasticsearch 中的日志数据。

有时候,社区还会加上 Beats,形成 ELK 的升级版(也被称为 “Elastic Stack”)。


ELK 是如何收集日志的?

1. 日志产生

各种应用服务器、系统服务、网络设备等都会产生大量日志,这些日志可能存在不同的格式和位置。


2. 日志采集(主要由 Logstash 和 Beats 完成)

  • Logstash

    • 作为日志处理管道,Logstash 可以从多种来源收集日志,比如文件(File)、消息队列(Kafka、Redis)、网络端口、数据库等。
    • 它内置丰富的插件,可以对日志进行解析、过滤(如正则提取字段)、格式转换、数据增强等操作。
    • 处理后数据会推送到 Elasticsearch。
  • Beats (轻量级采集器)

    • Beats 是一组轻量级数据采集器,部署在日志产生端(如 Filebeat 采集日志文件、Metricbeat 采集系统指标等)。
    • 它们将日志数据安全高效地传给 Logstash 或直接发往 Elasticsearch。
    • 减轻 Logstash 的压力,分散采集任务,更灵活。

3. 日志存储(Elasticsearch)

  • Elasticsearch 接收并存储经过处理的日志数据。
  • 它具备全文搜索和复杂分析能力,可以对海量日志数据建立索引,实现快速查询。
  • 支持实时或近实时数据更新,适合动态分析。

4. 日志展示和分析(Kibana)

  • Kibana 连接 Elasticsearch,通过丰富的可视化图表(条形图、折线图、饼图、地图等)展示日志数据。
  • 用户可以基于关键字、时间范围进行灵活搜索和过滤,帮助定位问题。
  • 支持创建仪表盘(Dashboard)、报警触发、报表生成等功能。

ELK 的作用和价值

作用 价值说明
集中日志管理 统一收集、存储和管理分散的日志,便于整体监控和审计。
实时故障诊断与排查 快速定位系统异常、错误和性能瓶颈,提升运维响应速度。
安全审计和合规 记录系统访问和操作日志,满足安全合规需求。
业务数据分析 利用日志数据分析用户行为、业务趋势,支持数据驱动决策。
容量规划和性能优化 通过历史日志和指标分析,科学评估系统负载,优化资源配置。
自动化报警和预测 集成Alert功能,及时通知异常,部分场景支持预测性维护。

7:了解过promethues吗,怎么工作的?

答:使用exporter收集节点或者相关应用的metrics数据,然后通过promethues配置将这些exporter的数据收集到存储数据的时间序列数据库,之后根据配置的告警规则alertmanager负责将告警传输给某个邮件。另外可以把promethues和grafna进行集成到前端的页面中方便查看和管理。

8:base地点有要求吗

答:北上广深都OK

9:大概什么时间可以来实习

10:反问(面试官对于校招的新人有什么预期,不管是技术方面还是其他方面)

答:面试官对我肯定,表示需要我这样的人才(开玩笑)

11:反问(面试官所在部门的业务有哪些)

答:巴拉巴拉,反正起步阶段,很需要人才