Skip to content

Commit

Permalink
Bring README back into sync with codebase
Browse files Browse the repository at this point in the history
  • Loading branch information
cholcombe973 committed Sep 19, 2017
1 parent 37965b6 commit 9340cae
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 10 deletions.
25 changes: 18 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,21 +4,22 @@ Dead disk management for Ceph and more.
Stage 1: Disk replacement automation pipeline. There's several steps that used to require a human that I would like to cut out:
1. Identify bad disks
2. File a ticket request with JIRA
3. Keep track of the file request in a local sqlite database
3. Keep track of the file request in a local Sqlite3 database
4. Watch for JIRA ticket resolution
5. Insert the disk back into the Ceph cluster

Stage 2: OSD monitoring to restart osds that are kicked out of the tree for some reason.
Stage 2: OSD monitoring to restart osds that are kicked out of the tree for some reason. This might be better broken out into another utility.

Stage 3: JSON RPC API to allow remote control of ceph servers.
Stage 3: Protobuf RPC API to allow remote control of ceph servers. This might
also need to be broken out to another utility. An RPC api for this utility
though could prove useful.

## Usage
## Configuration:
1. Create your configuration file. The utility takes json config
information. Edit the `/etc/ceph_dead_disk/config.json` file to configure it. Fields for this file are:
```
{
"ceph_config": "/etc/ceph/ceph.conf",
"ceph_user_id": "admin",
"backend": "Ceph",
"db_location": "/etc/ceph_dead_disk/disks.sqlite3",
"jira_user": "test_user",
"jira_password": "user_password",
Expand All @@ -30,10 +31,20 @@ information. Edit the `/etc/ceph_dead_disk/config.json` file to configure it. F
"jira_ticket_assignee": "assignee_username"
}
```
and also create your `/etc/ceph_dead_disk/ceph.json` file:
```
{
"config_file": "/etc/ceph/ceph.conf",
"user_id": "admin"
}
```
This tells the Ceph backend how to talk to Ceph.

## Usage:

## TODO:
- [ ] LSI Raid integration
- [ ] HP Raid integration
- [ ] NVME integration
- [ ] libatasmart integration
- [x] libatasmart integration
- [ ] raid slot detection
2 changes: 1 addition & 1 deletion src/backend/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ pub trait Backend {
}

/// The supported backend types
#[derive(Clone, Debug)]
#[derive(Clone, Debug, Deserialize)]
pub enum BackendType {
Ceph,
//Gluster
Expand Down
3 changes: 1 addition & 2 deletions src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,7 @@ use simplelog::{Config, SimpleLogger};

#[derive(Debug, Deserialize)]
struct ConfigSettings {
ceph_config: String,
ceph_user_id: String,
backend: backend::BackendType,
db_location: String,
jira_user: String,
jira_password: String,
Expand Down

0 comments on commit 9340cae

Please sign in to comment.