Skip to content

Commit 1c89597

Browse files
doc: add clustering related items to smb docs
Signed-off-by: John Mulligan <[email protected]>
1 parent daf405e commit 1c89597

File tree

2 files changed

+47
-10
lines changed

2 files changed

+47
-10
lines changed

doc/cephadm/services/smb.rst

Lines changed: 30 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,10 @@ SMB Service
99
.. warning::
1010

1111
SMB support is under active development and many features may be
12-
missing or immature. Additionally, a Manager module to automate
13-
SMB clusters and SMB shares is in development. Once that feature
14-
is developed it will be the preferred method for managing
15-
SMB on ceph.
12+
missing or immature. A Ceph MGR module, named smb, is available to help
13+
organize and manage SMB related featues. Unless the smb module
14+
has been determined to be unsuitable for your needs we recommend using that
15+
module over directly using the smb service spec.
1616

1717

1818
Deploying Samba Containers
@@ -78,6 +78,7 @@ features
7878
An empty list is valid. Supported terms:
7979

8080
* ``domain``: Enable domain member mode
81+
* ``clustered``: Enable Samba native cluster mode
8182

8283
config_uri
8384
A string containing a (standard or de-facto) URI that identifies a
@@ -109,6 +110,30 @@ include_ceph_users:
109110
The cephx keys for each user in the list will automatically be added to
110111
the keyring in the container.
111112

113+
cluster_meta_uri:
114+
A string containing a URI that identifies where the cluster structure
115+
metadata will be stored. Required if ``clustered`` feature is set. Must be
116+
a RADOS pseudo-URI.
117+
118+
cluster_lock_uri:
119+
A string containing a URI that identifies where Samba/CTDB will store a
120+
cluster lock. Required if ``clustered`` feature is set. Must be a RADOS
121+
pseudo-URI.
122+
123+
124+
.. note::
125+
126+
If one desires clustering between smbd instances (also known as
127+
High-Availability or "transparent state migration") the feature flag
128+
``clustered`` is needed. If this flag is not specified cephadm may deploy
129+
multiple smb servers but they will lack the coordination needed of an actual
130+
Highly-Avaiable cluster. When the ``clustered`` flag is specified cephadm
131+
will deploy additional containers that manage this coordination.
132+
Additionally, the cluster_meta_uri and cluster_lock_uri values must be
133+
specified. The former is used by cephadm to describe the smb cluster layout
134+
to the samba containers. The latter is used by Samba's CTDB component to
135+
manage an internal cluster lock.
136+
112137

113138
Configuring an SMB Service
114139
--------------------------
@@ -134,7 +159,7 @@ it accepts.
134159
When one has composed a configuration it should be stored in a location
135160
that the Samba Container can access. The recommended approach for running
136161
Samba Containers within Ceph orchestration is to store the configuration
137-
in the Ceph cluster. There are two ways to store the configuration
162+
in the Ceph cluster. There are a few ways to store the configuration
138163
in ceph:
139164

140165
RADOS
@@ -202,9 +227,5 @@ A non-exhaustive list of important limitations for the SMB service follows:
202227
configured so that it can resolve the Active Directory (AD) domain or the
203228
``custom_dns`` option may be used. In both cases DNS hosts for the AD domain
204229
must still be reachable from whatever network segment the ceph cluster is on.
205-
* Proper clustering/high-availability/"transparent state migration" is not yet
206-
supported. If a placement causes more than service to be created these
207-
services will act independently and may lead to unexpected behavior if clients
208-
access the same files at once.
209230
* Services must bind to TCP port 445. Running multiple SMB services on the same
210231
node is not yet supported and will trigger a port-in-use conflict.

doc/mgr/smb.rst

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ Create Cluster
5555

5656
.. code:: bash
5757
58-
$ ceph smb cluster create <cluster_id> {user|active-directory} [--domain-realm=<domain_realm>] [--domain-join-user-pass=<domain_join_user_pass>] [--define-user-pass=<define_user_pass>] [--custom-dns=<custom_dns>] [--placement=<placement>]
58+
$ ceph smb cluster create <cluster_id> {user|active-directory} [--domain-realm=<domain_realm>] [--domain-join-user-pass=<domain_join_user_pass>] [--define-user-pass=<define_user_pass>] [--custom-dns=<custom_dns>] [--placement=<placement>] [--clustering=<clustering>]
5959
6060
Create a new logical cluster, identified by the cluster id value. The cluster
6161
create command must specify the authentication mode the cluster will use. This
@@ -88,6 +88,14 @@ custom_dns
8888
not configured to resolve DNS entries within AD domain(s).
8989
placement
9090
A Ceph orchestration :ref:`placement specifier <orchestrator-cli-placement-spec>`
91+
clustering
92+
Optional. Control if a cluster abstraction actually uses Samba's clustering
93+
mechanism. The value may be one of ``default``, ``always``, or ``never``.
94+
A ``default`` value indicates that clustering should be enabled if the
95+
placement count value is any value other than 1. A value of ``always``
96+
enables clustering regardless of the placement count. A value of ``never``
97+
disables clustering regardless of the placement count. If unspecified,
98+
``default`` is assumed.
9199

92100
Remove Cluster
93101
++++++++++++++
@@ -360,6 +368,14 @@ custom_dns
360368
placement
361369
Optional. A Ceph Orchestration :ref:`placement specifier
362370
<orchestrator-cli-placement-spec>`. Defaults to one host if not provided
371+
clustering
372+
Optional. Control if a cluster abstraction actually uses Samba's clustering
373+
mechanism. The value may be one of ``default``, ``always``, or ``never``.
374+
A ``default`` value indicates that clustering should be enabled if the
375+
placement count value is any value other than 1. A value of ``always``
376+
enables clustering regardless of the placement count. A value of ``never``
377+
disables clustering regardless of the placement count. If unspecified,
378+
``default`` is assumed.
363379
custom_smb_global_options
364380
Optional mapping. Specify key-value pairs that will be directly added to
365381
the global ``smb.conf`` options (or equivalent) of a Samba server. Do

0 commit comments

Comments
 (0)