k8s学习--YAML资源清单文件托管服务nginx

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
简介: k8s学习--YAML资源清单文件托管服务nginx

@TOC


前言

nginx 是一个开源的高性能 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。在容器和 Kubernetes 的背景下,nginx 经常被用作静态文件服务器,它能够快速地提供静态资源(如 HTML、CSS、JavaScript 文件)的访问。在这种情况下,nginx 可以作为一个 YAML 资源清单文件的托管服务,简单地将静态文件托管在其中。

具体来说,你可以使用 nginx 将 YAML 资源清单文件(如 Kubernetes 的 Deployment、Service、ConfigMap 等配置文件)托管在服务器上,使得这些文件能够通过 HTTP 或 HTTPS 协议进行访问。这种做法在容器编排和自动化部署中非常常见,因为它提供了一种简单而可靠的方式来分发和管理配置文件。

应用

环境

虚拟机

Ip 主机名 cpu 内存 硬盘
192.168.10.11 master01 2cpu双核 4G 100G
192.168.10.12 worker01 2cpu双核 4G 100G
192.168.10.13 worker02 2cpu双核 4G 100G
192.168.10.18 nginx 2cp双核 2G 100G

版本 centos7.9
已部署k8s-1.27

具体实现步骤

1.安装源码nginx及相关模块

wget http://nginx.org/download/nginx-1.24.0.tar.gz
wget https://github.com/openresty/echo-nginx-module/archive/v0.61.tar.gz
wget https://github.com/aperezdc/ngx-fancyindex/releases/download/v0.5.2/ngx-fancyindex-0.5.2.tar.xz

这三个文件分别是:

nginx-1.24.0.tar.gz:
这是 nginx 的源代码压缩包,版本号为 1.24.0。nginx 是一个高性能的开源 Web 服务器和反向代理服务器。

echo-nginx-module-0.61.tar.gz:
这是 Echo 模块(echo-nginx-module)的源代码压缩包,版本号为 0.61。Echo 模块是一个用于 nginx 的第三方模块,可以用来进行高级的 HTTP 信息处理。

ngx-fancyindex-0.5.2.tar.xz:
这是 ngx-fancyindex 模块的源代码压缩包,版本号为 0.5.2。ngx-fancyindex 是一个 nginx 第三方模块,用于生成目录的漂亮索引页面,使得文件目录在 Web 界面上更加友好和易于浏览。

解压压缩包

tar xf v0.61.tar.gz 
tar xf ngx-fancyindex-0.5.2.tar.xz

安装nginx依赖包

yum -y install gcc prce-devel zlib-devel openssl-devel

解压安装包,配置,编译,安装

tar nginx-1.24.0.tar.gz
cd nginx-1.24.0
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --add-module=/root/ngx-fancyindex-0.5.2/ --add-module=/root/echo-nginx-module-0.61
make && make install

命令

./configure 配置 #检测软硬件环境,定制安装参数
make 编译 #将源码文件转换为二进制文件
make install 安装 #将二进制文件复制到安装目录,完成初始化

2.修改nginx配置文件

vim /usr/local/nginx/conf/nginx.conf

在这里插入图片描述
解释
fancyindex on;
开启fancy索引

fancyindex_exact_size off;
不使用精确的大小,使用四舍五入Byte

index index;
此处默认索引页为index

3.启动验证

ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin
nginx
nginx -v

在这里插入图片描述

设置nginx随机启动:

echo "/usr/local/nginx/sbin/nginx" >> /etc/rc.d/rc.local
chmod +x /etc/rc.d/rc.local

Windows浏览器测试:http://192.168.10.18
在这里插入图片描述
在这里插入图片描述

可以看到是一模一样的

4.测试

在nginx服务器上写一个yaml文件
vim /usr/local/nginx/html/deployment1.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx1
  labels:
    app: nginx
spec:
  replicas: 3
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
        - name: nginx
          image: nginx:1.20
          ports:
            - containerPort: 80

一个简单部署nginx的yaml文件

回到master节点
通过连接使用yaml文件

kubectl apply -f http://192.168.10.18/deployment1.yaml

在这里插入图片描述
查看

kubectl get deployments.apps

在这里插入图片描述

kubectl get pod

在这里插入图片描述
实验完成

总结

总结来说,nginx 是一个多功能的服务器软件,可以用于托管静态文件和服务,也可以用来托管 YAML 资源清单文件以供访问和部署。

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
1天前
|
Kubernetes 监控 测试技术
k8s学习--基于Ingress-nginx实现灰度发布系统
k8s学习--基于Ingress-nginx实现灰度发布系统
k8s学习--基于Ingress-nginx实现灰度发布系统
|
1天前
|
Kubernetes 负载均衡 应用服务中间件
k8s学习--ingress详细解释与应用(nginx ingress controller))
k8s学习--ingress详细解释与应用(nginx ingress controller))
|
1天前
ingress相关yaml文件报错且相关资源一切正常解决方法
ingress相关yaml文件报错且相关资源一切正常解决方法
ingress相关yaml文件报错且相关资源一切正常解决方法
|
1天前
|
Kubernetes Docker Perl
k8s常见故障--yaml文件检查没有问题 pod起不来(一直处于创建中)
k8s常见故障--yaml文件检查没有问题 pod起不来(一直处于创建中)
|
18天前
|
缓存 前端开发 JavaScript
终极 Nginx 配置指南(全网最详细)
本文详细介绍了Nginx配置文件`nginx.conf`的基本结构及其优化方法。首先通过删除注释简化了原始配置,使其更易理解。接着,文章将`nginx.conf`分为全局块、events块和http块三部分进行详细解析,帮助读者更好地掌握其功能与配置。此外,还介绍了如何通过简单修改实现网站上线,并提供了Nginx的优化技巧,包括解决前端History模式下的404问题、配置反向代理、开启gzip压缩、设置维护页面、在同一IP上部署多个网站以及实现动静分离等。最后,附上了Nginx的基础命令,如安装、启动、重启和关闭等操作,方便读者实践应用。
214 84
终极 Nginx 配置指南(全网最详细)
|
7天前
|
JavaScript 应用服务中间件 开发工具
vue尚品汇商城项目-day07【53.nginx反向代理配置】
vue尚品汇商城项目-day07【53.nginx反向代理配置】
18 4
|
7天前
|
缓存 应用服务中间件 nginx
nginx如何配置?配置项都是什么意思?
nginx如何配置?配置项都是什么意思?
23 1
|
11天前
|
应用服务中间件 nginx Docker
docker应用部署---nginx部署的配置
这篇文章介绍了如何使用Docker部署Nginx服务器,包括搜索和拉取Nginx镜像、创建容器并设置端口映射和目录映射,以及如何创建一个测试页面并使用外部机器访问Nginx服务器。
|
2月前
|
应用服务中间件 nginx Docker
本地通过域名访问虚拟机上nginx的服务、搭建域名访问环境一(反向代理配置)
这篇文章介绍了如何通过域名在本地访问虚拟机上的nginx服务,包括创建nginx容器、修改配置文件、修改本地host文件以及进行访问测试的详细步骤。文章提供了具体的Docker命令来创建并配置nginx容器,展示了配置文件的修改示例,说明了如何在本地系统的hosts文件中添加虚拟机IP和自定义域名,以及如何通过浏览器进行测试访问。
本地通过域名访问虚拟机上nginx的服务、搭建域名访问环境一(反向代理配置)
|
1月前
|
应用服务中间件 nginx
一文搞定Nginx配置RTMP!
一文搞定Nginx配置RTMP!
64 3
下一篇
无影云桌面