Juju Charm - Ceph iSCSI
Go to file
Samuel Walladge bf30af291e Fix charm for tox4 compatibility
Also remove python 3.5 targets as this is long not supported.

And add the mocking for charmhelpers - see
https://review.opendev.org/c/openstack/charm-heat/+/899195 for example

Related-Bug: 2002788
Change-Id: Ic70092a45d595d337ea26505139c2f6515cb1d38
2023-10-26 14:28:20 +10:30
src Add support for Ceph dashboard support 2021-09-10 11:27:17 +00:00
templates Add support for Ceph dashboard support 2021-09-10 11:27:17 +00:00
tests Remove kinetic support 2023-10-03 09:02:43 +02:00
unit_tests Fix charm for tox4 compatibility 2023-10-26 14:28:20 +10:30
.gitignore Add .gitreview and .zuul.yaml 2020-08-19 13:55:34 +00:00
.gitmodules Switch charm to use charmcraft for building 2020-07-31 15:55:44 +00:00
.gitreview fix .gitreview repo reference 2022-10-19 11:44:20 -04:00
.jujuignore Add .gitreview and .zuul.yaml 2020-08-19 13:55:34 +00:00
.stestr.conf Add unit tests and update tox 2020-04-27 15:30:12 +00:00
.zuul.yaml Add support for interim Ubuntu releases 2023-03-17 10:18:33 -04:00
README.md Add a notice indicating that the charm is deprecated 2023-03-15 20:38:52 -03:00
actions.yaml Create default rbd pool 2020-09-21 12:50:41 +00:00
charmcraft.yaml Partially revert previous change to re-enable Focal as a gating target 2023-09-04 13:54:33 -03:00
config.yaml Add support for interim Ubuntu releases 2023-03-17 10:18:33 -04:00
copyright Add .gitreview and .zuul.yaml 2020-08-19 13:55:34 +00:00
metadata.yaml Remove kinetic support 2023-10-03 09:02:43 +02:00
osci.yaml Fix charm for tox4 compatibility 2023-10-26 14:28:20 +10:30
rename.sh Migrate to charmhub 2022-03-16 13:25:35 +00:00
requirements.txt Add a notice indicating that the charm is deprecated 2023-03-15 20:38:52 -03:00
test-requirements.txt Fix charm for tox4 compatibility 2023-10-26 14:28:20 +10:30
tox.ini Fix charm for tox4 compatibility 2023-10-26 14:28:20 +10:30

README.md

Overview

The ceph-iscsi charm deploys the Ceph iSCSI gateway service. The charm is intended to be used in conjunction with the ceph-osd and ceph-mon charms.

NOTE: This charm is deprecated. No new features will be introduced.

Usage

Configuration

See file config.yaml for the full list of options, along with their descriptions and default values.

Ceph BlueStore compression

This charm supports [BlueStore inline compression][ceph-bluestore-compression] for its associated Ceph storage pool(s). The feature is enabled by assigning a compression mode via the bluestore-compression-mode configuration option. The default behaviour is to disable compression.

The efficiency of compression depends heavily on what type of data is stored in the pool and the charm provides a set of configuration options to fine tune the compression behaviour.

Note: BlueStore compression is supported starting with Ceph Mimic.

Deployment

We are assuming a pre-existing Ceph cluster.

To provide multiple data paths to clients deploy exactly two ceph-iscsi units:

juju deploy -n 2 ceph-iscsi

Then add a relation to the ceph-mon application:

juju add-relation ceph-iscsi:ceph-client ceph-mon:client

Notes:

  • Deploying four ceph-iscsi units is theoretically possible but it is not an officially supported configuration.

  • The ceph-iscsi application cannot be containerised.

  • Co-locating ceph-iscsi with another application is only supported with ceph-osd, although doing so with other applications may still work.

Actions

This section covers Juju actions supported by the charm. Actions allow specific operations to be performed on a per-unit basis. To display action descriptions run juju actions ceph-iscsi. If the charm is not deployed then see file actions.yaml.

  • add-trusted-ip
  • create-target
  • pause
  • resume
  • security-checklist

To display action descriptions run juju actions ceph-iscsi. If the charm is not deployed then see file actions.yaml.

iSCSI target management

Create an iSCSI target

An iSCSI target can be created easily with the charm's create-target action:

juju run-action --wait ceph-iscsi/0 create-target \
   client-initiatorname=iqn.1993-08.org.debian:01:aaa2299be916 \
   client-username=myiscsiusername \
   client-password=myiscsipassword \
   image-size=5G \
   image-name=small \
   pool-name=images

In the above, all option values are generally user-defined with the exception of the initiator name (client-initiatorname). An iSCSI initiator is essentially an iSCSI client and so its name is client-dependent. Some initiators may impose policy on credentials (client-username and client-password).

Important: The underlying machines for the ceph-iscsi units must have internal name resolution working (i.e. the machines must be able to resolve each other's hostnames).

The gwcli utility

The management of targets, beyond the target-creation action described above, can be accomplished via the gwcli utility. This CLI tool has its own shell, and is available from any ceph-iscsi unit:

juju ssh ceph-iscsi/1
sudo gwcli
/> help

VMware integration

Ceph can be used to back iSCSI targets for VMware initiators. This is documented under VMware integration in the Charmed Ceph documentation.

Bugs

Please report bugs on Launchpad.

For general charm questions refer to the OpenStack Charm Guide.