Skip to content

Commit 4843cd7

Browse files
authored
Merge branch 'main' into mgr-prom
Signed-off-by: Zac Dover <[email protected]>
2 parents d6327a6 + 9c0e8a5 commit 4843cd7

File tree

143 files changed

+3994
-2537
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

143 files changed

+3994
-2537
lines changed

PendingReleaseNotes

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,10 @@
107107
`PutBucketPolicy`. Additionally, the root user will always have access to modify
108108
the bucket policy, even if the current policy explicitly denies access.
109109

110+
* CephFS: The ``ceph fs subvolume snapshot getpath`` command now allows users
111+
to get the path of a snapshot of a subvolume. If the snapshot is not present
112+
``ENOENT`` is returned.
113+
110114
* CephFS: The ``ceph fs volume create`` command now allows users to pass
111115
metadata and data pool names to be used for creating the volume. If either
112116
is not passed or if either is a non-empty pool, the command will abort.

cmake/modules/BuildBoost.cmake

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -93,13 +93,15 @@ function(do_build_boost root_dir version)
9393
message(SEND_ERROR "unknown compiler: ${CMAKE_CXX_COMPILER_ID}")
9494
endif()
9595

96-
# build b2 and prepare the project-config.jam for boost
96+
# prepare the project-config.jam for boost
97+
set(bjam <SOURCE_DIR>/b2)
9798
set(configure_command
9899
./bootstrap.sh --prefix=<INSTALL_DIR>
99100
--with-libraries=${boost_with_libs}
100-
--with-toolset=${toolset})
101+
--with-toolset=${toolset}
102+
--with-bjam=${bjam})
101103

102-
set(b2 ./b2)
104+
set(b2 ${bjam})
103105
if(BOOST_J)
104106
message(STATUS "BUILDING Boost Libraries at j ${BOOST_J}")
105107
list(APPEND b2 -j${BOOST_J})
@@ -183,6 +185,13 @@ function(do_build_boost root_dir version)
183185
BUILD_BYPRODUCTS ${Boost_LIBRARIES}
184186
INSTALL_COMMAND ${install_command}
185187
PREFIX "${root_dir}")
188+
ExternalProject_Add_Step(Boost build-bjam
189+
COMMAND ./tools/build/src/engine/build.sh --cxx=${CMAKE_CXX_COMPILER} ${toolset}
190+
COMMAND ${CMAKE_COMMAND} -E copy ./tools/build/src/engine/b2 ${bjam}
191+
DEPENDEES download
192+
DEPENDERS configure
193+
COMMENT "Building B2 engine.."
194+
WORKING_DIRECTORY <SOURCE_DIR>)
186195
endfunction()
187196

188197
set(Boost_context_DEPENDENCIES thread chrono system date_time)

doc/cephfs/fs-volumes.rst

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -635,6 +635,15 @@ otherwise fail (if the snapshot did not exist).
635635

636636
.. note:: if the last snapshot within a snapshot retained subvolume is removed, the subvolume is also removed
637637

638+
Fetching Path of a Snapshot of a Subvolume
639+
------------------------------------------
640+
Use a command of the following form to fetch the absolute path of a snapshot of
641+
a subvolume:
642+
643+
.. prompt:: base #
644+
645+
ceph fs subvolume snapshot getpath <volname> <subvol_name> <snap_name> [<group_name>]
646+
638647
Listing the Snapshots of a Subvolume
639648
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
640649

doc/mgr/administrator.rst

Lines changed: 14 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -10,27 +10,21 @@ Usually, you would set up a ceph-mgr daemon using a tool such
1010
as ceph-ansible. These instructions describe how to set up
1111
a ceph-mgr daemon manually.
1212

13-
First, create an authentication key for your daemon:
13+
First, create an authentication key for your daemon::
1414

15-
.. prompt:: bash #
16-
17-
ceph auth get-or-create mgr.$name mon 'allow profile mgr' osd 'allow *' mds 'allow *'
15+
ceph auth get-or-create mgr.$name mon 'allow profile mgr' osd 'allow *' mds 'allow *'
1816

1917
Place that key as file named ``keyring`` into ``mgr data`` path, which for a cluster "ceph"
2018
and mgr $name "foo" would be ``/var/lib/ceph/mgr/ceph-foo`` respective ``/var/lib/ceph/mgr/ceph-foo/keyring``.
2119

22-
Start the ceph-mgr daemon:
23-
24-
.. prompt:: bash #
20+
Start the ceph-mgr daemon::
2521

26-
ceph-mgr -i $name
22+
ceph-mgr -i $name
2723

2824
Check that the mgr has come up by looking at the output
29-
of ``ceph status``, which should now include a mgr status line:
30-
31-
.. prompt:: bash #
25+
of ``ceph status``, which should now include a mgr status line::
3226

33-
mgr active: $name
27+
mgr active: $name
3428

3529
Client authentication
3630
---------------------
@@ -39,7 +33,7 @@ The manager is a new daemon which requires new CephX capabilities. If you upgrad
3933
a cluster from an old version of Ceph, or use the default install/deploy tools,
4034
your admin client should get this capability automatically. If you use tooling from
4135
elsewhere, you may get EACCES errors when invoking certain ceph cluster commands.
42-
To fix that, add a ``mgr allow \*`` stanza to your client's cephx capabilities by
36+
To fix that, add a "mgr allow \*" stanza to your client's cephx capabilities by
4337
`Modifying User Capabilities`_.
4438

4539
High availability
@@ -101,12 +95,9 @@ information about what functionality each module provides.
10195

10296
Here is an example of enabling the :term:`Dashboard` module:
10397

104-
.. prompt:: bash #
105-
106-
ceph mgr module ls
107-
108-
::
98+
.. code-block:: console
10999
100+
$ ceph mgr module ls
110101
{
111102
"enabled_modules": [
112103
"status"
@@ -116,13 +107,8 @@ Here is an example of enabling the :term:`Dashboard` module:
116107
]
117108
}
118109
119-
.. prompt:: bash #
120-
121-
ceph mgr module enable dashboard
122-
ceph mgr module ls
123-
124-
::
125-
110+
$ ceph mgr module enable dashboard
111+
$ ceph mgr module ls
126112
{
127113
"enabled_modules": [
128114
"status",
@@ -132,12 +118,7 @@ Here is an example of enabling the :term:`Dashboard` module:
132118
]
133119
}
134120
135-
.. prompt:: bash #
136-
137-
ceph mgr services
138-
139-
::
140-
121+
$ ceph mgr services
141122
{
142123
"dashboard": "http://myserver.com:7789/"
143124
}
@@ -176,11 +157,9 @@ Calling module commands
176157
Where a module implements command line hooks, the commands will
177158
be accessible as ordinary Ceph commands. Ceph will automatically incorporate
178159
module commands into the standard CLI interface and route them appropriately to
179-
the module.
180-
181-
.. prompt:: bash #
160+
the module.::
182161

183-
ceph <command | help>
162+
ceph <command | help>
184163

185164
Configuration
186165
-------------

doc/mgr/alerts.rst

Lines changed: 18 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -16,58 +16,44 @@ as well.
1616
Enabling
1717
--------
1818

19-
The *alerts* module is enabled with:
19+
The *alerts* module is enabled with::
2020

21-
.. prompt:: bash #
22-
23-
ceph mgr module enable alerts
21+
ceph mgr module enable alerts
2422

2523
Configuration
2624
-------------
2725

2826
To configure SMTP, all of the following config options must be set
29-
(When setting ``mgr/alerts/smtp_destination``, you can use commas to separate multiple):
30-
31-
.. prompt:: bash #
32-
33-
ceph config set mgr mgr/alerts/smtp_host *<smtp-server>*
34-
ceph config set mgr mgr/alerts/smtp_destination *<email-address-to-send-to>*
35-
ceph config set mgr mgr/alerts/smtp_sender *<from-email-address>*
36-
37-
By default, the module will use SSL and port 465. To change that:
27+
(When setting ``mgr/alerts/smtp_destination``, you can use commas to separate multiple)::
3828

39-
.. prompt:: bash #
29+
ceph config set mgr mgr/alerts/smtp_host *<smtp-server>*
30+
ceph config set mgr mgr/alerts/smtp_destination *<email-address-to-send-to>*
31+
ceph config set mgr mgr/alerts/smtp_sender *<from-email-address>*
4032

41-
ceph config set mgr mgr/alerts/smtp_ssl false # if not SSL
42-
ceph config set mgr mgr/alerts/smtp_port *<port-number>* # if not 465
33+
By default, the module will use SSL and port 465. To change that,::
4334

44-
To authenticate to the SMTP server, you must set the user and password:
35+
ceph config set mgr mgr/alerts/smtp_ssl false # if not SSL
36+
ceph config set mgr mgr/alerts/smtp_port *<port-number>* # if not 465
4537

46-
.. prompt:: bash #
38+
To authenticate to the SMTP server, you must set the user and password::
4739

48-
ceph config set mgr mgr/alerts/smtp_user *<username>*
49-
ceph config set mgr mgr/alerts/smtp_password *<password>*
40+
ceph config set mgr mgr/alerts/smtp_user *<username>*
41+
ceph config set mgr mgr/alerts/smtp_password *<password>*
5042

5143
By default, the name in the ``From:`` line is simply ``Ceph``. To
52-
change that (e.g., to identify which cluster this is):
44+
change that (e.g., to identify which cluster this is),::
5345

54-
.. prompt:: bash #
55-
56-
ceph config set mgr mgr/alerts/smtp_from_name 'Ceph Cluster Foo'
46+
ceph config set mgr mgr/alerts/smtp_from_name 'Ceph Cluster Foo'
5747

5848
By default, the module will check the cluster health once per minute
5949
and, if there is a change, send a message. To change that
60-
frequency:
61-
62-
.. prompt:: bash #
50+
frequency,::
6351

64-
ceph config set mgr mgr/alerts/interval *<interval>* # e.g., "5m" for 5 minutes
52+
ceph config set mgr mgr/alerts/interval *<interval>* # e.g., "5m" for 5 minutes
6553

6654
Commands
6755
--------
6856

69-
To force an alert to be send immediately:
70-
71-
.. prompt:: bash #
57+
To force an alert to be send immediately,::
7258

73-
ceph alerts send
59+
ceph alerts send

doc/mgr/ceph_api/index.rst

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -53,11 +53,9 @@ be obtained, and it may then be reused for subsequent requests. The
5353
{ "token": "<redacted_token>", ...}
5454

5555
The token obtained must be passed together with every API request in the
56-
``Authorization`` HTTP header:
56+
``Authorization`` HTTP header::
5757

58-
.. prompt:: bash $
59-
60-
curl -H "Authorization: Bearer <token>" ...
58+
curl -H "Authorization: Bearer <token>" ...
6159

6260
Authentication and authorization can be further configured from the
6361
Ceph CLI, the Ceph-Dashboard UI and the Ceph API itself (please refer to

doc/mgr/cli_api.rst

Lines changed: 14 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -7,47 +7,33 @@ benchmarked for further testing.
77
Enabling
88
--------
99

10-
The *cli api commands* module is enabled with:
10+
The *cli api commands* module is enabled with::
1111

12-
.. prompt:: bash #
12+
ceph mgr module enable cli_api
1313

14-
ceph mgr module enable cli_api
14+
To check that it is enabled, run::
1515

16-
To check that it is enabled, run:
17-
18-
.. prompt:: bash #
19-
20-
ceph mgr module ls | grep cli_api
16+
ceph mgr module ls | grep cli_api
2117

2218
Usage
2319
--------
2420

25-
To run a mgr module command, run:
26-
27-
.. prompt:: bash #
28-
29-
ceph mgr cli <command> <param>
30-
31-
For example, use the following command to print the list of servers:
32-
33-
.. prompt:: bash #
34-
35-
ceph mgr cli list_servers
21+
To run a mgr module command, run::
3622

37-
List all available mgr module commands with:
23+
ceph mgr cli <command> <param>
3824

39-
.. prompt:: bash #
25+
For example, use the following command to print the list of servers::
4026

41-
ceph mgr cli --help
27+
ceph mgr cli list_servers
4228

43-
To benchmark a command, run:
29+
List all available mgr module commands with::
4430

45-
.. prompt:: bash #
31+
ceph mgr cli --help
4632

47-
ceph mgr cli_benchmark <number of calls> <number of threads> <command> <param>
33+
To benchmark a command, run::
4834

49-
For example, use the following command to benchmark the command to get osd_map:
35+
ceph mgr cli_benchmark <number of calls> <number of threads> <command> <param>
5036

51-
.. prompt:: bash #
37+
For example, use the following command to benchmark the command to get osd_map::
5238

53-
ceph mgr cli_benchmark 100 10 get osd_map
39+
ceph mgr cli_benchmark 100 10 get osd_map

0 commit comments

Comments
 (0)