【运维面试100问】(二)你最擅长什么?对某某擅长吗?---请设计一个符合公司使用的lvs架构

 本站以分享各种运维经验和运维所需要的技能为主

《python零基础入门》:python零基础入门学习

《python运维脚本》: python运维脚本实践

《shell》:shell学习

《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战

《k8》暂未更新

《docker学习》暂未更新

《ceph学习》ceph日常问题解决分享

《日志收集》ELK+各种中间件

《运维日常》运维日常

《linux》运维面试100问

又到了运维面试100问的一问一答时间了,同学们,咱们面试别人或者被面试官问问题的时候,

是不是经常会被问到,你最擅长的是什么?或者你有什么特别擅长的,再或者更直白一些这些年来

你觉得你运维“最屌”的技能是什么?还有就是岗位专属性特别强的,只招某领域的人才,就是非常

直接地问“你对某某熟悉吗?或者说擅长吗?”

这里说一下一般情况下都是引导到自己工作经常使用的,而且专研过底层原理,如果无法看懂代码

的情况下,至少要明白实现原理,也就是如何实现的,这样才能更好地跟面试官“交流”下去。

遇到只招某领域的人才,那也只能认栽,因为硬实力不够,侥幸进去了,也是背锅吃骨头的角色。

在下在某厂就经历过这样的:

面试官:“你对负载均衡了解吗?平时有接触吗?擅长吗?”

---在这里能很明显感觉到,如果进到该公司就是主要干负载均衡的

我:“有了解,有接触,大概分有三种,nginx、hpa、lvs”

---这里把我平时见到过的负载均衡器都说了出来。

面试官:”那你觉得阿里云上的用的是哪种呢?“---这里应该是想问怎么使用了。

我:“一般情况三种都有,一般7层就使用nginx,4层就使用lvs,架构大,体量大,一般也优选lvs,体量小的,nginx也够了”

重点来了:

面试官:“请设计一个符合公司使用的lvs架构”

---在这里,大家要小心点了,因为怕踩雷,毕竟现在很多面试公司在套“最佳实践”,

也就是想白拿面试者的劳动成果。

这里我把 lvs的原理讲述一遍

LVS(Linux Virtual Server)是一个基于Linux内核的负载均衡技术,它通过将网络流量分发到多个后端服务器来提高系统的性能和可靠性。LVS的原理可以简要概括为以下几个步骤:

  1. 客户端发起请求:当客户端发送请求到负载均衡器的虚拟IP地址时,这个请求会被LVS接收。

  2. 负载均衡器接收请求:LVS负载均衡器接收到客户端的请求后,根据预定义的负载均衡算法(如轮询、加权轮询、最小连接等),选择一个后端服务器来处理该请求。

  3. 请求转发:负载均衡器将客户端的请求转发给所选的后端服务器。这个转发过程可以使用多种技术,如直接路由(Direct Routing)、NAT路由(NAT Routing)和IP隧道(IP Tunneling)等。

  4. 后端服务器处理请求:后端服务器接收到转发的请求后,根据请求的内容进行处理,并生成响应。

  5. 响应返回:后端服务器将生成的响应发送回负载均衡器。

  6. 负载均衡器转发响应:负载均衡器接收到后端服务器的响应后,将其转发给客户端。

通过这样的流程,LVS实现了将客户端的请求分发到多个后端服务器上,从而实现了负载均衡。这样可以提高系统的性能和可靠性,同时还能够实现故障转移和高可用性。

LVS的核心是基于Linux内核的IP负载均衡技术,它使用了Linux内核的网络功能和IP转发机制来实现请求的转发和负载均衡。在LVS中,负载均衡器通常是一台专用的服务器,它运行着LVS软件,并配置了负载均衡算法和网络参数。

需要注意的是,LVS本身并不处理应用层协议,它只负责在传输层(TCP/UDP)对请求进行转发。因此,在使用LVS时,通常需要与其他组件(如Web服务器、应用服务器等)配合使用,以提供完整的应用服务。

总结来说,LVS是一种基于Linux内核的负载均衡技术,通过将客户端的请求分发到多个后端服务器上,实现了负载均衡、故障转移和高可用性。通过合理配置和使用不同的负载均衡算法,可以根据实际需求提高系统的性能和可靠性。

再接着讲解lvs的三种请求转发技术

请求转发技术如直接路由(Direct Routing)、NAT路由(NAT Routing)和IP隧道(IP Tunneling)是LVS中常用的三种转发方式,它们有以下区别:

  1. 直接路由(Direct Routing):
    直接路由是一种请求转发技术,它将客户端请求直接转发给后端服务器,而负载均衡器不参与实际数据传输。在直接路由模式下,负载均衡器和后端服务器必须在同一个子网中,并且后端服务器的默认网关需要指向负载均衡器。直接路由的优点是转发效率高,但需要在网络层进行特殊配置。

  2. NAT路由(NAT Routing):
    NAT路由是一种请求转发技术,它通过修改请求和响应的源IP和目标IP地址,将客户端请求转发给后端服务器,并将响应返回给客户端。在NAT路由模式下,负载均衡器和后端服务器可以在不同的子网中,负载均衡器会对请求和响应进行地址转换。NAT路由的优点是灵活性高,可以跨越不同的子网进行转发。

  3. IP隧道(IP Tunneling):
    IP隧道是一种请求转发技术,它通过在负载均衡器和后端服务器之间建立虚拟的隧道,将客户端请求封装在隧道中进行转发。在IP隧道模式下,负载均衡器和后端服务器可以在不同的子网中,负载均衡器会将请求封装在隧道中,并将其解封并转发给后端服务器。IP隧道的优点是可以在不同的网络环境中进行转发,但需要额外的隧道配置和管理。

这些转发技术在LVS中的选择取决于网络架构、安全需求和性能要求等因素。不同的转发技术适用于不同的场景,需要根据具体情况进行选择和配置。

然后分析三种转发技术的优缺点

以下是直接路由(Direct Routing)、NAT路由(NAT Routing)和IP隧道(IP Tunneling)这三种请求转发技术的优缺点:

直接路由(Direct Routing):
优点:
- 转发效率高,负载均衡器不参与实际数据传输,减少了额外的处理开销。
- 可以实现对后端服务器的直接访问,适用于同一子网内的场景。

缺点:
- 需要在网络层进行特殊配置,可能需要更多的网络调整。
- 后端服务器的默认网关需要指向负载均衡器,可能需要调整网络设置。

NAT路由(NAT Routing):
优点:
- 灵活性高,可以跨越不同的子网进行转发。
- 可以进行源IP和目标IP地址的转换,提供一定的安全性。

缺点:
- 需要对请求和响应进行地址转换,增加了处理开销。
- 可能会引入NAT相关的网络延迟和性能损失。

IP隧道(IP Tunneling):
优点:
- 可以在不同的网络环境中进行转发,克服了子网限制。
- 提供了一定的隧道保护,可以在隧道中进行加密和认证。

缺点:
- 需要额外的隧道配置和管理。
- 可能会增加网络延迟和处理开销。

选择适当的请求转发技术需要综合考虑网络架构、安全需求和性能要求等因素。每种技术都有其优点和缺点,根据具体的场景和要求进行选择和配置。

最后的最后再加上自己的一点点最佳实践或者生产上遇到的问题

比如dr一般跨机房就不使用了,而nat性能上面又不太行,一般大厂都会选择使用ip隧道作为lvs架构进行使用。

而使用ip隧道中常遇到的问题有机器的mtu问题,必须保持一致以及有必要的情况下需要根据业务

数据包的大小去调节大小,一般都是要求开发把包大小切好,把mtu敞亮公开让开发知道,这样以

后遇到问题也不知道太被动。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/82955.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

笔试面试相关记录(4)

(1)实现防火墙的主流技术有哪些? 实施防火墙主要采用哪些技术 - 服务器 - 亿速云 (yisu.com) (2) char arr[][2] {a, b, c, d}; printf("%d", *(arr1)); 输出的是谁的地址?字符c 测试代码如下…

ThreeJS-3D教学一基础场景创建

Three.js 是一个开源的 JS 3D 图形库,用于创建和展示高性能、交互式的 3D 图形场景。它建立在 WebGL 技术之上,并提供了丰富的功能和工具,使开发者可以轻松地构建令人惊叹的 3D 可视化效果。 Three.js 提供了一套完整的工具和 API&#xff0…

JUC中创建的组件 多线程使用“哈希表”

JUC中创建的组件 JUC中创建的组件这些内容都不太常用,偶尔用到面试的时候,偶尔用到!到时候自行查找即可,本文主要来快速的过一下,留个印象即可~ JUC(java.util.concurrent)和多线程相关的工具…

uni-app微信小程序canvas中使用canvasToTempFilePath在手机上导出图片尺寸与实际不符

问题描述:比如图片的尺寸是1125*2001像素,这样用微信开发者工具下载下来的图片尺寸是1125*2001像素,用不同的手机去操作,下载出来的图片尺寸都不一样,和原图片尺寸差距很大。 解决方案:canvas写入的时候是…

python从入门到精通(一)

自己也有三四年的码龄了,目前,重拾起自己的博客,记录自己的学习笔记,为大家提供优质内容,也来巩固自己的学习内容。 很开心也成功成为了一名研究生,张张的研究方向是图像处理和计算机视觉这一块&#xff0c…

C++QT 作业8

#include "mywind.h" #include "ui_mywind.h" #include <iostream> #include <QIcon> #include <QLabel> #include <QLineEdit> #include <QDebug>//信息调试类 用于输出数据 Mywind::Mywind(QWidget *parent): QWidget(pa…

自动化测试---选择元素

第一个自动化测试脚本 from selenium import webdriver from selenium.webdriver.chrome.service import Service# 创建 WebDriver 对象&#xff0c;指明使用chrome浏览器驱动 wd webdriver.Chrome(serviceService(rD:\eg浏览器下载文件\chromedriver-win64\chromedriver.exe…

python3.11版本pip install ddddocr调用时报错got an unexpected keyword argument ‘det‘ 解决

一、如图出现如下问题 ddddocr.__init__() got an unexpected keyword argument det出现问题原因&#xff1a;python3.11默认安装版本就旧版的ddddocr1.0的&#xff0c;所以导致如下报错 二、解决方案一&#xff08;推荐&#xff09; python3.11的环境直接安装这个即可&…

物 理 层

二、物理层 1、物理层的基本概念 物理层的作用:尽可能的屏蔽掉传输媒体和通信手段的差异&#xff0c;使物理层上面的数据链路层感觉不到这些差异&#xff0c;使其只需要考虑如何完成本层的协议和服务 1.1、物理层的主要任务 机械特性&#xff1a;指明接口所用的接线器的形状…

关闭禁用chrome浏览器的阅读清单/强力书签

文章目录 前言操作 前言 阅读清单对我没啥用&#xff0c;还占用我位置&#xff0c;不小心点击到啥的&#xff0c;必须弃用 操作 chrome地址栏输入 chrome://flags/ 搜索book &#xff0c;关掉下面几个功能

Java 华为真题-猴子爬山

需求&#xff1a; 一天一只顽猴想去从山脚爬到山顶&#xff0c;途中经过一个有个N个台阶的阶梯&#xff0c;但是这猴子有一个习惯&#xff1a;每一次只能跳1步或跳3步&#xff0c;试问猴子通过这个阶梯有多少种不同的跳跃方式&#xff1f; 输入描述 输入只有一个整数N&#xff…

蓝桥杯2023年第十四届省赛真题-异或和之和--题解

目录 蓝桥杯2023年第十四届省赛真题-异或和之和 题目描述 输入格式 输出格式 样例输入 样例输出 【代码实现】 大家觉得写得可以的话&#xff0c;可以加入QQ群907575059. 蓝桥杯2023年第十四届省赛真题-异或和之和 时间限制: 3s 内存限制: 320MB 提交: 241 解决: 66 …

Vue项目的详细目录结构解析

文章目录 前言 —— 一级目录解析 一. dist 二. node_modules 三. public 四. src&#xff08;基础版&#xff09; 4.1 main.js 4.2 App.vue 4.3 src / assets 4.4 src / components 五. src&#xff08;顶配版&#xff09; 5.1 src / plugins 5.2 src / store 5.3 src / route…

MySQL版数据库原理与应用期末复习重点(3)---画E-R图

文章目录 一、题目一1.1 题目描述1.2 解答 二、题目二2.1 题目描述2.2 解答 一、题目一 1.1 题目描述 设开发一个校园公共自行车管理系统&#xff0c;系统需要达到如下要求&#xff1a; &#xff08;1&#xff09;用户能够注册登录&#xff0c;能够根据借车点的名称查询借车…

【爬虫基础】万字长文详解XPath

1. 引言 XPath&#xff08;XML Path Language&#xff09;是一种在XML和HTML文档中查找和定位信息的强大工具。XPath的重要性在于它允许我们以简洁而灵活的方式导航和选择文档中的元素和属性。本文将深入介绍XPath的基础知识&#xff0c;帮助你掌握这个强大的查询语言&#xf…

若依注册的时候给个默认部门出现获取用户信息异常

想在注册的时候在数据库中查询一个部门给它一个默认部门&#xff0c;结果出现异常——【[handleServiceException,59] - 获取用户信息异常】 经分析代码&#xff0c;此方法有如下注解 以上注解会在mapper.xml中做如下操作 在做此操作之前会进入一个拦截器&#xff0c;根据token…

PHP-composer安装扩展安装,批量操作合并pdf

清除Composer缓存&#xff1a; 运行以下命令来清除Composer的缓存&#xff0c;并再次尝试安装包。 bash composer clear-cache 使用不同的镜像源&#xff1a; Composer使用的默认包源可能会受到限制或访问问题。你可以切换到使用其他镜像源&#xff0c;如阿里云、Composer中国…

安理【2022】

关键字&#xff1a; 出栈序列s2固定、快速排序2趟、next数组、二分查找比较次数log2n向上取整、 一、选择 二、填空 三、应用

系统间远程调用方式的演变

问题&#xff1a; 远程是无法直接传递对象的 怎么解决&#xff1f; txt 没有表现力&#xff0c;结构和内容混杂&#xff0c;无法知道它的结构&#xff1b;报文: 电信信令、EDI国际物流&#xff1b; 晦涩难懂&#xff0c;和行业知识绑定&#xff0c;学习成本高&#xff1b;xm…

蓝桥杯2023年第十四届省赛真题-买瓜--C语言题解

目录 蓝桥杯2023年第十四届省赛真题-买瓜 题目描述 输入格式 输出格式 样例输入 样例输出 提示 【思路解析】 【代码实现】 蓝桥杯2023年第十四届省赛真题-买瓜 时间限制: 3s 内存限制: 320MB 提交: 796 解决: 69 题目描述 小蓝正在一个瓜摊上买瓜。瓜摊上共有 n 个…