当前位置: 首页 > news >正文

【Rancher Server + Kubernets】- Nginx-ingress日志持久化至宿主机

目录

  • 【Rancher Server + Kubernets】- Nginx-ingress日志持久化至宿主机
  • 一、环境准备
    • 1、软件准备
    • 2、环境规划
  • 二、Nginx-ingress-controller服务日志持久化至宿主机目录配置
    • 1、在宿主机创建日志挂载目录
    • 2、配置nginx-ingress-controller服务
    • 3、验证

【Rancher Server + Kubernets】- Nginx-ingress日志持久化至宿主机

本文主要是针对基于RancherServer搭建的Kubernets集群中,实现Nginx-ingress中的日志实现持久化,并保存至各Worker节点的目录。

  • 如果要基于RancherServer搭建Kubernets集群请参照【Rancher Server + Kubernets搭建云原生集群平台】

【Rancher官方文档】
【Rancher Server + Kubernets搭建云原生集群平台】

一、环境准备

1、软件准备

序号环境名称说明版本号
1Rancher Serverk8s运维平台v2.5.7

2、环境规划

序号IPHostName操作系统K8s角色说明
1192.168.255.141rancherAnolis OS 8.9 x86 64位Rancher服务Kubernetes 管理平台
2192.168.255.142masterAnolis OS 8.9 x86 64位控制节点Kubernetes Master
3192.168.255.143worker01Anolis OS 8.9 x86 64位工作节点Kubernetes Master高可用节点,如果不需要高可用,可不部署此服务器
4192.168.255.144worker02Anolis OS 8.9 x86 64位工作节点Kubernetes Worker

二、Nginx-ingress-controller服务日志持久化至宿主机目录配置

1、在宿主机创建日志挂载目录

(1)、创建日志挂载目录

在所有worker节点上执行下面命令

[root@worker01~]# mkdir /data/logs/nginx-ingress -p

(2)、确认运行容器的用户组

进入容器shell窗口

在这里插入图片描述

执行命令id,就会输出运行容器的用户及用户所在组的名称和id,如下图所示:用户和组名是:www-data,id:101

在这里插入图片描述

(3)、将目录挂载目录授权给nginx-ingress-controller容器内相同的用户组

通过上步可以得知运行容器【nginx-ingress-controller】的用户组信息

  • 用户名:www-data, 用户ID:101
  • 用户所属组:www-data, 组ID:101

本步骤非常关键,否则容器没有操作宿主机目录的权限

在所有worker节点操作系统中执行下面命令,本文方案中有两个work节点,分别是work01、work02

[root@worker01~]# groupadd -g 101 www-data
[root@worker01~]# useradd -u 101 -g 101 www-data
[root@worker01~]# chown -R 101:101 /data/nginx/logs
[root@worker01~]# chmod 755 /data/nginx/logs

在这里插入图片描述

2、配置nginx-ingress-controller服务

(1)、进入仪表盘
在这里插入图片描述
(2)、进入Daemonsets画面

只显示【ingress-nginx】命名空间

在这里插入图片描述
(2)、编辑【nginx-ingress-controller】的配置在这里插入图片描述
(3)、编辑【nginx-ingress-controller】的配置

在【Container】->【Command】->Arguments添加日志配置

  • –log_dir=/var/log/nginx/
  • –logtostderr=false
  • –ingress-class=nginx

完整配置内容如下

/nginx-ingress-controller 
--configmap=$(POD_NAMESPACE)/nginx-ingress-configuration 
--election-id=ingress-controller-leader --ingress-class=nginx 
--tcp-services-configmap=$(POD_NAMESPACE)/tcp-services 
--udp-services-configmap=$(POD_NAMESPACE)/udp-services 
--annotations-prefix=nginx.ingress.kubernetes.io 
--log_dir=/var/log/nginx/ 
--logtostderr=false
--ingress-class=nginx

在这里插入图片描述

添加【挂载目录】

在这里插入图片描述
在这里插入图片描述
(4)、编辑【nginx-ingress-configuration】ConfigMaps
在这里插入图片描述
在这里插入图片描述

3、验证

xshell连接至work01和work02节点后,在/data/nginx/logs目录下输出了nginx容器的日志了
在这里插入图片描述

至此,nginx-ingress中的日志就持久至各宿主机目录上了。

http://www.lryc.cn/news/578940.html

相关文章:

  • uniapp项目中node_modules\sass\sass.dart.js的体积过大怎么处理
  • LeetCode[617]合并二叉树
  • 音频调试经验总结
  • 单链表和双向链表
  • Knife4j+Axios+Redis:前后端分离架构下的 API 管理与会话方案
  • 将文件使用base64存入数据库并在微信小程序中实现文件下载
  • 修复手机液晶面板显性横向线性不良定位及相关液晶线路激光修复原理
  • 【安全工具】SQLMap 使用详解:从基础到高级技巧
  • 【深度学习机器学习】Epoch 在深度学习实战中的合理设置指南
  • cmake find_package
  • Minio安装配置,桶权限设置,nginx代理 https minio
  • JAVA学习-练习试用Java实现“人脸识别:使用OpenCV+Java实现人脸检测与识别”
  • 【论文阅读】DeepEyes: Incentivizing “Thinking with Images” via Reinforcement Learning
  • STM32之光敏电阻传感器模块
  • uniapp 滚动tab
  • WPF控件大全:核心属性详解
  • Android-EDLA 解决 GtsMediaRouterTestCases 存在 fail
  • 移动公司Linux运维工程师招聘笔试题
  • 深入解析外观模式(Facade Pattern):简化复杂系统的优雅设计
  • STM32F103RET6 介绍
  • 机器学习:集成学习方法之随机森林(Random Forest)
  • 基于多种机器学习的江苏省二手房价格预测系统的设计与实现【城市全国可换】
  • 【QT】ROS2 Humble联合使用QT教程
  • Qt designer坑-布局内子控件的顺序错乱
  • ABAP+记录一个BDC的BUG修改过程
  • transformers==4.42.0会有一个BUG
  • pdf 合并 python实现(已解决)
  • Python 数据分析与可视化 Day 14 - 建模复盘 + 多模型评估对比(逻辑回归 vs 决策树)
  • 文档全文搜索引擎:AnyTXT Searcher
  • 【RHCSA-Linux考试题目笔记(自用)】servera的题目