0、介绍下你自己
1、具体负责的工作内容
系统的建设与维护工作。环境搭建与维护、巡检、容量规划、CICD流水线管理、可观测指标建立、监控告警处理,用户的请求事件问题处
2、介绍一下http协议
http协议(hyper text transfer protocol),超文本传输协议。是建立在传输层协议TCP之上的应用层传输协议,简单来说就是客户端和服务端建立TCP连接,之后发送HTTP请求响应进行数据传输的一种协议规则。
超文本是什么呢?文本是一些字符串数字等文字,超文本可以是图像、音频和视频等二进制文件。http协议是一种不可靠的协议,它依托与tcp实现可靠传输。为什么说它不可靠呢,是因为它没有超时传输、文本标记、确认等机制。
3、http的无状态是什么?
http是一种无状态的协议,HTTP协议本身不会对发送过的请求和响应的通信状态进行持久化处理。
这样做的目的是为了保持HTTP协议的简单性,从而能够快速处理大量事务,提高效率。
但当用户跳转页面想要保持登录状态时,就需要另一种技术cookie和session来实现。
4、http的无连接是什么?
http的无连接是指每个连接仅处理一个请求就断开连接。
这样做可以节省传输时间,提高并发性能。
但传输效率不高,同一个用户多次请求需要建立多个TCP连接。因此1.1版本有了keep-aive特性实现长连接,即在一次TCP连接中进行多次请求。
5、几个版本的不同
http0.9:已过时,纯文本,只能发送html格式字符串;只支持GET;无状态;
http1.0:超文本;增加POST、HEAD等请求方法;增加头信息;
http1.1:默认持久连接(串行传输);请求管道化;增加缓存处理;请求头新增Host字段,用来指定服务器的域名;支持断点续传分块传输等;
http2.0:二进制分帧;多路复用;头信息压缩;服务器推送;
http3.0:使用UDP传输;
6、主流版本
http1和http2
7、http请求和响应
请求格式:请求状态行(方法+URI+协议版本)+请求首部字段+请求实体
响应格式:响应状态行(协议版本+状态码+状态码描述)+响应首部字段+响应实体
8、响应状态码
1xx:指示信息 - 表示请求已接收,继续处理。100:Continue;
2xx:成功 - 请求已被成功接收、理解。200:OK;
3xx:重定向 - 要完成请求必须进行更进一步的操作。301:Moved Permanently;302:Moved Temporarily;304:Not Modified;
4xx:客户端错误 - 请求有语法错误或请求无法实现。400:Bad request;401:Unauthorized请求未授权;403:Forbidden拒绝;404:Not Found;
5xx:服务端错误 - 服务器未能实现合法的请求。500:Internal Server Error;502:Bad gateway;503:Server Unavailable;504:Gateway Time-out
9、HTTPS(Secure)
通过SSL或TLS的组合使用,加密HTTP的通信内容。使用公开密钥加解密的方式协商出共享密钥,之后的通信使用共享密钥加密传输。
10、TCP三次握手和四次挥手
SYN、SYN+ACK、ACK
FIN、ACK、FIN+ACK、ACK
11、TCP的半连接状态是什么时候
服务端收到客户端发起SYN建立连接的请求后,进入TCP的半连接状态。
12、如何查看服务器上的半连接队列并修改长度
修改内核参数,半连接和全连接队列的长度一起改
13、如何保证tcp的可靠性
14、TCP的bbr是什么?
是一种拥塞算法。以往大部分拥塞算法是基于丢包来作为降低传输速率的信号。而BBR则基于模型主动探测。
通过检测带宽和RTT两个指标进行拥塞控制。
15、RC和deployment的区别
确保容器应用的副本数始终保持在用户定义的副本数。
RC:基于Pod模板和replicas副本个数来管理pod。pod的标签选择器仅支持等值。
RS:类似RC,但支持集合的形式的标签选择器。
DP:通过控制RC来控制Pod,同时增加了滚动升级、回滚、暂停继续、扩缩容等操作。
16、Docker的端口暴露底层
iptables
17、iptables四表五链
表:
链:
18、端口暴露经过了哪些表和链?
表:prerouting --> input --> output --> postrouting
https://blog.csdn.net/WuLex/article/details/130193920
16、python class 静态方法
1、介绍下自己和主要的工作
2、介绍下负责系统的架构
3、网站的安全措施
WAF:web application firewall,网站应用防火墙。对网站或者app的业务流量进行恶意特征识别及防护,在对流量进行清洗和过滤后,将正常、安全的流量返回给服务器,避免网站服务器被恶意入侵导致性能异常等问题,从而保障网站的业务安全和数据安全。
通过修改网站域名解析CNAME记录到WAF提供的域名,并在WAF中配置网站域名的相关配置(证书)进行回流。
防火墙:是一种用于保护网络环境免受未经授权访问和攻击的安全设备。位于网络边界,控制流入和流出网络的数据流量。防火墙基于事先定义的安全策略,对网络流量进行检查和过滤,以阻止潜在的攻击流量进入网络内部。
区别:
4、awk、kubectl、uniq、sort基础命令的使用
awk [参数] [处理内容] [操作对象]
流程控制只存在循环之中。 ‘{ if(){} else if(){} else(){} }’
https://www.cnblogs.com/zhengyan6/p/16290156.html
sort,排序,-n:按数值升序排列;-r:相反的顺序;-t:排序时指定分隔符;-k:与-t合用,指定要排序的列数;
uniq,去重,-c:显示次数
wc,统计次数,-l:行数;-w:字数;-c:字节数;
5、ansible常用模块、ansible-playbook使用
ansible,基于ssh和远程主机通讯。python编写的自动化运维工具。
任务模式:ad-hoc,点对点模式,使用单个模块,支持批量执行单个命令;playbook,剧本模式,通过多个task集合完成一类功能;
常用模块:ping、shell、copy、file、fetch、cron、yum、service、user、group;
playbook由YAML语言编写。核心元素:Hosts、Tasks、Variables、Templates、Handlers;
6、主机网络出现问题后的排查思路
7、如何使用mysql的binlog进行数据恢复
flush logs;生成新的binlog日志。为了使恢复操作在新的binlog中记录,不影响之前的。
mysqlbinlog --start-positon=xx --stop-position=xx /var/lib/mysql/mysql-bin.000006 | mysql -uroot -pxx; 恢复数据
https://www.cnblogs.com/YCcc/p/10825870.html
8、mysql的主从切换怎么操作
9、MySQL自动主从切换
MHA,所有节点上安装mha,一主多从,主节点宕机后,挑选最新数据的slave升级为主,其他节点重新指向新的主。
keepalived,主从,主节点宕机后,vip漂移至slave节点,slave节点升级为新主库提供服务。
问题:如何判断主库宕机?可用性和数据一致性哪个更重要?
10、where和having的区别
9、mysql如何查看主从实例的延迟
show slave status;
Second_Behind_Master:0 --> 无延迟、 Null --> 主从同步已停止、大于0 --> 比主库慢
10、redis中如何查看某个key是否存在
exists key1;1存在,0不存在;
keys后可跟通配符,*所有,?单个字符,[]某个字符,keys a*
增&改:set key value; set key expire value;mset key1 value1 key2 value2 key3 value3;存在则改,不存在则加;
删:del key;del key1 key2;
查:get key;mget key1 key2;不存在返回空行;type key;查看类型
11、redis中如何查看目前一共有多少key
dbsize; (integer) 69421
info keyspace; db0:keys=69421,expires=10845,avg_ttl=570070743
12、redis的架构实现,主从+高可用
单机、主从(手动切换)、哨兵(自动切换主从)、集群(分片、扩展性)
13、rabbitmq的管道、队列如何创建,操作命令
14、rabbitmq的架构实现