摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.纠删码理论概述1.纠删码理论概述2.ceph纠删码以插件的形式提供3.纠删码池的优缺点二.纠删码基础命令实践1.列出纠删码配置文件2.查看指定纠删码配置文件的详细信息3.自定义纠删配置文件4.创建定制配置的纠删码池5.基于插件 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.ceph分布式集群原理图1.存储池(pools)2.归置组(Placement Groups)3.CRUSH 映射(CRUSH Maps)4.平衡器(Balancer)5.对象存储设备(OSD)二.归置组1.PG简介2.临时P 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.ceph压缩概述1.ceph压缩概述2.启用压缩相关命令二.ceph压缩案例1.查默认的压缩算法2.更改压缩算法3.更改算法模式4.还原算法和模式 一.ceph压缩概述 1.ceph压缩概述 ceph支持高效传输,支持对数据进 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.对象存储概述1.对象存储的访问方式2.基于http方式访问对象存储注意事项3.查看存储桶默认策略二.定制策略1.定制访问策略文件2.应用访问策略3.应用跨域规则【可选操作】三.对象存储的其他访问方式1.基于s3cmd方式访问2 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.Swift概述1.Switft API接口概述2.swift实现的基本逻辑二.swift命令行配置实战1.创建swift的实践用户2.基于现有用户创建子用户3.基于子用户生成secret_key信息4.安装swift命令5.配 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.环境准备1.Ceph Reef(18.2.X)的对象存储网关(rgw)组件搭建2.创建账号3.s3cmd工具二.Python操作对象存储1.安装python环境2.编写python程序3.测试python代码测试4.使用s3c 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.准备测试环境1.创建存储池2.对存储池启用rbd功能3.对存储池进行环境初始化4.创建块设备5.创建块设备详细信息6.映射块设备7.格式化文件系统8.挂载磁盘并拷贝数据9.卸载块设备并取消映射二.服务端定制基础快照并保护模式1 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.准备测试环境1.创建存储池2.对存储池启用rbd功能3.对存储池进行环境初始化4.创建块设备5.创建块设备详细信息二.准备测试环境1.查看回收站列表2.将镜像移动到回收站,模拟删除效果3.恢复块设备 一.准备测试环境 1.创建 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.检查ceph集群状态1.检查ceph集群信息2.查看pool的状态3.查看ceph存储空间状态二.检查OSD状态命令1.查看osd基本状态2.查看osd的属性详情3.查看osd归属结构三.检查mon监视器映射1.查看mon组件 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.ceph集群的监控1.查看集群的架构2.查看Prometheus的WEbUI3.查看grafana的WebUI4.查看node-exporter5.查看alertmanger二.自实现Prometheus监控参考链接 一.ce 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.对象存储系统概述1.对象存储网关概述2.对象存储系统的核心资源概述3.ceph rgw支持的接口二.高可用radosgw实操案例1 部署之前查看集群状态2 创建一个服务3 部署rgw组件4 检查rgw组件是否部署成功5 查看r 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.cephFS基础知识1. CephFS概述2.CephFS架构原理3.CephFS和NFS对比二.cephFS的一主一从架构1.创建两个存储池分别用于存储mds的元数据和数据2.创建一个文件系统,名称为"yinzhengjie 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.cephadm访问ceph集群1 方式一: 使用cephadm shell交互式配置【会创建临时容器,当shell推出后就会自动删除容器哟~】2 方式二: 使用cephadm非交互式配置【会创建临时容器】3 方式三: 安装ce 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.ceph集群的OSD基础操作1.查看osd的ID编号2.查看osd的详细信息3.查看osd的状态信息4.查看osd的统计信息5.查看osd在主机上的存储信息6.查看osd延迟的统计信息7.查看各个osd使用率8.集群暂停接收数 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.ceph概述1.ceph支持的存储类型对比2.ceph常用术语2.1 ceph组件介绍2.2 存储术语3.ceph的部署方式4.网络划分5.下载ceph二.Ubuntu22.04LTS基于cephadm快速部署Ceph Ree 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.Oracle VM VirtualBox网络概述1.Oracle VM VirtualBox支持的网络类型2.Oracle VM VirtualBox双网卡网络模式简介二.Oracle VM VirtualBox双网卡网络模式 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.Kubernetes概述1.什么是Kubernetes2.为什么要使用K8S3.Kubernetes(K8S)在运维在找工作的重要程度4. Kubernetes和docker的简史精简版5.Kubernetes集群架构图解6. 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.源代码编写二.编译三.测试 一.源代码编写 package main import ( "fmt" "os" "path/filepath" "time" "github.com/alecthomas/kingpin/v2" 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.RPC协议介绍1.什么是RPC2.什么是GRPC3.安装gRPC环境3.1 使用gRPC的前提3.2 安装protoc3.3 安装go plugin二.Protocol Buffer的使用指南1.使用Protocol Buff 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.channel的基本使用1.channel概述2.管道入门案例2.1 有缓冲管道和无缓冲管道概述2.2 有缓冲管道2.3 无缓冲管道3.管道的关闭3.1 管道关闭操作结果概述3.2 管道关闭案例3.3 判断通道是否关闭4.管道 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.多协程操作同一数据问题引出二.互斥锁Mutex1 互斥锁概述2使用互斥锁Mutex同步协程三.读写互斥锁RWMutex1 读写互斥锁概述2 读写锁RWMutex引入 一.多协程操作同一数据问题引出 package main i 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.并发编程常见术语1.串行、并发与并行2.程序、进程、线程3.协程(coroutine)4.动态栈5.协程和线程谁的效率高6.goroutine调度7.GOMAXPROCS7.1 GOMAXPROCS概述7.2 测试GOMAXP 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.文件的读取操作1.什么是文件2.IO流类型概述3.文件的基本操作3.1 打开和关闭文件3.2 带缓冲大小读取文件内容3.3 循环读取4.ioutil包一次性读取小文件4.1 ioutil包概述4.2 ioutil读取整个文件5 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.json概述二.结构体的序列化JSON格式三.结构体的反序列化JSON格式四.结构体标签(tag)1 结构体标签(tag)概述2 结构体标签(tag)案例五.链式编程 一.json概述 JSON(JavaScript Obje 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.Go语言的封装(encapsulation)实现1.什么是封装(encapsulation)2.封装(encapsulation)的好处3.golang如何实现封装(encapsulation)4.代码实现4.1 代码组织结构 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.接口类型1.为什么要使用接口2.接口的定义3.接口代码案例二.值接受者和指针接受者1.值接受者实现接口2.指针接受者实现接口三.结构体实现接口类型1.一个类型实现多个接口2.多种类型实现同一个接口3.嵌套结构体实现接口四.接口 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.面向对象的引入1.Golang语言面向对象编程2.结构体的引入3.结构体定义4.结构体五种初始化方式5.结构体的互相转换6.匿名结构体二.结构体方法定义1.方法概述2.方法是值拷贝传递方式3.指针类型的接收者4.为内置数据类型 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.映射(map)定义1.映射(map)概述2.map的语法格式3.map的三种创建方式3.1 先声明在make3.2 直接使用make初始化map3.3 直接赋值初始化map二.map基本使用1.map的增删改查2.map的遍历 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.切片(slice)概述1.数组的局限性2.切片(slice)概述3.切片的内存分析二.切片的三种定义方式1.切片表达式(基于已经存在的数组来创建切片)2.通过make指令创建切片3.声明切片类型三.切片的遍历1.基于for循环 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.数组的定义1.数组的引入2.数组的概述3.数组案例4.数组的内存分析5.四种数组初始化的方式二.数组的遍历1.数组遍历的方式2.for循环遍历2.for range遍历三.数组的注意事项1.数组长度属于类型的一部分2.数组属于 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.利用defer+recover捕获错误二.基于errors.New自定义错误三.panic自定义错误 一.利用defer+recover捕获错误 package main import "fmt" func cal(a, b 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.时间类型二.Location和time zone1.时区介绍2.时区案例三.时间戳unix time1.Unix Time概述2.获取时间戳3.将时间戳转为时间对象四.时间间隔设置及比较1.时间间隔类型的常量2.Add3.su 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.init初始化函数1 初始化函数作用2 初始化函数定义案例2.1 初始化项目2.2 utils.go源代码2.3 main.go源代码二.匿名函数1 匿名函数概述2 匿名函数案例三.闭包函数1 闭包函数概述2 闭包函数案例之返 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.Go Modules发展史1.前言2.早期第三方包存储在GOPATH路径3.vendor阶段4.社区管理工具层出不穷5.go modules官宣官方管理工具二.go module介绍1.GO111MODULE环境变量2.GOP 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.包概述1 为什么要使用包2 包定义3 包的引入格式4 包的别名5 匿名引入二.自定义包快速入门案例1 包的环境准备1.1 包的组织结构及环境声明1.2 配置GO111MODULE2 db文件夹代码2.1 haha.go代码2. 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.函数的引入1.为什么要使用函数2.函数使用的细节3.定义函数语法二.定义函数案例1.不返回任何参数2.返回一个参数3.返回多个参数4.返回值命名5.可变参数三.函数使用细节1.函数默认以值传递2.函数实现指针传递3.函数作为变 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一. for循环1 for循环基本写法2 for循环引入3.for循环原理4.for死循环案例二 .for range键值循环案例1 for range概述2 for range遍历字符串三.break关键字1.break作用2 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.流程控制概述1.流程控制的作用2.控制语句的分类二.分支结构1.if分支1.1 if分支语法结构1.2 单分支条件判断1.3 双分支条件判断1.4 多分支案例2.switch语句2.1 switch分支语法结构2.2.swit 阅读全文
摘要:
作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.运算符概述二.算数运算符1.常见的算数运算符2.参考案例三.赋值运算符1.常见的赋值运算符2.参考案例四.关系运算符1.常见的关系运算符2.参考案例五.逻辑运算符1.常见的逻辑运算符2.参考案例六.位运算符1.常见的位运算符2 阅读全文