K8S部署nginx并且使用NFS存储数据

安装NFS

在master安装NFS

systemctl start nfs-server

修改配置 /etc/exports

/data *(rw,no_root_squash,no_all_squash,sync)

目录为 /data 允许所有地址访问

验证下

[root@master nginx]# showmount -e 192.168.57.61 
Export list for 192.168.57.61:
/data *

共享可以正常访问

K8S部署nginx

新建 nginx.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
  labels:
    app: nginx
spec:
  replicas: 3
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.14.2
        ports:
        - containerPort: 80
        volumeMounts:
        - name: data
          mountPath: /usr/share/nginx/html
      volumes:
      - name: data
        nfs:
          path: /data
          server: 192.168.57.61

---
apiVersion: v1
kind: Service
metadata:
  name: nginx-service
  labels:
    app: nginx
spec:
  ports:
  - port: 9000
    name: nginx
    protocol: TCP
    targetPort: 80
    nodePort: 31090
  selector:
    app: nginx
  type: NodePort
---
apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv-nfs
spec:
  capacity:
    storage: 10Gi
  accessModes:
    - ReadWriteMany 
  nfs:
    path: /data
    server: 192.168.57.61

---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: pvc-nfs
spec:
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 10Gi

在deployment 配置中

        volumeMounts:
        - name: data
          mountPath: /usr/share/nginx/html
      volumes:
      - name: data
        nfs:
          path: /data
          server: 192.168.57.61

这部分代表 容器内的 /usr/share/nginx/html 目录

挂到NFS 的 /data目录

NFS服务器的地址为 192.168.57.61

在Service中

apiVersion: v1
kind: Service
metadata:
  name: nginx-service
  labels:
    app: nginx
spec:
  ports:
  - port: 9000
    name: nginx
    protocol: TCP
    targetPort: 80
    nodePort: 31090
  selector:
    app: nginx
  type: NodePort

ports:port:9000 代表pod之间通信的端口为9000

protocol:TCP 代表只允许TCP连接

targetPort:80 代表pod内的80端口

nodePort:31090 代表映射到集群外的31090端口,刚才提到的80端口

运行

kubectl apply -f  nginx.yaml 

查看pod状态(由于我没有设置namespace 就是默认的命名空间 不用指定 -n )

[root@master nginx]# kubectl get pod 
NAME                                READY   STATUS    RESTARTS   AGE
nginx-deployment-5d7bfd6588-6g5mn   1/1     Running   0          48m
nginx-deployment-5d7bfd6588-7sz4p   1/1     Running   0          48m
nginx-deployment-5d7bfd6588-vkbvq   1/1     Running   0          48m

测试

挂载NFS

 mount -t nfs -o rw 192.168.57.61:/data /data1
echo "11111" >> /data1/index.html 

访问:http://192.168.57.76:31090/

 

可以看到1111 已经显示在浏览器中了

index.html已经在容器内了 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/219792.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

我不是DBA之慢SQL诊断方式

最近经常遇到技术开发跑来问我慢SQL优化相关工作,所以干脆出几篇SQL相关优化技术月报,我这里就以公司mysql一致的5.7版本来说明下。 在企业中慢SQL问题进场会遇到,尤其像我们这种ERP行业。 成熟的公司企业都会有晚上的慢SQL监控和预警机制。…

手动创建spring bean并注入

文章目录 前言一、jar包中,相同class不同类加载器加载的时候是同一个class嘛?二、利用ConfigurableListableBeanFactory手动注册bean注册bean,并自动注入依赖bean根据类型获取注入的bean,两个bean是一个吗? 三、同一份字节码,class隔离,bean隔离总结 前言 注入一个…

2952. 需要添加的硬币的最小数量(结论题)

力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 分析知:设指针值从1开始依次递增,每次将coins里的值累加起来看能否得到或者大于当前指针值 ,否则就将该指针值累加起来,即需要添加的数 class Solution …

JOSEF 单相电压继电器 WY-31A1 DC220V 过压动作,导轨安装

系列型号 单相 JY-45A1电压继电器;JY-45B1电压继电器; JY-45C1电压继电器;JY-45D1电压继电器; JY-41A1电压继电器;JY-41B1电压继电器; JY-41C1电压继电器;JY-41D1电压继电器; …

冬天来了,波司登的高端化“春天”不远了?

最近,羽绒服频繁“贵”上热搜。 在众多热搜词条中,一条“国产羽绒服卖到7000元”的话题一度将波司登推上了舆论的风口浪尖。 对此,波司登在最新的业绩说明会上进行了回应,公司表示:“波司登旗下主品牌及子品牌将形成差…

学习数分--简单案例1

业务背景:某服务类app,近期发现日新增用户数下滑明显。 具体描述:假设公司产品(一款本地服务类app),近期发现日新增用户数下滑明显。老板要求你分析:数据异动的原因是什么? #最开始…

揭秘DeepMind、OpenAI成立内幕,马斯克、奥特曼、佩奇、哈萨比斯的爱恨情仇......

前些天OpenAI内斗的政权之争,相信各位看官在吃瓜的同时会感到大为震撼。OpenAI这次“政变”事件,让世人第一次看到那些将决定人工智能发展未来的科技大佬之间的激烈争斗。 但权利的斗争在硅谷AI激荡发展十余年中绝不是第一次。《纽约时报》为此采访了80…

VBA技术资料MF92:将多个Excel表插入Word文档的不同位置

我给VBA的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的工作效率,而且可以提高数据的准确度。我的教程一共九套,分为初级、中级、高级三大部分。是对VBA的系统讲解,从简单的入门,到…

Hadoop学习笔记(HDP)-Part.12 安装HDFS

目录 Part.01 关于HDP Part.02 核心组件原理 Part.03 资源规划 Part.04 基础环境配置 Part.05 Yum源配置 Part.06 安装OracleJDK Part.07 安装MySQL Part.08 部署Ambari集群 Part.09 安装OpenLDAP Part.10 创建集群 Part.11 安装Kerberos Part.12 安装HDFS Part.13 安装Ranger …

MATLAB|学习小提示

Part1一些小小小提示 1遇到问题怎么办 不要怕提问,谁都是新手过来的,matlab程序我是自学的从来也没人教过我,我不懂就百度解决的,作为初学者,你遇到的问题,其他人也大多遇到过,绝大多数百度可以…

avamar DD组合的备份故障

证书过期导致的失败 先是显示DD页面崩了 Avamar DD 集成 — DD 在 Avamar AUI/GUI 中显示红色解决方案路径 | Dell 中国 排查了一番 尝试了重启DD 然而并没用 然后尝试更新证书 页面确实起来了 但是证书还是更新失败 确定原因还是因为版本太低而宣告失败 证书更新失败 …

Flannel源码解析

Flannel源码解析 项目地址: https://github.com/flannel-io/flannel 更多文章访问 https://www.cyisme.top flannel中有三种工作模式: udp。 性能最低,利用tun/tap设备,通过udp封装ip包。中间需要经过多次内核态和用户态的切换。vxlan。 性能中等&…

判断一个链表是否为回文结构

📑打牌 : da pai ge的个人主页 🌤️个人专栏 : da pai ge的博客专栏 ☁️宝剑锋从磨砺出,梅花香自苦寒来 🌤️题目结构 给定一个…

Python技术操作1-高效办公:将文本、图片和表格信息批量写入Word文档

大家好,我是微学AI,今天给大家介绍一下Python技术操作1-高效办公:将文本、图片和表格信息批量写入Word文档。在现代办公、教育、科研等多个领域都有广泛的应用场景。本文列举一些具体的应用场景,并简要说明其中的原理,并介绍实现的…

C++入门第十一篇----多态

前言: 和前面的继承一样,多态也是对类和对象的功能进行扩展,以让其更加好用的一个知识点,接下来,就让我们总结一下多态,这个依托了继承的一个重要知识点。 对多态的理解和多态的概念: 何为多…

基于go文件同步工具的升级迭代

介绍 同样,该工具适用于多个项目不同版本的维护,文件更新和新增的同步(自动创建目录),支持自动提交svn。 升级迭代 之前的文件同步工具,依赖chrome和http包,有时候js加载页面不太稳定,所以有空闲就升级迭…

Cannot find module ‘node:url‘报错处理

在运行vite搭建的项目时,遇到Cannot find module node:url’报错。具体错误如图所示: 造成以上问题的原因是node版本较低。Vite 需要 Node.js 版本 14.18,16。 解决方案: 上面是通过nvm切换高版本node。 再次执行运行命令&…

一个完整的转录组分析流程

本期的教程代码(部分) #!/bin/bash # # 使用fastq-dump解压sra数据 # 本数据集为双端数据 # 解压格式为fq.gz for i in SRR6929571 SRR6929572 SRR6929573 SRR6929574 SRR6929577 SRR6929578; do pfastq-dump --split-files --threads 20 --gzip -s 00_…

iview Table实现跨页勾选记忆功能以及利用ES6的Map数据结构实现根据id进行对象数组的去重

因为iview Table组件的勾选是选中当前页的所有数据,当我们切到别的页面时,会发送请求给后端,这个时候就会刷新我们之前页码已经选中的数据。现在有个需求就是,在我们选择不同页码的数据勾选中之后,实现跨页勾选记忆功能,就是说已经打钩了的数据,不管切到哪一页它都是打钩…

leetcode115.从中序与后序遍历序列构造二叉树,手把手带你构造二叉树(新手向)

构造二叉树是树问题中的难点(相对于遍历二叉树),一开始做的读者会感觉无从下手,这道题在训练营专栏里讲过,是四道题一起讲的,但是现在看来讲的并不全面、具体,所以想单独出一期再来讲一下如何构…