文档章节

ceph客户端命令行

 惊浪
发布于 2014/11/13 15:52
字数 233
阅读 204
收藏 1
点赞 0
评论 0

#include <stdio.h>
#include <string.h>
//#include <rados/librados.h>
#include <rados/librados.hpp>
#include <iostream>
#include <fstream>
#include <list>
#include <iterator>
#define EXIT_SUCCESS 0
using namespace std;
using namespace librados;
int main(int argc, char **argv)
{
   Rados rados;
    rados_ioctx_t io;
    const char *poolname = "data";
   const char cluster_name[] = "ceph";
   const char user_name[] = "client.admin"; //用户名
    uint64_t flags=0;
    char xattr[] = "en_US";
  int err;
 
  char fsid[50]={0};
    
  err= rados.init2(user_name,cluster_name,  flags);
  if (err<0) {
     cerr << "couldn't initialize rados! error " << err << std::endl;
  }
  //读取配置文件,完成rados句柄
  err=rados.conf_read_file("/etc/ceph/ceph.conf");
 if (err < 0)
    {
        fprintf(stderr, "%s: cannot read config file: %s\n", argv[0], strerror(-err));
    }
    else
    {
        printf("\nRead the config file.\n");
    }

        /* Connect to the cluster */
    err = rados.connect();
    if (err < 0)
    {
        fprintf(stderr, "%s: cannot connect to cluster: %s\n", argv[0], strerror(-err));
    }
    else
    {
        printf("\nConnected to the cluster.\n");
   }

  bufferlist inbl, outbl;
  string outs;
  err = rados.mon_command("{\"prefix\": \"mon_status\"}",
                   inbl, &outbl, &outs);
  if (err < 0) {
      cerr << "error listing get_command_descriptions: " << err << std::endl;
      rados.shutdown();
  }
  cout << outbl.c_str() << std::endl;
      
  err = rados.mon_command("{\"prefix\": \"osd find\", \"id\":\"osd.1\"}",
                   inbl, &outbl, &outs);
  if (err < 0) {
      cerr << "error listing get_command_descriptions: " << err << std::endl;
      rados.shutdown();
  }
  cout << outbl.c_str() << std::endl;    

    rados.shutdown();
    return 0;
}

g++ ceph_conmand.c -o ceph_con -lrados


© 著作权归作者所有

共有 人打赏支持
粉丝 16
博文 28
码字总数 17864
作品 0
福州
程序员
Ceph 源代码目录结构详解

转载自:6沙鱼的博客 从GitHub上Clone的Ceph项目,其目录下主要文件夹和文件的内容为: 1 根目录 [src]:各功能某块的源代码 [qa]:各个模块的功能测试(测试脚本和测试代码) [wireshark]:...

鉴客 ⋅ 2015/07/06 ⋅ 0

译:块设备和 OpenStack

libvirt 配置了 librbd 的 QEMU 接口,通过它可以在 OpenStack 中使用 Ceph 块设备镜像。Ceph 块设备镜像被当作集群对象,这意味着它比独立的服务器有更好的性能。 在 OpenStack 中使用 Ceph...

Jerry_Baby ⋅ 2015/02/09 ⋅ 0

Proxmox VE 4.4 发布,新 Ceph 仪表盘上线

Proxmox VE 4.4 发布了,除了许多改进和更新,还为 Ceph 和集群带来了一个新的仪表盘。 Proxmox VE (Proxmox Virtual Environment) 是一个非常棒的集成 OPENVZ 支持 KVM 应用的环境。有方便易...

王练 ⋅ 2016/12/14 ⋅ 1

librados的介绍与应用

一个Ceph客户端,通过librados直接与OSD交互,来存储和取出数据。为了与OSD交互,客户端应用必须直接调用librados,连接一个Ceph Monitor。一旦连接好以后,librados会从Monitor处取回一个C...

wikison ⋅ 2015/11/02 ⋅ 0

Ceph 之 块设备、文件系统、对象存储的使用

上面左边是我的个人微信,如需进一步沟通,请加微信。 右边是我的公众号“Openstack私有云”,如有兴趣,请关注。 继上篇《Ceph 之 使用ceph-deploy部署ceph集群》,ceph集群搭建完成之后,接...

余伟兵 ⋅ 06/03 ⋅ 0

Ceph的架构(一)

The Ceph storage cluster Ceph的集群由两种类型的守护进程组(daemon)成(通常是一个host一个daemon): Ceph Monitor & Ceph OSD Daemon 一个ceph的monitor维护了整个cluster map,多个m...

wikison ⋅ 2015/09/14 ⋅ 0

ceph 集群报错:mds0: Client failing to respond to capability release

mds0: Client ts-100-20.pttest.com failing to respond to capability release(client_id: 99180808) CephFS 客户端收到了 MDS 发出的能力( capabilities ) ,它就像锁。有时候,比如一个......

kjh2007abc ⋅ 2017/07/24 ⋅ 0

ceph 手工部署集群

环境:ubuntu-server 16.04,两台arm服务器 分别为node1和node2,node1和node2分别安装monitor和3个osd,在node1上部署MDS,ceph 一、准备工作 systemctl stop ufw #禁用防火墙 systemctl di...

zrz11 ⋅ 2016/12/14 ⋅ 0

Ceph 命令行说明

一、Scrub流程设置 1、ceph pg dump命令中输出结果"scrub_stamp"列显示scrub的时间,显示PG的当前状态 2、ceph osd set noscrub、ceph osd unset noscrub集群是否进行常规定时scrub操作 3、c...

惊浪 ⋅ 2015/03/23 ⋅ 0

CEPH Cache Tiering

Cache Tiering的基本思想是冷热数据分离,用相对快速/昂贵的存储设备如SSD盘,组成一个Pool来作为Cache层,后端用相对慢速/廉价的设备来组建冷数据存储池。 Ceph Cache Tiering Agent处理缓存...

wbf961127 ⋅ 2017/11/14 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

开启远程SSH

SSH默认没有开启账号密码登陆,需要再配置表中修改: vim /etc/ssh/sshd_configPermitRootLogin yes #是否可以使用root账户登陆PasswordAuthentication yes #是都开启密码登陆ser...

Kefy ⋅ 7分钟前 ⋅ 0

Zookeeper3.4.11+Hadoop2.7.6+Hbase2.0.0搭建分布式集群

有段时间没更新博客了,趁着最近有点时间,来完成之前关于集群部署方面的知识。今天主要讲一讲Zookeeper+Hadoop+Hbase分布式集群的搭建,在我前几篇的集群搭建的博客中已经分别讲过了Zookeep...

海岸线的曙光 ⋅ 15分钟前 ⋅ 0

js保留两位小数方法总结

本文是小编针对js保留两位小数这个大家经常遇到的经典问题整理了在各种情况下的函数写法以及遇到问题的分析,以下是全部内容: 一、我们首先从经典的“四舍五入”算法讲起 1、四舍五入的情况...

孟飞阳 ⋅ 33分钟前 ⋅ 0

python log

python log 处理方式 log_demo.py: 日志代码。 #! /usr/bin/env python# -*- coding: utf-8 -*-# __author__ = "Q1mi""""logging配置"""import osimport logging.config# 定义三种......

inidcard ⋅ 48分钟前 ⋅ 0

mysql 中的信息数据库以及 shell 查询 sql

Information_schema 是 MySQL 自带的信息数据库,里面的“表”保存着服务器当前的实时信息。它提供了访问数据库元数据的方式。 什么是元数据呢?元数据是关于数据的数据,如数据库名或表名,...

blackfoxya ⋅ 49分钟前 ⋅ 0

maven配置阿里云镜像享受飞的感觉

1.在maven目录下的conf/setting.xml中找到mirrors添加如下内容,对所有使用改maven打包的项目生效。 <mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.al......

kalnkaya ⋅ 49分钟前 ⋅ 0

centos7下创建新用户并授权

1、创建新用户 创建一个用户名为:test adduser test 创建初始密码: passwd test 2、授予root权限 个人用户的权限只可以在/home/test下有完整权限,其他目录要看别人授权。而经常需要roo...

xixingzhe ⋅ 53分钟前 ⋅ 0

求助:TiledMap如何旋转对象呢?

比如我要旋转一个梯子的角度,单纯在TiledMap旋转角度好像没有效果。那是要用代码来控制角度,还是说只能通过导入相对应的斜的图片才可以呢?

花谢自相惜 ⋅ 55分钟前 ⋅ 0

Micronaut 之HelloWorld!

小试一下Micronaut,按照官方文档跑了一下helloworld 第一步克隆,按照官方文档是: git clone git@github.com:micronaut-projects/micronaut-core.git 结果怎么是这样?? 换个方法吧 git ...

桂哥 ⋅ 今天 ⋅ 0

pom文件

Aeroever ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部