Juju Charm - Ceph iSCSI
Go to file
Billy Olsen 707f3c0af0
Update bundles to specify source config option
The ceph-mon and ceph-osd charms changed the default source config
option to be bobcat in the master branches. This breaks focal tests
as the focal-bobcat cloud archive is not a valid source repository.
Update the config options for the test bundles to be explicit in the
source of package updates.

Change-Id: Ia535b0500d39409f939f0aa58271866efbcd55fb
2024-02-07 18:22:36 -07:00
src Fix: enable GW services once we have config 2023-12-07 18:19:17 +01:00
templates Add support for Ceph dashboard support 2021-09-10 11:27:17 +00:00
tests Update bundles to specify source config option 2024-02-07 18:22:36 -07:00
unit_tests Fix: enable GW services once we have config 2023-12-07 18:19:17 +01:00
.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 Fix key errors for rbd-pool-name and ec-rbd-metadata-pool 2023-11-06 22:11:55 +09: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 Merge "Add reef functests" 2023-11-06 09:21:11 +00:00
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: enable GW services once we have config 2023-12-07 18:19:17 +01:00
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.