diff --git a/PendingReleaseNotes b/PendingReleaseNotes index 1ca362d57563c..ec40fb8ef06b5 100644 --- a/PendingReleaseNotes +++ b/PendingReleaseNotes @@ -99,6 +99,13 @@ +* The default memory utilization for the mons has been increased + somewhat. Rocksdb now uses 512 MB of RAM by default, which should + be sufficient for small to medium-sized clusters; large clusters + should tune this up. Also, the ``mon_osd_cache_size`` has been + increase from 10 OSDMaps to 500, which will translate to an + additional 500 MB to 1 GB of RAM for large clusters, and much less + for small clusters. diff --git a/doc/start/hardware-recommendations.rst b/doc/start/hardware-recommendations.rst index c1a02a4ddb8ef..a92c476d81895 100644 --- a/doc/start/hardware-recommendations.rst +++ b/doc/start/hardware-recommendations.rst @@ -36,11 +36,29 @@ separate hosts. RAM === -Metadata servers and monitors must be capable of serving their data quickly, so -they should have plenty of RAM (e.g., 1GB of RAM per daemon instance). OSDs do -not require as much RAM for regular operations (e.g., 500MB of RAM per daemon -instance); however, during recovery they need significantly more RAM (e.g., ~1GB -per 1TB of storage per daemon). Generally, more RAM is better. +Generally, more RAM is better. + +Monitors and managers (ceph-mon and ceph-mgr) +--------------------------------------------- + +Monitor and manager daemon memory usage generally scales with the size of the +cluster. For small clusters, 1-2 GB is generally sufficient. For +large clusters, you should provide more (5-10 GB). You may also want +to consider tuning settings like ``mon_osd_cache_size`` or +``rocksdb_cache_size``. + +Metadata servers (ceph-mds) +--------------------------- + +The metadata daemon memory utilization depends on how much memory its cache is +configured to consume. We recommend 1 GB as a minimum for most systems. See +``mds_cache_memory``. + +OSDs (ceph-osd) +--------------- + +By default, OSDs that use the BlueStore backend require 3-5 GB of RAM. You can +adjust the amount of memory the OSD consumes with the ``osd_memory_target`` configuration option when BlueStore is in use. When using the legacy FileStore backend, the operating system page cache is used for caching data, so no tuning is normally needed, and the OSD memory consumption is generally related to the number of PGs per daemon in the system. Data Storage diff --git a/src/common/options.cc b/src/common/options.cc index 12ed9ba353106..a311489ba82f3 100644 --- a/src/common/options.cc +++ b/src/common/options.cc @@ -1253,7 +1253,7 @@ std::vector