摘要:
方法一 生成ceph-radosgw服务对应的用户和key: ceph-authtool /etc/ceph/ceph.client.radosgw.keyring -n client.rgw.node1 --gen-key 添加用户访问权限: ceph-authtool -n client.rgw 阅读全文
摘要:
一、基础配置 集群拓扑图: 三台环境为centos7,以下配置需要在每台机器上执行。 名称 主机IP 说明 node01 192.168.19.101 mon、mds、rgw、mgr、osd node02 192.168.19.102 mon、mds、rgw、mgr、osd node03 192.1 阅读全文
摘要:
删除OSD 以删除osd.6为例,查看ceph osd相关信息: ceph -s # 查看Ceph集群状态,确保为HEALTH_OK ceph osd tree # 查看OSD树(osd标号、osd权重等信息) ceph osd df ceph -s # 查看Ceph集群状态,确保为HEALTH_O 阅读全文
摘要:
mon部署 1. 为集群生成一个唯一的ID(即fsid)。 uuidgen 2. Create a default data directory (or directories) on the monitor host(s). sudo mkdir /var/lib/ceph/mon/{cluste 阅读全文
摘要:
146. LRU 缓存机制 1. 题解 1 class LRUCache { 2 public: 3 LRUCache(int capacity) { 4 cap = capacity; 5 } 6 7 int get(int key) { 8 9 auto it = m.find(key); 10 阅读全文
摘要:
sgdisk 安装: yum install gdisk 打印分区列表 sgdisk -p /dev/sda 把编号为 1 的分区名称改为 grub: sgdisk -c 1:grub /dev/sda 从起始地址偏移100GB大小. -n, --new=partnum:start:end crea 阅读全文
摘要:
git rebase合并多次commit操作 想要合并n条提交记录,有两个方法: 1. 从HEAD版本开始往过去数 n 个版本 git rebase -i HEAD~n 2. 指定一个合并区间 startpoint 和 endpoint,注意:该区间指定的是一个前开后闭的区间,意思就是startpo 阅读全文
摘要:
撤销操作 1. 撤销对工作区的修改:是以最新的存储时间节点(add和commit)为参照,覆盖工作区对应文件file;这个命令改变的是工作区。 git checkout -- test2.txt git 2.23 版本新增了switch、restore命令,因为git checkout 命令职责较多 阅读全文
摘要:
经典应用示例 1. 文件结构 . ├── include │ ├── module1 │ │ ├── mod1c1.hpp │ │ └── mod1c2.hpp │ ├── module2 │ │ ├── mod2c1.hpp │ │ └── mod2c2.hpp │ └── program.hpp 阅读全文
摘要:
经典应用示例 1. 文件结构: . ├── common │ └── common.h ├── dir1 │ ├── a1.c │ ├── a1.h │ ├── b1.c │ ├── b1.h │ ├── c1.c │ ├── c1.h │ └── dir1.mk ├── dir2 │ ├── a2 阅读全文
摘要:
经典应用示例 1. 文件结构 NetServer ├── docs │ └── images │ ├── WebBench_hello.png │ ├── WebBench_html.png │ ├── wrk_hello_4_iothread_2_workerthread.png │ ├── wr 阅读全文
摘要:
project(<PROJECT-NAME> [<language-name>...]) 或 project(<PROJECT-NAME> [VERSION <major>[.<minor>[.<patch>[.<tweak>]]]] [DESCRIPTION <project-descriptio 阅读全文
摘要:
# $ cmake --version 设置cmake最小版本号 cmake_minimum_required(VERSION 3.5) # 指定工程名 PROJECT (HELLO) # 现阶段,你只需要了解 SET 指令可以用来显式的定义变量即可 # 将 hello.cpp 赋值给 SRC_LI 阅读全文
摘要:
cosbench详解 下载地址: wget https://github.com/intel-cloud/cosbench/releases/download/v0.4.2.c4/0.4.2.c4.zip unzip 0.4.2.c4.zip 执行项目文件下面: ./cli.sh submit co 阅读全文
摘要:
pair 1. 示例 #include <iostream> #include <utility> int main() { auto p = std::make_pair(1, 3.14); std::cout << '(' << std::get<0>(p) << ", " << std::ge 阅读全文
摘要:
ceph osd pool application enable default.rgw.buckets.data rgw ceph osd pool application enable default.rgw.buckets.index rgw ceph osd pool application 阅读全文
摘要:
Ceph Object Storage Placement 确认当前已经存储的crush rule: $ ceph osd crush rule dump [ { "rule_id": 0, "rule_name": "replicated_rule", "ruleset": 0, "type": 阅读全文
摘要:
分割符IFS 在 Bash 中,IFS(内部字段分隔符)的默认值是一个包含空格、制表符和换行符的字符串。具体来说,默认的 IFS 值为: 空格( ) 制表符(\t) 换行符(\n) 这意味着当使用 read 命令或其他处理输入的操作时,Bash 会根据这些字符将输入分割成多个字段。 如果你有一行文本 阅读全文
摘要:
几个时间概念 1:Coordinated Universal Time(UTC): 协调世界时,又称世界标准时间,也即格林威治标准时间(Greenwich Mean Time,GMT),中国内地的时间与UTC得时差为+8,也即UTC+8,美国为UTC-5。 2:Calendar Time: 日历时间 阅读全文
摘要:
std::string_view std::string_view 类原型: template<class CharT, class Traits = std::char_traits<CharT>> class basic_string_view; 构造函数 1. 构造函数原型: constexp 阅读全文
摘要:
std::begin和std::end 1. std::begin、std::end函数的用法 #include <iostream> #include <vector> using namespace std; int main() { std::vector<int> v{1, 2, 3, 4, 阅读全文
摘要:
std::optional 1. vlaue_or 函数使用 1 #include <iostream> 2 #include <optional> 3 #include <string> 4 5 std::optional<std::string> create(bool b) 6 { 7 if( 阅读全文
摘要:
退出正在调试的函数 #include <stdio.h> int func(void) { int i = 0; i += 2; i *= 10; return i; } int main(void) { int a = 0; a = func(); printf("%d\n", a); retur 阅读全文
摘要:
前序遍历 思路:前序遍历算法先访问树的根节点,然后遍历左子树,最后遍历右子树。 解法1 1 /** 2 * Definition for a binary tree node. 3 * struct TreeNode { 4 * int val; 5 * TreeNode *left; 6 * Tr 阅读全文
摘要:
enable_if SFINAE 是 substitution failure is not an error 的缩写,即匹配失败不是错误。就是说,匹配重载的函数 / 类时如果匹配后会引发编译错误,这个函数 /或类就不会作为候选。这是一个 C++11 的新特性,也是 enable_if 最核心的原理 阅读全文
摘要:
std::declval (c++11 only) 函数模板 template<typename T> typename add_rvalue_reference<T>::type declval() noexcept; 功能描述: 返回一个类型的右值引用,不管是否有没有默认构造函数或该类型不可以创 阅读全文
摘要:
折叠表达式 表格4.1列出所有可能的表达式: #include <iostream> #include <string> template <typename ... Ts> auto sum(Ts ... ts) { return (... + ts); } int main() { std::c 阅读全文
摘要:
参考资料 1. windows安装OpenSSH支持SSH 阅读全文
摘要:
开根号 #include <iostream> #include <stdio.h> using namespace std; double myqrt(double x) { if (x < 0) return -1; constexpr auto eps = 1e-8; double low, 阅读全文
摘要:
sizeof : 获取内存存储的大小。alignof : 获取地址对其的大小,POD里面最大的内存对其的大小。 1 struct A{ //non-POD type 2 int avg; 3 int avg2; 4 double c; 5 A(int a,int b):avg((a+b)/2){ 6 阅读全文
摘要:
智能指针shared_ptr与unique_ptr unique_ptr支持动态数组,而shared_ptr不能直接支持动态数组: std::unique_ptr<int []> ptr(new int[10]); //合法, std::shared_ptr<int []> ptr(new int[ 阅读全文
摘要:
coredumpctl命令 1. 调用gdb展开函数调用栈: coredumpctl gdb [pid] 参考资料 1. coredumpctl中文手册 阅读全文
摘要:
ceph fs命令 tyds fs dump ceph fs ls 阅读全文
摘要:
boost::variant #include <boost/variant.hpp> #include <string> #include <iostream> int main() { boost::variant<double, char, std::string> v; v = 3.14; 阅读全文
摘要:
std::tuple 1. 实例 #include <iostream> #include <tuple> struct A { std::string _name; size_t _age; A(std::string name, size_t age) : _name(name), _age(a 阅读全文
摘要:
https://zhuanlan.zhihu.com/p/110079635 https://zhuanlan.zhihu.com/p/42838850https://www.jianshu.com/p/6960811ac89chttps://www.cnblogs.com/shuimuzhushu 阅读全文
摘要:
消息队列activemq 安装 java 1. CentOS 7 如何安装 Java 11 2. CentOS 7 安装 JAVA环境(JDK 1.8) 安装包下载:https://activemq.apache.org/components/classic/download/ 1. Statist 阅读全文
摘要:
1. ceph rgw元数据分布式改造 阅读全文
摘要:
参考资料 1. vscode使用compile_commands.json 2. C/C++工程生成编译数据库文件compile_commands.json 阅读全文
摘要:
使用条件变量的原因 如果没有条件变量,那么我们等待一个条件满足则会是下面这样的模型: 首先加锁进入临界区去查看条件是否满足,不满足则解锁离开临界区,睡眠一段时间再继续循环判断。在这种情况下如果刚离开临界区,条件变为满足,那么线程必须还要等一段时间重新进入临界区才能知道条件满足(如果在这段时间内,条件 阅读全文