前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >2023年6月运维面试问题总结

2023年6月运维面试问题总结

作者头像
章工运维
发布2023-07-01 14:50:10
3880
发布2023-07-01 14:50:10
举报
文章被收录于专栏:章工运维章工运维

# 1.ipvs和iptables区别

  • IPVS 是一个负载均衡器,用于将传入的网络流量分发到后端的多个服务器上。
  • iptables 是一个防火墙工具,用于配置和管理网络包过滤规则,实现网络安全策略和流量控制。

尽管它们可以用于网络流量控制和转发,但其主要功能和实现方式是不同的。

# 2.k8s flannel和calico区别

  • Flannel使用Overlay网络模型,而Calico使用基于路由的方法。
  • Flannel通常使用层次化的网络模型(如VXLAN或IPSec),而Calico使用路由表和ACL来处理容器之间的流量。
  • Flannel在设置和操作上相对较简单,适合较小规模的集群,而Calico则更适合需要更复杂网络策略和安全性的大规模集群。

# 3.请介绍一下Liveness Probe、Readiness Probe和Startup Probe的区别和用途。

  • Liveness Probe(存活探针)用于检测应用程序是否仍然运行正常。如果存活探针失败,Kubernetes将重启容器,尝试恢复应用程序的正常运行状态。
  • Readiness Probe(就绪探针)用于检测应用程序是否已准备好接受流量。如果就绪探针失败,Kubernetes将停止将流量发送到该容器,直到它重新变为就绪状态。
  • Startup Probe(启动探针)是在容器启动过程中进行检查的一种探针。它可以用于判断应用程序是否在启动过程中已准备就绪。如果启动探针失败,Kubernetes将重启容器。

# 4.Liveness Probe和Readiness Probe常见配置方式

  1. HTTP探测:通过向容器内的HTTP端点发送HTTP请求来进行探测。可以指定路径、端口和期望的响应状态码范围。例如,配置一个Liveness Probe的HTTP探测可以发送GET请求到/health路径,并期望返回状态码200。
  2. TCP探测:通过建立TCP套接字连接来进行探测。可以指定容器内的IP地址和端口。如果连接成功,探测将被视为成功。这种方式适用于无法使用HTTP进行探测的情况。
  3. Exec探测:通过在容器内部执行指定的命令来进行探测。可以指定要执行的命令及其参数。如果命令成功执行并返回退出状态码为0,探测将被视为成功。这种方式适用于需要自定义逻辑进行探测的情况

# 5.k8s创建一个pod主要流程

Kubernetes创建一个Pod的主要流程如下:

编写Pod配置文件: 首先,需要创建一个描述Pod的配置文件,通常使用YAML或JSON格式。在配置文件中定义Pod的名称、容器镜像、资源要求、环境变量、挂载卷等信息。

使用kubectl创建Pod: 使用kubectl命令行工具来创建Pod。通过运行类似以下的命令来提交配置文件:

代码语言:javascript
复制
kubectl create -f pod.yaml

这将向Kubernetes API服务器发送请求,请求创建一个新的Pod。

API服务器验证和处理: Kubernetes API服务器接收到创建Pod的请求后,会首先验证该请求的合法性。它会检查Pod的配置文件是否符合语法规范、名称是否唯一等。

调度器分配节点: 如果验证通过,调度器(Scheduler)将被触发。调度器负责将Pod调度到集群中的节点上。它会考虑节点的资源可用性、亲和性策略、节点标签匹配等因素来做出决策。

容器镜像拉取: 在选择的节点上,Kubernetes会尝试拉取Pod配置文件中定义的容器镜像。如果镜像不存在于节点上,它将从注册中心(如Docker Hub)下载镜像到节点上的本地存储。

创建Pod和容器: 一旦容器镜像就绪,Kubernetes会在节点上创建Pod,并在Pod内部创建容器。这包括创建容器的Linux命名空间、网络命名空间、IPC命名空间等,以及配置容器的资源限制、环境变量等。

Pod状态监控: Kubernetes会监控Pod的状态。它会定期向Pod中的容器发送探测请求(例如Liveness Probe),以检查容器的健康状态。如果容器出现故障,Kubernetes将采取相应的操作,例如重新启动容器或调度到其他节点。

Pod调度和重调度: 如果发生节点故障或资源不足等情况,Kubernetes可能会重新调度Pod。它会选择一个新的节点,并在新节点上重新创建Pod和容器,以确保应用程序的高可用性和可靠性。

以上是Kubernetes创建一个Pod的主要流程。整个过程涉及多个组件(如API服务器、调度器)的协作,以及对容器镜像、节点资源和健康状态的管理。


待更新中

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-06-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • # 1.ipvs和iptables区别
  • # 2.k8s flannel和calico区别
  • # 3.请介绍一下Liveness Probe、Readiness Probe和Startup Probe的区别和用途。
  • # 4.Liveness Probe和Readiness Probe常见配置方式
  • # 5.k8s创建一个pod主要流程
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档