Application and fault handling of CEPH in KVM virtualization
In a distributed cluster, the user is provided with object storage, block storage and file storage.
Benefits: Unified Storage
No single point of failure
Data multi-split redundancy
Scalable storage Capacity
Automatic fault tolerance and fault self-healing
Three major role components of ceph and their role
represented as 3 daemons
Ceph OSD
Monitor
Mds
There are some other functional components RADOS getaway
The main features of Ceph Osd:ceph Object Storage Device include: storing data, copy data processing, data recovery, data restoration, balancing data distribution, and providing some child monitoring information related to the data to at least 2 Ceph OSD, in order to effectively save two copies of data.
Monitor: The main function is to maintain the cluster state of the table group, Monitor map,osd MAP,PG (Placement Group) Map,crush Map
The Mds:ceph mds (Metadata Server) daemon, which primarily holds metadata for the Ceph file system. The Ceph MDS Daemon is not required for Ceph block devices and Ceph object storage.
Architecture and application Scenarios for Ceph
Ceph architecture is divided into the underlying data distribution and upper application interface
The underlying core of Ceph is Rados (reliable,autonomous,distributed,object,storage)
The nature of Ceph is an object store. Rados consists of two components: OSD and monitor
The OSD mainly provides storage resources, each Disk,ssd,raid group or a partition can be an OSD, and each OSD will also be responsible for distributing and recovering the load node of the object, monitor maintaining the Ceph cluster and monitoring the global status of the Ceph cluster. Provides a consistent policy
Rados distribution policy relies on an algorithm named Crush (controlled Replication under scalable Hashing controlled replication based on extensible hashing algorithm)
Ceph's application scenario is primarily determined by its architecture. Ceph provides object storage. Block storage and file storage. There are 4 main applications
First Category: Librados applications. In layman's words, Librados provides direct access to Rados by the application, and currently Librados provides support for C,c++,java,python,ruby and PHP, which supports atomic manipulation of single items. such as updating data and properties at the same time, CAS operations, and the object granularity of the snapshot operation, its implementation is based on the Rados plug-in API, which is actually running on the Rados package library.
Class II: RADOSGW (Reliable autonomic distributed Object Storage) application, which is based on Librados, adds HTTP protocol, provides restful interface and is compatible with S3,swift interface
Category III: RBD (RADOS BLOCK DEVICE) applications, which are based on Librados, are subdivided into two application scenarios
1. To provide a block device for the virtual machine, through LIBRBD can create a block device (Container), and then through the QEMU/KVM attached to the VM, through the Container and the VM decoupling, so that the block device can be bound to the non-pass VM
2. Provide a block device for the host.
Both of these methods are to store a virtual block device Shard in the Rados, will use data stripe to improve data parallel transmission, both support the snapshot of the block device. COW (Copy-on-write) cloning. The most important thing is that RBD also supports live migration.
Class Fourth: CEPHFS (ceph file system) applications, which are PB-level Distributed file systems based on the Rados implementation, with the introduction of MDS (Meta Data Server), which primarily provides metadata for a compatible POSIX file system, such as file directories and file metadata, At the same time, MDS stores the metadata in Rados, so that the metadata itself is parallelized, which can greatly speed up the file operation.
The MDS itself does not provide a data file for the client, only provides the client with metadata, and when the client opens a file, it queries and updates the MDS response metadata, and then obtains the file information directly from the Rados based on the provided object information.
This article is from the "Lionel" blog, make sure to keep this source http://reliable.blog.51cto.com/10292844/1785966
ceph-Related Concepts