Crate ceph[−][src]
Ceph-rust is a thin layer over the librados C interface. A little higher abstraction layer will be coming next that will encapsulate all of the “C” specific features so that only pure Rust will be needed.
Only works on Linux The documentation for librados can be found: http://docs.ceph.com/docs/master/rados/api/librados/
By default Ceph names librados as the following for the given platforms: Hammer release: RHEL/CentOS: /usr/lib64/librados.so.2.0.0
Ubuntu: /usr/lib/librados.so.2.0.0
You will need to do a symlink of the above link to the following: RHEL/CentOS: sudo ln -s /usr/lib64/librados.so.2.0.0 /usr/lib64/librados.so
Ubuntu: sudo ln -s /usr/lib/librados.so.2.0.0 /usr/lib/librados.so
NOTE: If someone know of another way for Rust to find the librados file then please issue a PR for it. Thanks!
See the /examples/ceph.rs for how to use the library.
Re-exports
pub use crate::cmd::OsdOption; |
pub use crate::cmd::PoolOption; |
Modules
admin_sockets | |
ceph | |
ceph_volume | |
cmd | Ceph has a command system defined in https://github.com/ceph/ceph/blob/master/src/mon/MonCommands.h The cli commands mostly use this json based system. This allows you to make the exact same calls without having to shell out with std::process::Command. Many of the commands defined in this file have a simulate parameter to allow you to test without actually calling Ceph. |
error | |
json | |
rados | |
status | |
utils |
Structs
CephClient | A CephClient is a struct that handles communicating with Ceph in a nicer, Rustier way |
MonCommand |
Enums
CephVersion |
Type Definitions
JsonData | |
JsonValue |