阅读——happy

这篇博客详细探讨了Linux系统和Docker容器技术的相关知识。内容涵盖OSI七层网络模型、Linux LVM分区扩容步骤、Tomcat端口用途、DNS解析过程以及Keepalived的工作原理。同时,深入讨论了LVS、Nginx、HAproxy在负载均衡中的区别,解释了Docker的工作原理、组成部分、与传统虚拟机的区别以及其三大核心概念。此外,还介绍了Dockerfile的构建过程和异常排查,以及如何进入容器。最后,提到了Kubernetes(k8s)的概念和组件,以及与命名空间的关系。博客内容丰富,涉及网络、存储、容器等多个方面。
摘要由CSDN通过智能技术生成

1、请简述OSI七层网络模型有哪些层及各自的含义?

  • 物理层:底层数据传输,比如网线、网卡标准

  • 数据链路层:定义数据的基本格式,如何传输,如何标识。比如网卡MAC地址

  • 网络层:定义IP编码,定义路由功能,比如不同设备的数据转发

  • 传输层:端到端传输数据的基本功能,比如TCP、UDP

  • 会话层:控制应用程序之间会话能力,比如不同软件数据分发给不停软件

  • 表示层:数据格式标识,基本压缩加密功能。

  • 应用层:各种应用软件,包括 Web 应用。

2、在Linux的LVM分区格式下,请简述给根分区磁盘扩容的步骤?

这个分3种

第一种方法:

growpart /dev/vda 1
resize2fs /dev/vda1    

第二种方法:

partpeobe /dev/sda
resize2fs /dev/vda1    

第三种方法:

fdisk /dev/sdb   # n p 1 1 回车 回车 t 8e w
pvcreate /dev/sdb1
vgextend datavg /dev/sdb1
lvextend -r -L +100%free /dev/mapper/datavg-lv01

3、讲述一下Tomcat 8005、8009、8080三个端口的含义?

  • 8005 关闭时使用

  • 8009为AJP端口,即容器使用,如Apache能通过AJP协议访问Tomcat的8009端口来实现功能

  • 8080 一般应用使用

4、简述DNS进行域名解析的过程?

迭代查询(返回最优结果)、递归查询(本地找DNS)用户要访问 www.baidu.com,会先找本机的host文件,再找本地设置的DNS服务器,如果也没有找到,就去网络中找根服务器,根服务器反馈结果,说只能提供一级域名服务器.cn,就去找一级域名服务器,一级域名服务器说只能提供二级域名服务器.com.cn,就去找二级域名服务器,二级域服务器只能提供三级域名服务器.baidu.com.cn,就去找三级域名服务器,三级域名服务器正好有这个网站www.baidu.com,然后发给请求的服务器,保存一份之后,再发给客户端。

5、讲一下Keepalived的工作原理?

在一个虚拟路由器中,只有作为MASTER的VRRP(虚拟路由冗余协议)路由器会一直发送VRRP通告信息,BACKUP不会抢占MASTER,除非它的优先级更高。当MASTER不可用时(BACKUP收不到通告信息)多台BACKUP中优先级最高的这台会被抢占为MASTER。这种抢占是非常快速的(<1s),以保证服务的连续性由于安全性考虑,VRRP包使用了加密协议进行加密。BACKUP不会发送通告信息,只会接收通告信息。

6、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?

LVS:

  • 抗负载能力强、工作在第4层仅作分发之用,没有流量的产生,这个特点也决定了它在负载均衡软件里的性能最强的;无流量,同时保证了均衡器IO的性能不会受到大流量的影响;

  • 工作稳定,自身有完整的双机热备方案,如LVS+Keepalived和LVS+Heartbeat;

  • 应用范围比较广,可以对所有应用做负载均衡;

  • 配置简单,因为没有可太多配置的东西,所以并不需要太多接触,大大减少了人为出错的几率;

LVS的缺点:

  • 软件本身不支持正则处理,不能做动静分离,这就凸显了Nginx/HAProxy+Keepalived的优势。

  • 如果网站应用比较庞大,LVS/DR+Keepalived就比较复杂了,特别是后面有Windows Server应用的机器,实施及配置还有维护过程就比较麻烦,相对而言,Nginx/HAProxy+Keepalived就简单多了。

Nginx:

  • 工作在第7层,应用层,可以针对http应用做一些分流的策略。比如针对域名、目录结构。它的正则比HAProxy更为强大和灵活;

  • Nginx对网络的依赖非常小,理论上能ping通就就能进行负载功能

  • Nginx安装和配置简单

  • 可以承担高的负载压力且稳定,一般能支撑超过几万次的并发量;

  • Nginx不仅仅是一款优秀的负载均衡器/反向代理软件,它同时也是功能强大的Web应用服务器。Nginx在处理静态页面、特别是抗高并发方面相对apache有优势;

  • Nginx作为Web反向代理加速缓存越来越成熟,速度比传统的Squid服务器更快

Nginx的缺点:

  • Nginx不支持url来检测。

  • Nginx仅能支持http、https和Email协议

  • Nginx的Session的保持,Cookie的引导能力相对欠缺。

HAProxy:

  • HAProxy是支持虚拟主机的,可以工作在4、7层(支持多网段);

  • 能够补充Nginx的一些缺点比如Session的保持,Cookie的引导等工作;

  • 支持url检测后端的服务器;

  • 它跟LVS一样,本身仅仅就只是一款负载均衡软件;单纯从效率上来讲HAProxy更会比Nginx有更出色的负载均衡速度,在并发处理上也是优于Nginx的;

  • HAProxy可以对Mysql读进行负载均衡,对后端的MySQL节点进行检测和负载均衡,不过在后端的MySQL slaves数量超过10台时性能不如LVS;

  • HAProxy的算法较多,达到8种;

工作选择:

HAproxy和Nginx由于可以做七层的转发,所以URL和目录的转发都可以做在很大并发量的时候我们就要选择LVS,像中小型公司的话并发量没那么大选择HAproxy或者Nginx足已,由于HAproxy由是专业的代理服务器配置简单,所以中小型企业推荐使用HAproxy。

7、docker的工作原理是什么,讲一下

docker是一个Client-Server结构的系统,docker守护进程运行在宿主机上,守护进程从客户端接受命令并管理运行在主机上的容器,容器是一个运行时环境,这就是我们说的集装箱。

8、docker的组成包含哪几大部分

一个完整的docker有以下几个部分组成:

  • docker client,客户端,为用户提供一系列可执行命令,用户用这些命令实现跟 docker daemon 交互;

  • docker daemon,守护进程,一般在宿主主机后台运行,等待接收来自客户端的请求消息;

  • docker image,镜像,镜像run之后就生成为docker容器;

  • docker container,容器,一个系统级别的服务,拥有自己的ip和系统目录结构;运行容器前需要本地存在对应的镜像,如果本地不存在该镜像则就去镜像仓库下载。

docker 使用客户端-服务器 (C/S) 架构模式,使用远程api来管理和创建docker容器。docker 容器通过 docker 镜像来创建。容器与镜像的关系类似于面向对象编程中的对象与类。

9、docker与传统虚拟机的区别什么?

  • 传统虚拟机是需要安装整个操作系统的,然后再在上面安装业务应用,启动应用,通常需要几分钟去启动应用,而docker是直接使用镜像来运行业务容器的,其容器启动属于秒级别;

  • Docker需要的资源更少,Docker在操作系统级别进行虚拟化,Docker容器和内核交互,几乎没有性能损耗,而虚拟机运行着整个操作系统,占用物理机的资源就比较多;

  • Docker更轻量,Docker的架构可以共用一个内核与共享应用程序库,所占内存极小;同样的硬件环境,Docker运行的镜像数远多于虚拟机数量,对系统的利用率非常高;

  • 与虚拟机相比,Docker隔离性更弱,Docker属于进程之间的隔离,虚拟机可实现系统级别隔离;

  • Docker的安全性也更弱,Docker的租户root和宿主机root相同,一旦容器内的用户从普通用户权限提升为root权限,它就直接具备了宿主机的root权限,进而可进行无限制的操作。虚拟机租户root权限和宿主机的root虚拟机权限是分离的,并且虚拟机利用如Intel的VT-d和VT-x的ring-1硬件隔离技术,这种技术可以防止虚拟机突破和彼此交互,而容器至今还没有任何形式的硬件隔离;

  • Docker的集中化管理工具还不算成熟,各种虚拟化技术都有成熟的管理工具,比如:VMware vCenter提供完备的虚拟机管理能力;

  • Docker对业务的高可用支持是通过快速重新部署实现的,虚拟化具备负载均衡,高可用、容错、迁移和数据保护等经过生产实践检验的成熟保障机制,Vmware可承诺虚拟机99.999%高可用,保证业务连续性;

  • 虚拟化创建是分钟级别的,Docker容器创建是秒级别的,Docker的快速迭代性,决定了无论是开发、测试、部署都可以节省大量时间;

  • 虚拟机可以通过镜像实现环境交付的一致性,但镜像分发无法体系化&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值