k8s1.19使用ceph14
一、静态 pv (rbd)方式
1、所有k8s节点安装依赖组件
注意:安装ceph-common软件包推荐使用软件包源与Ceph集群源相同,软件版本一致。
cat > /etc/yum.repos.d/ceph.repo << EOF
[ceph]
name=ceph
baseurl=http://mirrors.aliyun.com/ceph/rpm-nautilus/el7/x86_64/
enabled=1
gpgcheck=0
priority=1[ceph-noarch]
name=cephnoarch
baseurl=http://mirrors.aliyun.com/ceph/rpm-nautilus/el7/noarch/
enabled=1
gpgcheck=0
priority=1[ceph-source]
name=Ceph source packages
baseurl=http://mirrors.aliyun.com/ceph/rpm-nautilus/el7/SRPMS
enabled=1
gpgcheck=0
priority=1
EOFyum install ceph-common -y
2、同步配置文件
[root@ceph1 ~]# ssh-copy-id master
[root@ceph1 ~]# ssh-copy-id node1
[root@ceph1 ~]# ssh-copy-id node2[root@ceph1 /etc/ceph]# ceph-deploy --overwrite-conf admin ceph1 ceph2 ceph3 master node1 node2
3、创建存储池并开启rbd功能
创建kube池给k8s
ceph osd pool create kube 128 128
4、创建ceph用户,提供给k8s使用
#查看ceph集群中的认证用户及相关的key
# ceph auth list删除集群中的一个认证用户
ceph auth del osd.0 #(这里只是给个删除用户命令,请勿执行啊!!)#创建用户
ceph auth get-or-create client.kube mon 'allow r' osd 'allow class-read object_prefix rbd_children,allow rwx pool=kube'
5、创建secret资源
ceph auth get-key client.admin | base64ceph auth get-key client.kube | base64
#base64 单向加密一下,k8s不以明文方式存储账号密码
mkdir jtpv && cd jtpv
cat > ceph-admin-secret.yaml << EOF
apiVersion: v1
kind: Secret
metadata:name: ceph-admin-secretnamespace: default
data:key: #( admin 的key)
type:kubernetes.io/rbd
EOF
cat > ceph-kube-secret.yaml << EOF
apiVersion: v1
kind: Secret
metadata:name: ceph-kube-secretnamespace: default
data:key: #( kube 的key)
type:kubernetes.io/rbd
EOF
cat > pv.yaml << EOF
apiVersion: v1
kind: PersistentVolume
metadata:name: ceph-pv-test
spec:capacity:storage: 5GiaccessModes:- ReadWriteOncerbd:monitors:- 10.100.100.115:6789- 10.100.100.116:6789- 10.100.100.117:6789pool: kubeimage: ceph-imageuser: adminsecretRef:name: ceph-admin-secretfsType: ext4readOnly: falsepersistentVolumeReclaimPolicy: Retain
EOF
6、创建镜像(说白了就是划出一块空间给它用的意思)
#创建镜像
rbd create -p kube -s 5G ceph-image# rbd ls -p kube
ceph-image
# rbd info ceph-image -p kube
7、k8s创建pv
cat > pvc.yaml << EOF
apiVersion: v1
kind: PersistentVolumeClaim
metadata:name: ceph-test-claim
spec:accessModes:- ReadWriteOncevolumeName: ceph-pv-testresources:requests:storage: 5Gi
EOF
cat > pod.yaml << EOF
apiVersion: v1
kind: Pod
metadata:name: ceph-pod
spec:containers:- name: test-podimage: busybox:1.24command: ["sleep", "60000"]volumeMounts:- name: pvcmountPath: /usr/share/busyboxreadOnly: falsevolumes:- name: pvcpersistentVolumeClaim:claimName: ceph-test-claim
EOF
[root@ceph1 ceph]# rbd ls -p kube
ceph-image
[root@ceph1 ceph]# rbd info ceph-image -p kube#发现是由于k8s集群和ceph集群 kernel版本不一样,k8s集群的kernel版本较低,rdb块存储的一些feature 低版本kernel不支持,需要disable。通过如下命令disable
[root@ceph1 ceph]# rbd feature disable kube/ceph-image object-map fast-diff deep-flatten
#验证
kubectl exec -it ceph-pod -- df -h |grep /dev/rbd0
二、使用cephfs官方的ceph-csi插件
1、ceph 操作部分
在 ceph1 部署节点上同步配置文件,并创建至少一个 mds 服务
使用 cephfs 必须保证至少有一个节点提供 mds 服务
[root@ceph1 /etc/ceph]# ceph-deploy --overwrite-conf admin ceph1 ceph2 ceph3#这里做三个mds
[root@ceph1 /etc/ceph]# ceph-deploy mds create ceph1 ceph2 ceph3[root@ceph1 /etc/ceph]# ceph -s
2、创建存储池 、文件系统
1、创建 cephfs 存储池 :fs_metadata 、fs_data
2、创建 cephfs 文件系统:命名为 cephfs
3、一个 ceph 文件系统需要至少两个 RADOS 存储池,一个用于数据,一个用于元数据。
[root@ceph1 /etc/ceph]# ceph osd pool create cephfs_pool 64
pool 'cephfs_pool' created
[root@ceph1 /etc/ceph]# ceph osd pool create cephfs_metadata 64
pool 'cephfs_metadata' created
[root@ceph1 /etc/ceph]# ceph fs new cephfs cephfs_metadata cephfs_pool[root@ceph1 /etc/ceph]# ceph fs ls
获取集群信息和查看 admin 用户 key(秘钥)
# ceph mon dump# ceph auth get client.admin
注意:这里不需要 base64 加密
3、k8s 操作部分
0.0、所有 k8s节点安装依赖组件
cat > /etc/yum.repos.d/ceph.repo << EOF
[ceph]
name=ceph
baseurl=http://mirrors
相关文章:
![](https://www.ngui.cc/images/no-images.jpg)
k8s1.19使用ceph14
一、静态 pv (rbd)方式 1、所有k8s节点安装依赖组件 注意:安装ceph-common软件包推荐使用软件包源与Ceph集群源相同,软件版本一致。 cat > /etc/yum.repos.d/ceph.repo << EOF [ceph] name=ceph baseurl=http://mirrors.aliyun.com/ceph/rpm-nautilus/el7/x86_…...
![](https://img-blog.csdnimg.cn/0b84606ea5294de39e0101a98b2a876e.png)
Leetcode 50. Pow(x, n)
文章目录 题目代码(9.19 首刷看解析) 题目 Leetcode 50. Pow(x, n) 代码(9.19 首刷看解析) 快速幂 class Solution { public:double myPow(double x, int n) {if(n 0)return 1;if(n 1)return x;if(n INT_MIN) { // 避免-n整…...
![](https://www.ngui.cc/images/no-images.jpg)
hive分区表的元数据信息numRows显示为0
创建分区表 CREATE TABLE `dept_partition`(`deptno` int, `dname` string, `loc` string) PARTITIONED BY (...
![](https://img-blog.csdnimg.cn/e24490d519d743be8e351cf21743c930.png)
Baumer工业相机堡盟工业相机如何通过BGAPI SDK设置相机的图像剪切(ROI)功能(C++)
Baumer工业相机堡盟工业相机如何通过BGAPI SDK设置相机的图像剪切(ROI)功能(C) Baumer工业相机Baumer工业相机的图像剪切(ROI)功能的技术背景CameraExplorer如何使用图像剪切(ROI)功…...
![](https://img-blog.csdnimg.cn/45531fc971244b1f89eadf8477040852.png)
【云原生】聊聊为什么需要docker以及其基础架构
为什么需要docker 在没有docker之前,我们开发、测试、生产其实是根据不同的服务器进行配置的,很可能因为软件配置不同而导致的生产事故,那么如果能较好的解决软件和配置等封装成一个可运行的软件,无需关注配置,那么是…...
![](https://img-blog.csdnimg.cn/c12207c390eb4fdf8cac2b6e45b174e1.png)
“高级前端开发技术探索路由的使用及Node安装使用“
目录 引言1. Vue路由的使用2. VueNode.js的安装使用总结 引言 在当今互联网时代,前端开发技术日新月异,不断涌现出各种新的框架和工具。作为一名前端开发者,我们需要不断学习和探索新的技术,以提升自己的开发能力。本文将深入探讨…...
![](https://img-blog.csdnimg.cn/0064f1f47ab64ed1a2f762e8616ad53e.png)
LeetCode 494.目标和 (动态规划 + 性能优化)二维数组 压缩成 一维数组
494. 目标和 - 力扣(LeetCode) 给你一个非负整数数组 nums 和一个整数 target 。 向数组中的每个整数前添加 或 - ,然后串联起所有整数,可以构造一个 表达式 : 例如,nums [2, 1] ,可以在 2…...
![](https://img-blog.csdnimg.cn/img_convert/3fadcfd14189c6dc2182b96b0926997f.png)
[36c3 2019]includer
[36c3 2019]includer 题目描述:Just sitting here and waiting for PHP 8.0 (lolphp). 首先来了解一下临时文件包含之PHP - compress.zlib:// 在 php-src 里可以找到和 compress.zlib:// 有关的代码 | code 注意到 STREAM_WILL_CAST,涉及到 cast 经常…...
![](https://www.ngui.cc/images/no-images.jpg)
Python150题day10
④continue练习 从列表 Ist [1,3,5,2,7,9,10] 中输出所有的奇数,代码如下 lst [1, 3, 5, 2, 7, 9, 10] for item in lst: if item % 2 0: continue print(item) 在上述代码中,当遇到偶数时,continue 语句会跳过当前迭代&…...
![](https://www.ngui.cc/images/no-images.jpg)
Autosar工具-Davinci Developer
文章目录 前言一、Davinci Developer简介二、导航栏File(主要是用于保存、打开工程等操作)HomeProject(主要用于导入、导出arxml文件)Graphic(主要在SWC设计时使用,包含对图形界面下的设计工具)Window(主要就是对我们的Dev界面外形修改用的,使得界面更加方便我们使用(比如隐…...
![](https://img-blog.csdnimg.cn/8fc9c306206240b5aa152d95e23b98d6.png)
js中的数据结构:栈,队列,链表,字典哈希表,树
栈:先进后出 队列:先进先出 链表: 单链表: 双链表: 环形链表:最后一个数据的next指针不是指向null,指向的是任意之间的一个数据,形成一个环 数组和链表的区别: 字典和哈…...
![](https://img-blog.csdnimg.cn/300cb1e1b4db4cd28935406a6a199dac.png)
Verdi实现信号的平移
在Verilog/System verilog中,# xxx可以实现延迟指定时间的功能,而在使用verdi查看信号波形并进行分析时,同样也可以实现类似的功能。 (注:这种信号平移是有其应用场景的,例如,在某些仿真模型中,…...
![](https://img-blog.csdnimg.cn/1d3e0af16efd44c383e16be588ef7dcb.png)
Leetcode算法入门与数组丨6. 数组双指针、滑动窗口
文章目录 1 双指针基础知识1.1 双指针简介1.2 左右指针(对撞指针)1.3 快慢指针1.4 分离双指针 2 滑动窗口基础知识2.1 滑动窗口算法介绍2.2 滑动窗口适用范围2.3 固定长度滑动窗口2.4 不固定长度滑动窗口 1 双指针基础知识 1.1 双指针简介 双指针&…...
![](https://img-blog.csdnimg.cn/9095164842fd4015830ff220218ad179.png)
推荐一本书《横向领导力》
大家好,这里是大话硬件。 今天想给大家推荐一本我近期正在阅读的书籍《横向领导力》。 这本书很早就买了,但是在去年就看了前面3章的内容,而且也没做笔记,仅仅是在书本上写写画画,也没有什么体会,感觉看不懂…...
![](https://www.ngui.cc/images/no-images.jpg)
React实战过程的知识了解
做项目用到react和antd,没办法循序渐进的学习,只能把一些点记录在这里,希望大家指正。 1.杂七杂八 正文 //actionRef,操作表单的预设方法,包括:刷新、重置所有项并刷新、重置到默认项、加载更多、清空选…...
![](https://www.ngui.cc/images/no-images.jpg)
F对象和Q对象
F对象和Q对象 F对象 一个F对象代表数据库中某条记录的字段的信息 作用: 通常是对数据库中的字段值在不获取的情况下进行操作 用于类属性(字段)之间的比较 语法 from django.db.models import F F(列名)解决一种极端事件的产生,比如用户对一条微博的点赞…...
![](https://img-blog.csdnimg.cn/428bdeea79294607a2caddcb503c353b.png)
Visio——绘制倾斜线段
一、形状 -> 图表和数学图形 -> 多行 二、放置多行线,可以发现存在两个折点 三、选择多行线,右键选择删除点,即可得到倾斜线段...
![](https://img-blog.csdnimg.cn/da0c6927c9af43838aea27847f337ad3.png)
Linux复习-安装与熟悉环境(一)
这里写目录标题 虚拟机ubuntu系统配置镜像Linux命令vi编辑器3个模式光标命令vi模式切换命令vi拷贝与粘贴命令vi保存和退出命令vi的查找命令vi替换命令 末行模式复制、粘贴、剪切gcc编译器 虚拟机 VMware16 官网下载:vmware官网 网盘下载: 链接ÿ…...
![](https://www.ngui.cc/images/no-images.jpg)
Go基础语法:map
9 map Go 语言中提供的映射关系容器为 map ,其内部使用 散列表(hash) 实现。它是一种无序的基于 key-value 的数据结构。 Go 语言中的 map 是引用类型,必须初始化之后才能使用。 9.1 map 定义 Go 语言中 map 的定义语法为&…...
![](https://img-blog.csdnimg.cn/eb8d72ca00724c9e8fe46324815b5262.png)
开发板TFTP调试
问题描述 开发板和host(此处指虚拟机linux)可以平通,但是通过uboot tftp下载请求时一直显示T T T, 即超时 使用wireshark抓包也显示超时 措施 关闭windows和linux的防火墙 重新进行下载成功...
![](https://img-blog.csdnimg.cn/38c4b8a14561402b91210f774cc90921.png)
MySQL---优化日志
目录 一、MySQL优化 3、mysql server上的优化 3.1、MySQL查询缓存 3.2、索引和数据缓存 3.2、线程缓存 二、MySQL日志 2.1、redo log 重做日志 2.2、undo log 回滚日志 2.3、错误日志 2.4、查询日志 2.5、二进制日志 2.5.1、基于binlog数据恢复实践操作 六、慢查…...
![](https://www.ngui.cc/images/no-images.jpg)
【送面试题】深入解析Cookie和Session的请求区别及使用场景
AI绘画关于SD,MJ,GPT,SDXL百科全书 面试题分享点我直达 2023Python面试题 2023最新面试合集链接 2023大厂面试题PDF 面试题PDF版本 java、python面试题 项目实战:AI文本 OCR识别最佳实践 AI Gamma一键生成PPT工具直达链接 玩转cloud Studio 在线编码神器 玩转 GPU AI…...
![](https://img-blog.csdnimg.cn/cba67a62214f47c4be66d1024543cf80.png#pic_center)
010_第一代软件开发(二)
第一代软件开发(二) 文章目录 第一代软件开发(二)项目介绍界面布局功能完善快照功能获取可用串口播放按键提示音 关键字: Qt、 Qml、 QSerialPort、 QPixmap、 QSoundEffect 项目介绍 欢迎来到我们的 QML & C 项目!这个项目结合了 QMLÿ…...
![](https://www.ngui.cc/images/no-images.jpg)
基于若依ruoyi-nbcio增加flowable流程待办消息的提醒,并提供右上角的红字数字提醒(四)
更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 上一节说到待办系统的监听器TaskCreateListener,需要在flowable全局监听配置里加入配置 1、Glo…...
![](https://img-blog.csdnimg.cn/b1cbfede08c24cacb76301b910c5687d.png)
RestTemplate:简化HTTP请求的强大工具
文章目录 什么是RestTemplateRestTemplate的作用代码示例 RestTemplate与HttpClient 什么是RestTemplate RestTemplate是一个在Java应用程序中发送RESTful HTTP请求的强大工具。本文将介绍RestTemplate的定义、作用以及与HttpClient的对比,以帮助读者更好地理解和使…...
![](https://img-blog.csdnimg.cn/e75e2f83af0b458b882ed759df6893f5.png)
【数据结构】什么是数据结构?
数据结构(Data Structure)是计算机存储,组织数据的方式,指相互之间存在一种或多种特定关系的数据元素的集合. 这么讲可能有些抽象,放一张图大家可能好理解一点: 上图依次是数据结构中逻辑结构中的:集合结构,线性结构,树形结构,图形结构. 而: 数据结构是一门研究非数值计算的程…...
![](https://www.ngui.cc/images/no-images.jpg)
c++源码编译过程(翻译阶段)的若干细节概要
c程序的编译主要包含两个阶段:源码编译(翻译阶段)和目标文件链接。 源码编译过程主要有如下这些阶段: 阶段1: 翻译源码文本字符 阶段2: 逻辑源码行标准化处理 阶段3: 文法处理,分解为不同的源码文本类型序列。例如分解为注释、预处理指…...
![](https://img-blog.csdnimg.cn/abde846b51e34b17a4a75d7965da36d6.png)
Go内置函数make和new的区别?
首先纠正一下make 和 new 是内置函数,不是关键字。 变量初始化,一般分为2步,变量声明变量内存分配,var 关键字就是用来声明变量的,new和make 函数主要是用来分配内存的。 var 声明值类型的变量时,系统会默…...
动手学深度学习(pytorch版)第二章-2.3线性代数Note-linear-algebra
类型 标量:仅包含一个数值被称为标量 向量:向量可以被视为标量值组成的列表 矩阵:正如向量将标量从零阶推广到一阶,矩阵将向量从一阶推广到二阶。 A torch.arange(20).reshape(5, 4) A.T //转置 张量:是描述具有…...
![](https://www.ngui.cc/images/no-images.jpg)
Docker CMD指令如何覆写
在Dockerfile里,CMD指令是可以被覆盖的。 在构建镜像时,可以通过docker build命令的–cmd选项覆盖Dockerfile的CMD: 例如: FROM ubuntu CMD ["echo","hello"]构建时覆盖CMD: docker build -t test --cmd "echo world" .在创建容器时,可以通过…...
![](https://img-blog.csdnimg.cn/2022010621162660083.png)
网站标题权重吗/app推广拉新一手渠道
执行脚本案例:如图 通过多次运行测试,案例中JMeter元件之间的执行顺序(优先级)如下: 1)执行配置元件“HTTP Cookie”管理器; 2)执行前置处理器“用户参数”; 3࿰…...
![](/images/no-images.jpg)
做最最优秀的视频网站/交换友情链接的要求有
下面的简介网上到处都是,还是收一下,算是一个备忘: ICCV的全称是International Comference on Computer Vision,正如很多和他一样的名字的会议一行,这样最朴实的名字的会议,通常也是这方面最nb的会议。ICCV…...
![](/images/no-images.jpg)
做网站页面设计报价/郑州搜索引擎优化公司
我正在使用复选框来保存数据库中的数据。如果通过保存数据,然后应用程序重定向到其他屏幕,如果我点击设备后退按钮,然后显示它的应用程序没有checked.how我可以解决这个问题? 在这里,我把代码在点击后退按钮后在androi…...
![](https://img-blog.csdnimg.cn/e0216346f86e4537b144802f865e7047.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5biI5a2Q5b6B56iL,size_20,color_FFFFFF,t_70,g_se,x_16)
更改wordpress后台登录地址/桂林seo顾问
一,暴露端口 根据官网教程,需要使用3000端口,但一般都是阿里云的安全组没有放行3000端口,致使安装好metabase后无法打开浏览页面。 通过阿里云控制台打开安全组规则,在入方向新增3000端口即可。 二,安装d…...
![](https://img-blog.csdnimg.cn/20191205214140536.jpeg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTI4MTE4MDU=,size_16,color_FFFFFF,t_70)
网站建设与准备/做网站推广
前言 这篇文章主要是从pinpoint-web界面入手,我们的目标是弄清楚两个问题: - 1、 pinpoint左侧服务地图上的调用量数据是怎么查询的?- 2、界面查询条件WasOnly是什么意思? 左侧服务地图调用量来源 从下图可以看出,A…...
![](/images/no-images.jpg)
页面做的好看的网站/企业管理培训
问题背景: easyui 需要显示行号的时候,我们只需要设置 rownumbers: true, 但是 不管是在哪一页,行号都是从1开始,不能连续 我们在分页的 onSelectPage 函数里去执行 如下: onSelectPage: function (pageNo, pageSi…...