k8s使用cephfs
以下为ceph集群操作内容
cephfs
将cephfs挂载到一台服务器 /mnt/cephf 。
创建目录 mkdir -p /mnt/cephf/k8s/staff-nginx/{conf,data}
以下为k8s节点操作内容
创建secret
[root@ceph1 wsjy-proxy]# ceph auth get-key client.admin|base64
QVFDM2k3MWNZeXIyTFJBQU1JcFp0eG5VdVlyYURNSUcyMVgyVnc11Q== [root@node1 work]# vim ceph-secret3.yaml
apiVersion: v1
kind: Secret
metadata:
name: ceph-secret
data:
key: QVFDM2k3MWNZeXIyTFJBQU1JcFp0eG5VdVlyYURNSUcyMVgyVnc11Q==
[root@node1 work]# kubectl create -f ceph-secret3.yaml
secret "ceph-secret" created
[root@node1 work]# kubectl get secret
NAME TYPE DATA AGE
ceph-secret Opaque 1 2s
default-token-7s88r kubernetes.io/service-account-token 3 12d
创建pv
[root@node1 staff-nginx]# cat staff-nginx-pv.yaml
apiVersion: v1
kind: PersistentVolume
metadata:
name: staff-nginx-pv
spec:
capacity:
storage: 2Gi
accessModes:
- ReadWriteMany
cephfs:
monitors:
- 10.101.71.150:6789,10.101.71.151:6789,10.101.71.152:6789
path: /k8s/staff-nginx
user: admin
readOnly: false
secretRef:
name: ceph-secret
persistentVolumeReclaimPolicy: Recycle [root@node1 staff-nginx]# kubectl get pv
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
staff-nginx-pv 2Gi RWX Recycle Bound default/staff-nginx-pvc 172m
创建pvc
[root@node1 staff-nginx]# cat staff-nginx-pvc.yaml
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: staff-nginx-pvc
spec:
accessModes:
- ReadWriteMany
volumeName: staff-nginx-pv
resources:
requests:
storage: 2Gi
[root@node1 staff-nginx]# kubectl get pvc
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
staff-nginx-pvc Bound staff-nginx-pv 2Gi RWX 173m
创建POD
[root@node1 staff-nginx]# cat staff-nginx.yaml
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: dep-staff-nginx
namespace: default
spec:
replicas: 2
template:
metadata:
labels:
name: staff-nginx
spec:
containers:
- name: staff-nginx
image: nginx:1.7.9
imagePullPolicy: IfNotPresent
resources:
limits:
cpu: "500m"
memory: 512Mi
requests:
cpu: "250m"
memory: 256Mi
env:
- name: TZ
value: "Asia/Shanghai"
ports:
- name: tcp80
containerPort: 80
volumeMounts:
- mountPath: "/usr/share/nginx/html"
name: nginx-data
subPath: data
- mountPath: "/etc/nginx/conf.d"
name: staff-nginx-data
subPath: conf
# - mountPath: "/etc/nginx/nginx.conf"
# name: staff-nginx-data
# subPath: nginx.conf volumes:
- name: staff-nginx-data
persistentVolumeClaim:
claimName: staff-nginx-pvc nodeSelector:
node: "master" ---
kind: Service
apiVersion: v1
metadata:
name: staff-proxy-service
labels:
name: staff-proxy-service
spec:
type: NodePort
selector:
name: staff-nginx
ports:
- name: tcp80
port: 80
targetPort: 80
nodePort: 30080
k8s使用cephfs的更多相关文章
- kubernetes挂载ceph rbd和cephfs的方法
目录 k8s挂载Ceph RBD PV & PVC方式 创建secret 创建PV 创建PVC 创建deployment挂载PVC StorageClass方式 创建secret 创建Stor ...
- 以Docker容器方式安装Ceph
获取Ceph的Docker镜像 因为公司对于网络环境的限制,安装ceph时使用ceph-deploy反而很不方便,且ssh免密码方式也不适用,所以使用docker方式安装. Git地址 https:/ ...
- 7.4 k8s结合ceph rbd、cephfs实现数据的持久化和共享
1.在ceph集群中创建rbd存储池.镜像及普通用户 1.1.存储池接镜像配置 创建存储池 root@u20-deploy:~# ceph osd pool create rbd-test-pool1 ...
- k8s volume
只有nfs和rbd的,本人翻译确实很渣 在容器中磁盘文件寿命是短暂的,当在容器中运行一些重要程序时,这会产生一些问题. 首先,当一个容器崩溃后,kubelet将重新启动该容器, ...
- k8s pv
这个文档描述当前在k8s中PersistentVolumes的使用. 我们建议和volume一起进行了解 Introduction 管理存储和管理计算是截然不同的问题. 持久存储子系统对用 ...
- Kubernetes使用cephfs作为后端存储
这里使用了k8s自身的持久化卷存储机制:PV和PVC.各组件之间的关系参考下图: PV的Access Mode(访问模式) The access modes are: ReadWriteOnce – ...
- cephfs创建及挂载
Ceph 文件系统( Ceph FS )是个 POSIX 兼容的文件系统,它使用 Ceph 存储集群来存储数据.Ceph 文件系统要求 Ceph 存储集群内至少有一个 Ceph 元数据服务器. 1.添 ...
- K8S学习笔记之Kubernetes数据持久化方案
在开始介绍k8s持久化存储前,我们有必要了解一下k8s的emptydir和hostpath.configmap以及secret的机制和用途. 0x00 Emptydir EmptyDir是一个空目录, ...
- k8s学习笔记之八:存储卷
第一章.前言 默认情况下容器的数据都是非持久化的, 在容器消亡以后数据也跟着丢失, 所以 Docker 提供了 Volume 机制以便将数据持久化存储. 类似的, Kubernetes 提供了更强大的 ...
随机推荐
- Django框架详解之views
一个简单的视图 一个视图函数,是一个简单的python函数,它接受web请求并且返回web响应.无论视图本身包含什么逻辑,都要返回响应.为了将代码放在某处,约定是将视图放置在项目或应用程序目录中的名为 ...
- Java入门基础—面向对象开发
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承.指针等概念,因此Java语言具有功能强大和简单易用两个特征.Java语言作为静态面向对象编程语言的代表 ...
- webpack安装,npm WARN optional SKIPPING OPTIONAL DEPENDENCY,npm WARN notsup SKIPPING OPTIONAL DEPENDENCY警告
npm install webpack -g//全局安装webpack 电脑上安装完后: 其中有两个警告: npm WARN optional SKIPPING OPTIONAL DEPENDENCY ...
- JS iframe给父类传值
父类页面 <html><head> <script type="text/javascript"> function Ge ...
- windows下Word使用-快捷键
1.word全屏显示——Alt+U+V 2.上标——Ctrl+Shift+= 3.下标——Ctrl+=
- C#-C#6.0新特性
来自为知笔记(Wiz)
- Unity3D——加入剑痕效果(PocketRPG Trail插件)
首先非常感谢大家的支持,因为近期项目吃紧,所以更新的速度可能会有点慢!希望大家谅解,当然大家的支持是我最大的动力.我也会尽我所能写出更好的文章,当然因为本人是个新手并且工作的内容也不是unity3D. ...
- iOS对象方法和类方法的区别与调用方式
作为一个iOS程序员初学者,会搞不清楚对象方法和类方法的区别 -(void)duixiangfangfa ; +(void)leifangfa; - 代表实例方法,它在类的一个具体实例范围内执行,也就 ...
- RAC IP 地址修改
RAC 修改IP: 版本信息: REDHAT AS5 ORACLE 11G R2, 两个节点. 修改如下: 1.修改/etc/host(rac1,rac2) 192.168.3.205 rac-s ...
- vue 组件之间的传值
父向子传值父组件 <v-footer :projectdat="dat"></v-footer> export default { data() { ret ...