ceph/ceph-iscsi-config

Name: ceph-iscsi-config

Owner: Ceph

Description: Repo containing common configuration modules for managing iscsi gateways for ceph

Created: 2016-09-29 19:32:44.0

Updated: 2018-05-24 15:10:13.0

Pushed: 2018-05-24 15:10:10.0

Homepage: null

Size: 1532

Language: Python

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

ceph-iscsi-config

This project provides the common logic for creating and managing LIO gateways for ceph, together with a startup daemon
called rbd-target-gw which is responsible for restoring the state of LIO following a gateway reboot/outage.

Usage

This package should be installed on each node that is intended to be an iSCSI gateway. The config modules are used by

Installation
Via RPM

Simply install the provided rpm with

Manually

following packages are required by ceph-iscsi-config and must be
alled before starting the rbd-target-gw service:

on-rados
on-rbd
on-netaddr
on-netifaces
on-rtslib
on-crypto

nstall the python package that provides the application logic, run the provided setup.py script  
 ```> python setup.py install```   

the management daemon (rbd-target-gw), simply copy the following files into their equivalent places on each gateway  
rchive_root>/usr/lib/systemd/system/rbd-target-gw.service  --> /lib/systemd/system
rchive_root>/usr/bin/rbd-target-gw --> /usr/bin  

 the daemon is in place, reload the configuration with  

systemctl daemon-reload systemctl enable rbd-target-gw systemctl start rbd-target-gw

eatures
functionality provided by each module in the python package is summarised below;

dule | Description |
- | --- |
client** | logic handling the create/update and remove of a NodeACL from a gateway |
config** | common code handling the creation and update mechanisms for the rados configuration object |  
gateway** | definition of the iSCSI gateway (target plus target portal groups) |
lun** | rbd image management (create/resize), combined with mapping to the OS and LIO instance |
utils** | common code called by multiple modules |

rbd-target-gw daemon performs the following tasks;  
 At start up remove any osd blacklist entry that may apply to the running host  
 Read the configuration object from Rados  
 Process the configuration  
1 map rbd's to the host  
2 add rbd's to LIO  
3 Create the iscsi target, TPG's and port IP's  
4 Define clients (NodeACL's)  
5 add the required rbd images to clients  

This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.