nfs

k8s数据持久化

生来就可爱ヽ(ⅴ<●) 提交于 2020-02-26 02:24:31
k8s数据持久化 Docker容器是有生命周期的,因此数据卷可以实现数据持久化 数据卷主要解决的问题: 数据持久性:当我们写入数据时,文件都是暂时性的存在,当容器崩溃后,host就会将这个容器杀死,然后重新从镜像创建容器,数据就会丢失 数据共享:在同一个Pod中运行容器,会存在共享文件的需求 存储类 (Storage class)是k8s资源类型的一种,它是有管理员为管理PV更加方便创建的一个逻辑组,可以按照存储系统的性能高低,或者综合服务质量,备份策略等分类。不过k8s本身不知道类别到底是什么,它这是作为一个描述。 存储类的好处之一就是支持PV的动态创建,当用户用到持久性存储时,不必再去提前创建PV,而是直接创建PVC就可以了,非常的方便。 存储类对象的名称很重要,并且出了名称之外,还有3个关键字段 Provisioner(供给方): 及提供了存储资源的存储系统。k8s内建有多重供给方,这些供给方的名字都以“kubernetes.io”为前缀。并且还可以自定义。 Parameters(参数):存储类使用参数描述要关联到的存储卷,注意不同的供给方参数也不同。 reclaimPolicy:PV的回收策略,可用值有Delete(默认)和Retain Volume: emptyDir(空目录): 使用情况比较少,一般只做临时使用,类似Docker数据 持久化的:docker

nfs网络文件系统--学习笔记

爱⌒轻易说出口 提交于 2020-02-25 23:25:48
本次实验的环境是redhat 7.0系统 nfs服务可以将远程linux服务器上的文件共享资源挂载到本地linux主机上,本地的linux主机可以基于TCP/IP协议,像使用本地目录文件一样去操作远程共享的目录文件。 1. 服务器端 1.1 安装 [root@localhost Desktop]# yum install nfs-utils -y # 关闭iptables [root@localhost Desktop]# iptables -F [root@localhost Desktop]# system^C [root@localhost Desktop]# service iptables save iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ] 1.2 创建共享目录 [root@localhost Desktop]# mkdir /nfsdir # 确保共享目录有权限,其他人可以读写 [root@localhost Desktop]# chmod -Rf 777 /nfsdir 1.3 配置nfs 主配置文件/etc/exports 格式:共享目录的路径 允许访问的nfs客户端IP(共享权限参数),nfs客户端IP和权限之间没有空格。 权限的参数: 参数 作用 ro 只读 rw 读写

k8s存储数据持久化,emptyDir,hostPath,基于Nfs服务的PV,PVC

我只是一个虾纸丫 提交于 2020-02-25 22:11:43
在docker和K8S中都存在容器是有生命周期的,因此数据卷可以实现数据持久化。 数据卷解决的主要问题: 1.数据持久性:当我们写入数据时,文件都是暂时性的存在,当容器崩溃后,host就会将这个容器杀死,然后重新从镜像创建容器,数据就会丢失。 2.数据共享:在同一个Pod中运行容器,会存在共享文件的需求。 数据卷的类型: 1.emptyDir emptyDir数据卷类似于docker数据持久化的docker manager volume,该数据卷初分配时,是一个空目录,同一个Pod中的容器可以对该容器中的目录具有执行读写操作,并且共享数据。 场景特点:一个相同的pod,不同的容器,共享数据卷 如果容器被删除,数据仍然存在,如果Pod被删除,数据也会被删除 测试: **vim emptyDir.yaml** apiVersion: v1 kind: Pod metadata: name: producer-consumer spec: containers: - image: busybox name: producer volumeMounts: - mountPath: /producer_dir#这里的路径指的是容器内的路径 name: shared-volume#指定本地的目录名 args:#定义容器运行后,会进行的操作 - /bin/sh - -c - echo

StatefulSet

无人久伴 提交于 2020-02-25 19:31:02
StatefulSet StatefulSet:Pod控制器。 ​ RC,RS,Deployment,DS。---------->无状态的服务。 ​ template(模板):根据模板创建出来的Pod,他们的状态都是一模一样的(除了名称,IP,域名之外) ​ 可以理解为:任何一个Pod,都可以被删除,然后用新生成的Pod进行替换。 有状态的服务:需要记录前一次或者多次通信中的相关事件,以作为一下通信的分类标准。比如:mysql等数据库服务。(Pod的名称,不能随意变化。数据持久化的目录也是不一样,每一个Pod都有自己独有的数据持久化存储目录。) ​ mysql:主从关系。 如果把之前无状态的服务比喻为牛,羊等牲畜。把有状态比喻为:宠物。 每一个Pod对应一个PVC,每一个PVC对应一个PV。 ​ storageclass:自动创建PV。 ​ 需要解决:自动创建PVC------------>volumeClaimTemplates [root@master ~]# vim statefulset.yaml apiVersion: v1 kind: Service metadata: name: headless-svc labels: app: headless-svc spec: ports: - port: 80 selector: app: headless-pod

Kubernetes数据持久化之Storage Class(自动创建PV)

限于喜欢 提交于 2020-02-25 18:57:44
通过博文 Kubernetes的存储之Volume 可以了解到Kubernets实现数据持久化的流程为: 搭建NFS底层存储——>创建PV——>创建PVC——>创建pod 最终将pod中的container实现数据的持久化! 从上述流程中,看似没有什么问题,但是仔细研究就会发现:PVC在向PV申请存储空间时,是根据指定PV的名称、访问模式、容量大小来决定具体向哪个PV申请空间的。 打比方说:如果PV的容量是20G,定义的访问模式是WRO(只允许以读写的方式挂载到单个节点),而PVC申请的存储空间为10G,那么一旦这个PVC是向上述的PV申请的空间,也就是说,那么PV有10G的空间被白白浪费了,因为其只允许单个节点挂载。这是一个非常严重的问题。就算不考虑这个问题,我们每次手动去创建PV也是比较麻烦的事情,这是就需要使用一个自动化的方案来替我们创建PV。这个自动化的方案就是——Storage Class(存储类)! Storage class(存储类)概述 Storage class(存储类)是Kubernetes资源类型的一种,它是由管理员为管理PV更加方便而创建的一个逻辑组,可以按照存储系统的性能高低、综合服务质量、备份策略等分类。不过Kubernetes本身并不知道类别到底是什么,这是一个简单的描述而已! 存储类的好处之一就是支持PV的动态创建,当用户用到持久化存储时

NFS共享存储

北战南征 提交于 2020-02-22 20:31:34
NFS共享存储 NFS(N-twork File System)是一种基于TCP/IP传输的网络文件系统协议,最初由SUN公司开发。通过使用NFS 协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源。对于大多数负载均衡群集来说,使用NFS协议来共享数据存储是比较常见的做法,NFS也是NAS 存储设备必然支持的一种协议。 1、使用NFS发布共享资源 NFS 服务的实现依赖于RPC(Remote Process Call,远程过程调用)机制,以完成远程到本地的映射过程。在CentOS7系统中,需要安装nfs-utils、rpcbind 软件包来提供NFS共享服务,前者用于NFS共享发布和访问,后者用于RPC支持。 安装nfs-utils rpcbind 软件包 (1)提供 RPC 支持的服务为pcbind,提供NFS 共享的服务为nfs,完成安装以后建议调整这两个服务的自启动状态,以便每次开机后自动启用。手动加载NFS共享服务时,应该先启动mcbind.然后再启动nfs。 (2)设置共享目录 NFS的配置文件为/etc/exports,文件内容默认为空(无任何共享),在服务器192.168.200.114中的exports文件中设置共享资源时,记录格式为“目录位置 客户机地址权限选项)”。例如,若要将文件夫/opt/wwwroot共享给 192.168.200.0

Kubernetes - - k8s - v1.12.3 持久化EFK安装

一世执手 提交于 2020-02-22 17:59:45
1,镜像下载 1.1 所有节点下载镜像 docker pull kibana:5.6.4 docker tag kibana:5.6.4 docker.elastic.co/kibana/kibana:5.6.4 docker pull xiaoqshuo/fluentd-elasticsearch:v2.0.4 docker pull xiaoqshuo/elasticsearch:v5.6.4 docker tag xiaoqshuo/fluentd-elasticsearch:v2.0.4 k8s.gcr.io/fluentd-elasticsearch:v2.0.4 docker tag xiaoqshuo/elasticsearch:v5.6.4 k8s.gcr.io/elasticsearch:v5.6.4 master01下载对应的k8s源码包 wget https://github.com/kubernetes/kubernetes/releases/download/v1.12.3/kubernetes.tar.gz 对节点进行label [root@k8s-master01 fluentd-elasticsearch]# pwd /opt/k8-ha-install/kubernetes/cluster/addons/fluentd-elasticsearch

linux上的文件服务

别来无恙 提交于 2020-02-22 17:29:59
vsftp、Samba、NFS 对比 服务器名称 用户客户端平台 使用范围 服务端口 VSFTP Windows/linux/unix/macOS等 发布网站,文件共享 Tcp/21 Samba Windows 文件共享(网上邻居) Tcp/445,tcp/139 NFS Linux/unix 网站发布,文件共享,可挂载(mount) Tcp/2049 ftp搭建 用 vsftpd 搭建FTP服务: 简介 : 安全性是编写VSFTP的初衷,除了这与生俱来的安全特性以外,高速与高稳定性也是VSFTP的两个重要特点。 是SentOS或者redhat上自带的ftp软件,默认不安装,一般执行yum安装 vsftp 安装配置 首先检查是否安装 vsftp包 # rpm – qa | grep vsftpd yum安装:yum install -y vsftpd db4-utils //这里db4-utils用来生成密码文件 建立账号 : vsftp支持系统账号登陆,出于安全考虑我们使用虚拟账号登陆 #useradd -virftp -s /sbin/nologin 创建虚拟账号的配置文件: #vim /etc/vsftpd/vsftpd_login test1 123456 test2 abcdef#该文件存储用户和密码,奇数行为用户名,偶数行为密码 安全起见设置权限 #chmod 600

linux-常用命令

£可爱£侵袭症+ 提交于 2020-02-20 14:15:26
文章目录 挂载命令 格式输出 od命令 文件处理 编译 gcc 用户 以root身份执行上一条命令 man命令 应用程序 进程 挂载命令 nfs挂载命令: mount -o nolock -t nfs 192.168.18.200:/mcuzone/nfsroot/ /mnt/ mount -o nolock -t nfs 192.168.18.129:/work/nfs_root/ /mnt/ Q1:在使用kernel(版本号:2.6.22.6)时,开发板通过nfs挂载服务器的nfs文件夹时,在开发板上一拷贝或执行该文件夹下的文件,就会卡死。 W1: 原因是:server机和目标机网卡传输速率冲突,目标机网卡速率不够大。必须使用以下命令: mount -t nfs -o intr,nolock,rsize=1024,wsize=1024 192.168.18.129:/work/nfs_root /mnt 格式输出 od命令 格式:od [OPTION] [FILE] 说明:把文件中每个字节按指定格式显示出来,默认为8进制。通常用于查看特殊格式文件的内容 参数: -A:指定地址显示的格式 d:十进制 o:八进制 x:十六进制 -t:指定文件中每个字节显示的格式 c: ASCII字符 d: 有符号十进制数 x: 十六进制数 文件处理 ln命令 说明:创建链接文件或文件夹

NFS服务器搭建

允我心安 提交于 2020-02-19 06:33:53
创建 NFS 共享目录, 服务端 ip : 192.168.1.11 主机名: hate 客户端 ip : 192.168.1.10 主机名: love [root@hate ~]# mkdir -p /nfs/backup [root@hate ~]# chmod -R 777 /nfs 修改/etc/exports /nfs/backup love(rw,async,nohide,no_subtree_check) 注意:这里的解析名一定要用hostname,否则会出现权限的问题 [root@hate ~]# showmount -e mount clntudp_create: RPC: Program not registered 遇到这个问题时解决办法 [root@hate ~]# /etc/init.d/nfs restart [root@hate ~]# showmount -e Export list for hate: /nfs/backup love [root@hate ~]# service nfs restart [root@hate ~]# chkconfig nfs on 客户端192.168.1.10挂载NFS文件系统 [root@love ~]# mkdir /mynfs 手动挂载 [root@love ~]# mount -o rw,bg,hard