• 作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。 

  • 公众号:网络豆云计算学堂

  •  座右铭:低头赶路,敬事如仪

  • 个人主页: 网络豆的主页​​​​​

一.选择题

1.HTTP协议默认使用哪个端口?

A. 80 (http超文本传输协议)

B. 443  (https 安全超文本传输协议SSL/TLS加密)

C. 80  (http备用端口)

D. 21  (FTP 文件传输协议) 

答案:A

2.以下哪个请求方法是HTTP协议中用于获取资源的

  1. GET: (下载)
  2. POST:(用户向服务器提高数据)
  3. PUT: (上传)
  4. DELETE: (请求删除指定的资源)

答案:A

3.在HTTP协议中,以下哪个请求头用于指定可以接受的响应内容类型?

A. Accept (内容类型)

B. Content-Typ(响应头(告诉客户端返回的内容类型))

C. User-Agent (请求头:浏览器版本,操作系统)

D. Referer (请求头:日志记录)

答案:A

4.以下哪个协议用于加密HTTP通信?

A. SSL (加密)

B. TLS (实现 HTTPS 加密的关键技术

C. HTTPS (加密的超文本传输协议)

D. SSH (远程连接,加密通信)

答案:C

5.在HTTP协议中,以下哪个请求头用于指定请求体的内容类型? 

A. Accept (响应内容)

B. Content-Type (请求头:浏览器版本,操作系统

C. User-Agent (向服务器提供客户端的相关信息

D. Referer (告知服务器当前请求页面的来源页面地址

答案:B

6.以下哪个状态码表示HTTP请求的资源未找到?

A. 200  (请求成功并返回所请求的数据。)

B. 404 请求的资源未找到

C. 500 服务器内部错误

D. 301 (表示永久重定向

答案:B

7.在HTTP协议中,以下哪个响应头用于指定资源的最后修改时间?

A. Last-Modified 指定资源的最后修改时间

B. ETag 用于标识资源的版本

C. Expires 用于指定资源的过期时间

D. Cache-Control (控制缓存策略

答案:A

8. Nginx中,哪个指令用于设置客户端请求体的最大值?

A. client_max_body_size 客户端请求体的最大值

B. client_body_buffer_size

C. client_body_temp_path

D. client_body_timeout

答案:A

9. 以下哪个模块是Nginx提供的反向代理模块?

A. ngx_http_proxy_module  (Nginx 提供的反向代理模块)

B. ngx_http_fastcgi_module 处理 FastCGI 协议

C. ngx_http_uwsgi_module 处理 uWSGI 协议

D. ngx_http_scgi_module  (处理 SCGI 协议

答案:A

10. Nginx中,以下哪个指令用于设置服务器名称?

A. server_name  (设置服务器名称

B. server_domain  (设置服务器域名

C. server_host   (设置主机名称)

D. server_addr  (设置服务器地址

答案:A

11. 以下哪个模块是Nginx提供的用于实现负载均衡的模块? 

A. ngx_http_upstream_module  (Nginx 提供的用于实现负载均衡的模块

B. ngx_http_rewrite_module   (用于 URL 重写

C. ngx_http_access_module 用于控制访问权限

D. ngx_http_auth_basic_module  (用于基本的 HTTP 认证

答案:A

12. 以下哪个模块是Nginx提供的用于实现SSL加密的模块? 

A. ngx_http_ssl_module  (Nginx 提供的用于实现 SSL 加密的模块)

B. ngx_http_gzip_module  (启用 Gzip 压缩功能

C. ngx_http_rewrite_module  (用于 URL 重写

D. ngx_http_auth_basic_module  (用于基本的 HTTP 认证

答案: A

13. Nginx中,以下哪个指令用于设置客户端请求的超时时间? 

A. client_body_timeout  (设置读取客户端请求体的超时时间

B. client_header_timeout  (设置读取客户端请求头的超时时间

C. send_timeout  (设置客户端请求的超时时间

D. keepalive_timeout  (设置长连接的超时时间

答案:C

14. Nginx中,以下哪个指令用于设置服务器监听的端口?

A. listen (监听端口)

B. server_port  (服务器端口,并非

C. port  (端口

D. bind  (套接字

答案:A

15. Nginx作为反向代理服务器时,通常用于以下哪个目的? 

A. 提高安全性

B. 负载均衡

C. 缓存静态资源

D. 所有上述

答案:D

16. Nginx中,以下哪个模块用于实现反向代理功能? 

A. ngx_http_proxy_module (用于实现反向代理功能)

B. ngx_http_rewrite_module (用于URL重写)

C. ngx_http_core_module  (提供一些基本的配置和处理功能)

D. ngx_http_upstream_module   (用于负载均衡相关的配置)

答案:A

17. 当使用Nginx作为反向代理时,客户端请求不会直接到达后端服务器,而是先经

Nginx。这种模式通常被称为?

A. 正向代理  (客户端通过代理服务器访问外部网络

B. 反向代理  (Nginx 负责将请求转发到后端服务器,并将后端服务器的响应返回给客户端)

C. 透明代理  “透明”的,客户端不需要进行特殊配置

D. 隧道代理  (用于建立特定类型的网络连接隧道

答案:B

18. Nginx中,以下哪个指令用于指定后端服务器的列表?

A. proxy_pass   (将请求转发到指定的单个后端服务器)

B. upstream     (定义一个服务器组

C. server        (配置虚拟服务器的相关参数

D. Location      (根据请求的 URI 进行匹配,从而执行特定的配置指令

答案:B

19. Nginx中,以下哪个指令用于设置代理缓存的路径? 

A. proxy_cache_path  (设置代理缓存的路径

B. proxy_cache       (启用或禁用代理缓存功能

C. proxy_temp_path   (用于设置临时文件的存储路径

D. proxy_store_path   (用于设置代理缓存路径的正确指令

答案:A

20. Ansible中,用于指定要管理的主机的文件是什么?

A. ansible.cfg   (Ansible 的配置文件

B. inventory    (用于指定要管理的主机

C. playbook    (Ansible 用于定义任务和流程的文件

D. roles        (组织和复用 Ansible 任务的模块

答案:B

21. 以下哪个是Ansible的默认通信协议?

A. HTTP       (超文本传输协议)

B. HTTPS      (加密的超文本传输协议)

C. SSH         (Ansible 的默认通信协议

D. FTP          (文件传输协议)

答案:C

22. Ansible中,以下哪个命令用于执行Ad-Hoc命令?

A. ansible-playbook   (用于执行预编写的 playbook

B. ansible-console    (提供了一个交互式的控制台来执行 Ansible 任务

C. ansible           (用于执行 Ad-Hoc 命令

D. ansible-galaxy     (用于管理 Ansible 角色

答案:C

23. 以下哪个是Ansible中的事实收集模块? 

A. setup    (Ansible 中的事实收集模块

B. facts     (通过事实收集模块

C. gather_facts   (一个参数或选项,用于控制是否收集目标主机的事实信息

D. all_facts    (并非 Ansible 中的标准模块

答案:A

24. LVM架构中,哪一层负责物理存储的实际分配? 

A. Physical Volume (PV)   (物理存储的实际分配

B. Volume Group (VG)         (由一个或多个 Physical Volume 组成的存储池

C. Logical Volume (LV)        (是从 Volume Group 中划分出来的逻辑卷

D. Logical Unit Number (LUN)  (用于存储区域网络 (SAN) 环境中

答案:A

25. 以下哪个命令用于创建Volume Group

A. pvcreate   用于创建 Physical Volume(物理卷)

B. vgcreate   用于创建 Volume Group(卷组)

C. lvcreate    用于创建 Logical Volume(逻辑卷)

D. lvextend   用于扩展 Logical Volume 的大小

答案:B

26. 哪个LVM命令用于扩展逻辑卷的大小?

A. pvresize    (用于调整物理卷的大小

B. vgextend   (用于扩展卷组的大小

C. lvextend    (用于扩展逻辑卷的大小

D. lvreduce    (用于减小逻辑卷的大小

答案:C

27. 当你想要从Volume Group中移除一个Physical Volume时,应该使用哪个命令? 

A. pvremove    (从 Volume Group 中移除一个 Physical Volume)

B. vgremove    (用于删除一个 Volume Group

C. lvremove    (用于删除一个 Logical Volume

D. pvmove     (用于在 Physical Volume 之间移动数据

答案:A

28. 哪个命令用来显示LVM的详细信息,包括LVVGPV的状态?

A. lvs   (显示逻辑卷的简要信息

B. pvs   (主要显示物理卷的简要信息

C. vgs   (主要显示卷组的简要信息

D. lvdisplay / pvdisplay / vgdisplay   (提供更详细和全面的状态信息

答案:D

29. 下列哪个运行级别表示多用户图形界面: 

A. Runlevel 1   (单用户模式

B. Runlevel 2   (多用户模式(无网络)

C. Runlevel 5   (多用户图形界面

D. Runlevel 6   (重启系统

答案:C

30. Linux中,如何查看某个特定服务的启动日志?

A. journalctl -u 服务名.service  (查看某个特定服务的启动日志

B. tail /var/log/messages        (查看系统的通用消息日志的末尾部分

C. cat /var/log/syslog | grep 服务名  (搜索与服务名相关的信息,但不是专门针对服务启动日志

D. less /var/log/boot.log         (查看系统启动相关的日志

答案:A

二、简答题

1. 简述一次 Web 资源请求的具体过程?

(1)用户输入域名->浏览器跳转->app缓存->DNS解析(递归查询|迭代查询)

(2)由浏览器向服务器发起tcp连接(三次握手)

(3)客户端发起HTTP请求:

请求的方法(获取)

请求的主机:域名

请求的资源类型(html)

请求的端口(80、443)

请求携带的参数(类型、压缩、认证等)

(4)服务器的响应:

服务器的web软件

响应的文件类型

是否压缩

是否长连接

(5)客户端向服务器发起tcp断开(四次握手)

2. 实现session一致,有哪些方法?

 (1).粘性会话(Sticky Session)

(2).Session 复制

(3).Session 集中存储

(4).令牌机制

3. 用nginx部署web服务器,需要如何优化nginx?

创建代理配置文件,添加优化项(或直接使用第(4)步的配置)

vim /etc/nginx/conf.d/lb1.conf

添加:

server {

        listen 80;

        server_name blog.benet.com;

        location / {

                proxy_pass http://192.168.8.6;

                proxy_set_header Host $http_host; #重新定义或者添加发往后端服务器的请求头

                proxy_set_header X-Real-IP $remote_addr; #启用客户端真实地址(否则日志中显示的是代理在访问网站)

                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

#记录代理地址

proxy_connect_timeout 30; (单位:秒,默认60秒) #代理和后端服务器连接超时时间

proxy_send_timeout 60; #后端服务器传回代理的超时时间

proxy_read_timeout 60; #代理等待后端服务器的响应时间

proxy_buffering on; #启用缓存,后端返回内容先缓存,再给客户端,收到多少转多少

proxy_buffer_size 32k; #代理缓存用户头信息的缓存区大小

proxy_buffers 4 128k; #缓存区的设置

proxy_busy_buffers_size 256k;

#从proxy_buffers划出一部分缓冲区来专门向客户端传送数据的地方

proxy_max_temp_file_size 256k;

#超大的响应头存储成文件。

        }

}

}

保存退出

systemctl restart nginx

扩展:创建优化项文件,网站配置文件直接调用(选做,但推荐)

vim /etc/nginx/nginx_params

网站配置调用

vim /etc/nginx/conf.d/lb1.conf

  1. nginx作为负载均衡,有哪些调度方法?

轮询(Round Robin)

加权轮询(Weighted Round Robin)’

IP 哈希(IP Hash)

最少连接(Least Connections)

加权最少连接(Weighted Least Connections)

  1. 设计一个支持高并发、高可用的动态网站架构?

实验目标:七台服务器搭建lnmp,实现高并发,高可用的动态网站架构

Lb1

1).搭建Keepalived,以vrrp为底层,实现多台主机高可用群集lb1为主

2).搭建nginx负载均衡,接收到客户的URL访问请求后分散转发到后台web群集节点

3).将nginx配置文件拷贝到lb2

Lb2

  1. .同样搭建Keepalived,lb2为备份,若lb1  done掉后,lb2会立即收到消息并接管lb1的工作
  2. .搭建nginx负载均衡,接收到客户的URL访问请求后分散转发到后台web群集节点

Web1

  1. .搭建nginx  web网站,先安装nginx
  2. 复制wordpress网页到根目录之下,并解压赋权
  3. 修改web配置文件添加动态php和静态,将网页根目录拷贝到php服务器上,以便php服务器读取网页内容
  4. 将默认配置文件及wordpress网页根目录同时拷贝到web2上实现均可访问
  5. 将网页根目录拷贝到nfs上,查看并挂载

Web2:同样搭建nginx  web网站

  1. .先安装nginx
  2. 接收到web1所拷贝的内容后,重启nginx服务

Php:动态解析器  

  1. 先安装php服务
  2. 因php服务默认只能监听本机的Ip,所以需要修改配置文件,并重启服务

Mysql:数据库

  1. .先安装数据库
  2. 并创建库和用户名及密码,重启服务

Nfs:文件共享

  1. .默认以安装nfs
  2. 创建共享目录,并设置永久权限,重启服务

Logo

一站式 AI 云服务平台

更多推荐