自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(267)
  • 资源 (1)
  • 收藏
  • 关注

原创 ceph 分布式 存储服务 恢复

文章目录一条命令执行恢复 (你最好还是读读 为什么可以一条命令恢复 ceph 服务)版本信息ceph 容器服务恢复前提条件安装cephadm查看ceph 服务依赖删除多余的集群 (可选)一条命令执行恢复 ***systemctl 恢复命令 解读什么是 systemctl taget 以及 wantceph 启动解读我们也可以通过 依赖搜索命令 直接 查看 ceph.target 将会 启动的 所有服务一条命令执行恢复 (你最好还是读读 为什么可以一条命令恢复 ceph 服务)systemctl iso

2020-12-30 11:12:49 274

原创 ceph应用-文件系统

文章目录介绍cephfs **本次应用rbdrgwcephfs-shell安装ceph 命令行创建 cepffs 目录挂载创建好的 cephfs 目录挂载 demo指定远程文件目录挂载子目录挂载目录后,万万不可,直接删除目录直接删除的 后果请先 unmount 目标文件夹,然后再删除。远程主机挂载 cephfs安装 mount.ceph使用 mount.ceph介绍cephfs **本次应用cephfs 遵循 posix 标准的文件系统。在 ceph 分布式对象存储 之上构建。最先进,高用途,高可用

2020-12-29 15:18:53 595

原创 cephadm 搭建分布式存储

文章目录准备环节修改网卡自启动添加dns更改 yum 镜像源关闭防火墙安装docker更改docker 镜像源安装python36时间同步生成 ssh 并分发到其他主机cephadm 是什么创建一个规格不小的虚拟机安装cephadmTo bootstrap the clusterenable ceph cliADD HOSTS TO THE CLUSTERadd my nodeadd additional monadd osd创建ceph文件系统创建 mdss创建 DEPLOY RGWS创建 nfsusin

2020-12-29 15:15:54 756 3

原创 搬家带着开发环境走vscode 连接 docker

文章目录打包个vscode开发镜像到云端先拉 centos 镜像配置好 c++ 和 python的开发容器先换常用的国内镜像源换上配置 c c++配置 go配置 npm打包个vscode开发镜像到云端先拉 centos 镜像 docker pull registry.cn-hangzhou.aliyuncs.com/mkmk/centos:python366这个docker 配置ssh 密码lmk19980312python366配置好 c++ 和 python的开发容器dokcer

2020-08-02 16:12:36 1523

原创 swagger生成 api 文档

文章目录下载服务器下载 swagger 本地编辑器以docker yaml 为例 放入 yaml api 文档下载服务器sudo npm i serve -g下载 swagger 本地编辑器git clone https://github.com/swagger-api/swagger-editorcd swagger-editor//启动服务器serve以docker yaml 为例 放入 yaml api 文档...

2020-07-28 16:50:05 604

原创 kube集群管理 dashbroad 搭建记录 以及 nginx 集群

目录集群管理的必要性本篇文章在搭建好 minikube 的基础上进行,nginx 的服务暴露热升级,热扩容 介绍部署 升级 扩容 nginx 服务查看启动的nginx pods查看nginx deployment暴露nginx service查看nginx service删除service固定service 的 对外端口集群管理的必要性容器时代已经到来,如何批量管理容器是一项至关重要的技能本篇文章在搭建好 minikube 的基础上进行,nginx 的服务暴露热升级,热扩容 介绍但多个服务子节点

2020-07-26 14:02:02 276

原创 一款免配置的浏览器编程工具jupyter,可以同时编写 python,java,c,c++,体积小

第一步先创建 一个 jupyterlab 环境#windows命令docker run -tdi -p 10022:22 -p 18888:8888 --name jlab1 --privileged=true registry.cn-hangzhou.aliyuncs.com/mkmk/python37:al1 init | docker exec -d jlab1 /bin/...

2020-02-13 12:37:19 3485 8

原创 git 一次性推送多个代码仓库,配置多个远程仓库

当我们 添加 多个仓库的 时候, fetch 上游只能有一个,并且只会指向第一个源,所以需要重置。虽然实现了 一次 推送 多个 仓库, 但是 拉取每次只能从一个 仓库,这样防止自建 gerrit 挂掉的时候,显式的给 gitee 做推送。修改 git 的 fetch 必须删掉, origin 才可以添加。所以我们最好还是再给 公网, gerrit 设置单的 remote。一个仓库 分为 fetch , 和 push 两个类型。

2023-11-30 11:10:39 320 1

原创 python functools.wraps保留被装饰函数属性

普通装饰器 ,会覆盖函数名称,并且 会替换 函数 文档字符串functools.wraps(wrapped[, assigned][, updated])This is a convenience function for invoking partial(update_wrapper, wrapped=wrapped, assigned=assigned, updated=updated) as a function decorator when defining a wrapper function.

2023-11-20 19:03:20 327

原创 qemu 使用 ceph rbd 存储块

【代码】qemu 使用 ceph rbd 存储块。

2023-11-20 18:47:58 429

原创 fio测试磁盘速度

测试 读速度 不加 --readonlyfio 会 先写 文件 再 读取直接 --readonly 参数 防止 fio 写入 文件。

2023-11-20 18:44:07 158

原创 io 队列深度

所以io 深度 在一定范围内, 越大越好。

2023-11-20 18:43:09 181

原创 linux备份系统盘

【代码】linux备份系统盘。

2023-11-20 18:42:07 222

原创 virsh io_cache_mode 虚拟机io种类

https://documentation.suse.com/sles/11-SP4/html/SLES-kvm4zseries/cha-qemu-cachemodes.htmlIn qemu-kvm versions older than v1.2 (eg SLES11 SP2), not specifying a cache mode meant that writethrough would be used as the default. Since that version, the various

2023-11-20 18:40:59 61

原创 go defer用法_类似与python_java_finially

下边 的 例子 需要好好 理解,会最后 被执行的 , 只有 最外层的 函数调用第二层的 函数 作为 参数 传入 时, 也会被 立即 执行.defer 中的 变量, 会立即 保存 当前 状态,比如 x:=1;x=2 , 只会 输出 1。

2023-11-20 18:38:44 338 1

原创 go map字典操作

断言 在现代化 程序中 有助于 终止代码 , 防止 更大的 错误产生。

2023-11-20 18:38:05 147

原创 go类型断言类型转换

断言 在现代化 程序中 有助于 终止代码 , 防止 更大的 错误产生。

2023-11-20 18:37:31 198

原创 go操作rgb图片

【代码】go操作rgb图片。

2023-11-20 18:36:55 300

原创 go channel 用例

注意 只有 发送端 应该 关闭 管道, 因为 接受者 关闭 管道 后, 会导致 发送端 引发 异常, ok 探测 也能在 接收端 进行.range 会尝试 持续的 获取 管道 输出, 无输出 时 也会 阻塞, 直到 管道 关闭 才会结束。当 左右 case 都无法 触发 的 时候, default 会被 执行.如果 有 多个 通信 操作 可以执行, 他会 随机选择 一个 去执行.select 会阻塞, 直到 其中一个 通信 操作 可以 进行.普通管道 没有缓冲区, 会被 job 两端 阻塞.

2023-11-20 18:36:23 278

原创 go 判断两棵树内容是否一致

使用 go 判断 两个 树 存放的 序列 是否 相同, 如果 相同 他们 被称为 equivalent_tree。因为 循环的 写法 不存在 调用栈的 瓶颈, 所以 在实际工程中, 能够 避免 递归 还是 避免递归吧.由于 递归的 写法 比较简单, 此处 使用循环的 形式 来实现.

2023-11-20 18:35:43 219

原创 go同步锁 sync mutex

go tour 到此 就结束了.

2023-11-20 18:35:04 350 1

原创 go 包变量函数

包 是 go 中代码 组织的 单元, 用来 被 其他程序 引入.为了 简洁, 包 可以 直接 被 尾缀 引用,比如 math/rand 可以 直接 用 rand 代表代码 应该 从 main 包 中 开始。

2023-11-20 18:33:52 174

原创 python socket 编程实现猜数字

【代码】python socket 编程实现猜数字。

2023-09-27 15:36:56 117

原创 nginx loadbalance spring server负载均衡

同时 数据库 的 事务 的 读写锁lock, 可以 让多个实例之间 保证 业务数据的一致性。我们访问 同一个 nginx 请求 就会被 代理给 spring 的不同主机。登录 ecs 打开 安全组, 放行 8080 端口 源:0.0.0.0/0。他们 提供的 用户查询, 创建用户的数据 都是 共享的 同一个 数据库。http://:8080/host。他们除了 host 接口返回的 主机名不同外。

2023-09-27 15:34:26 863

原创 1分钟部署 redis 以及 redis web管理工具

redis开发环境快速部署项目

2023-05-04 23:48:42 256 1

原创 007_安装helm

helm 学习, 安装, 使用helm 是查找, 分享, 使用 k8s 软件的最好方式。

2022-12-15 09:38:44 163

原创 006_部署ldap

k8s 部署 open ldap 提供人员权限管理, 域控服务

2022-12-15 09:38:13 248

原创 005_部署nginx-ingress

ingress 暴露了 从 外部 到 集群 内部服务 的 http/https 路由。流量路由被 ingress 资源定义的规则所控制。

2022-12-15 09:34:23 222

原创 004_部署dns服务_bind9

dns bind9通常按照 ip 访问服务是不太合理的, ip 经常会发生变化所以我们想要使用域名的方式,来访问服务现在常用的是ingress 代理 k8s 的 svc 来提供域名访问。但是在使用 ingress之前,我们需要 部署自己的 dns 服务,来将服务指向 ingress 所在的 ip 地址。这样用户才可以 使用 域名 来访问 其他服务, 而不需要知道它们的 ip。

2022-12-15 09:32:31 317

原创 003_部署loadbalance

k8s 默认给每个 svc 分配的 都是 集群内部 ip也就是 部署 网络 组件时 指定的 pod net cird但是 有些服务需要 单独 ip 使用体验更好比如, vpn 服务, dns 服务默认的 k8s 是不支持 loadbalance svc 的。需要 安装 插件loadbalance 超出了calico 的工作范围,请安装 metallb 服务。

2022-12-15 09:29:41 270

原创 002_安装k8s

网络采用的公用交换机, 也就是虚拟机连接 物理交换机的模式。使用之前课程做好的镜像, 创建本次实验的机器。服务器: 192.168.31.111。自行安装 ubuntu 2004 镜像。家庭网关: 192.168.31.1。单节点 k8s 固定服务器 ip。这个是 k8s 集群管理工具。

2022-12-15 09:22:53 739

原创 001_k8s_准备虚拟机

修改镜像配置,管理员账号,允许 ssh 登录, 修改netplay配置。使用vmware 克隆虚拟机。vmware 拍摄快照。

2022-12-15 09:21:53 117

原创 为 cinder 添加api

文章目录主要流程同步开发代码cluster obj编写 cluster_api 调用 db api 并且转化 成 json 格式 的 dict 对象主要流程设计数据库根据设计 书写 db model 文件书写 version 迁移, 生成 数据库 表编写 db api编写 cluster_api 调用 db api 并且转化 成 json 格式 的 dict 对象在 /root/zetta_code/cinder/cinder/api/contrib/cluster_manage.py 中

2022-10-26 20:45:49 311

原创 c cpp 代码 数据竞争 分析, 以及 内存泄露 分析 工具 使用 demo

文章目录问题代码build coderace 数据 竞争 分析内存泄露检查race_check_and_mem_leak_on_cpp问题代码v1_race 版本test_race_and_leak.cpp#include <pthread.h>#include <iostream>static int a;void *_work_1(void *args){ for (int i = 0; i < 1000; i++) {

2022-02-17 14:59:58 483

原创 tox 单元测试 环境初始化

tox 单元测试 环境初始化#!/bin/bashmkdir -p ~/.sshcat > ~/.ssh/config <<"EOF"Host * StrictHostKeyChecking no UserKnownHostsFile=/dev/nullEOFyum install wget -ywget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.

2021-07-11 20:53:31 195 2

原创 生成openstack配置文件

切换到 稳定的 victoria 版本git clone https://opendev.org/openstack/cinder.gitgit checkout remotes/origin/stable/victoriased "s/^flake8-logging-format/# flake8-logging-format /" ./test-requirements.txtsed -i "s/^flake8-logging-format/# flake8-logging-f

2021-07-11 20:52:07 203

原创 cinder存储资源超售配置

文章目录资源超售资源超售# 在 backend 配置 section 模块下 添加 或替换vi /etc/cinder/cinder.confmax_over_subscription_ratio = 30.0grep "max_over_subscription_ratio" -r ./cindersed -i "s/rbd_exclusive_cinder_pool = false/rbd_exclusive_cinder_pool = false\nmax_over_subscrip

2021-07-11 20:50:37 362

原创 rootwrap 权限控制

rootwrap参考这两个drv_cfg: CommandFilter, /opt/emc/scaleio/sdc/bin/drv_cfg, root, /opt/emc/scaleio/sdc/bin/drv_cfg, --query_guidceph: RegExpFilter, ceph, root, ceph, -vhans ALL=(root) useradd,userdel[Filters]privileged/init.py: priv_context.PrivContext(de

2021-07-11 20:49:41 236

原创 pdb调试cinder代码

调试步骤修改代码添加断点scheduler_path='/usr/lib/python2.7/site-packages/cinder/cmd/scheduler.py'tail -n 20 ${scheduler_path}# 删除掉 原有断点sed -i 's/import pdb;pdb.set_trace();\n//g' ${scheduler_path}# 打上 新断点sed -i 's/def main():/def main():\n import pdb

2021-07-11 20:48:47 126

原创 cinder调度器初始化过程

文章目录启动 流程1. cinder/cmd/scheduler.py2. cinder/service.py2.1 Class Service : create2.2 Class Service : init2.3 启动 调度器启动 流程1. cinder/cmd/scheduler.py创建 一个 服务 并 等待 它的 退出server = service.Service.create(binary='cinder-scheduler')service.serve(server)serv

2021-07-11 20:47:20 120

dashbroad.zip

搭建k8s 控制面板的 配置文件 搭建详细过程可以参见我的博客,k8s 集群 学习,控制面板搭建,nginx 集群搭建

2020-08-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除