{"id":580,"date":"2025-07-04T16:32:04","date_gmt":"2025-07-04T07:32:04","guid":{"rendered":"http:\/\/www.iwgh.my\/?p=580"},"modified":"2025-07-09T11:36:46","modified_gmt":"2025-07-09T02:36:46","slug":"ceph-reef-%eb%b2%84%ec%a0%84-%ec%84%a4%ec%b9%98%ed%95%98%ea%b8%b0-with-rocky-linux-9","status":"publish","type":"post","link":"https:\/\/iwgh.duckdns.org\/?p=580","title":{"rendered":"Ceph reef \ubc84\uc804 \uc124\uce58\ud558\uae30.(with Rocky Linux 9)"},"content":{"rendered":"\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"699\" height=\"935\" src=\"http:\/\/www.iwgh.my\/wp-content\/uploads\/2025\/07\/image-4.png\" alt=\"\" class=\"wp-image-601\" srcset=\"https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-4.png 699w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-4-224x300.png 224w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-4-230x308.png 230w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-4-350x468.png 350w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-4-480x642.png 480w\" sizes=\"auto, (max-width: 699px) 100vw, 699px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">!! ceph reef \ubc84\uc804\ubd80\ud130\ub294 cephadm\uc744 \uc81c\uacf5\ud558\uc5ec \uad00\ub9ac\uba74\uc5d0\uc11c \ud3b8\uc758\uc131\uc744 \uc81c\uacf5.<br>  \ubc30\ud3ec\ub294 \ubaa8\ub450 Container\ub97c \ud1b5\ud574 \ubc30\ud3ec\ub418\uba70 \uc791\ub3d9 \uc5ed\uc2dc \ub9c8\ucc2c\uac00\uc9c0\ub85c \ucee8\ud14c\uc774\ub108\uae30\ubc18.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">1. \uc0ac\uc804\ud655\uc778\uc0ac\ud56d<br>  1.1. dnf update.(OS current \ubc84\uc804 \uc720\uc9c0 \ubc0f node\uac04 \ubc84\uc804 \uc77c\uce58.)<br>  1.2. \uc0ac\uc804 package \uc124\uce58<br>   # dnf install epel-release<br>   # dnf install centos-release-ceph-reef.noarch<br>   # rpm &#8211;import &#8216;https:\/\/download.ceph.com\/keys\/release.asc&#8217;<br>   # systemctl disable firewalld.service<br>   # systemctl stop firewalld.service<br>   # getenforce ;;selinux \ud574\uc81c.<br>   # vi \/etc\/selinux\/config<br>   SELINUX=disable<br>   # dnf install podman ;; ceph\ub294 \uc8fc\ub85c podman \uc0ac\uc6a9, docker\ub3c4 \uac00\ub2a5.<br>   # dnf install python3<br>  1.3 \uac01 node \uc2dc\uac04\uc77c\uce58 \ubc0f ntp\/chronyd \uc124\uc815<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">2. cephadm bootstrep node \uc124\uc815 \ubc0f \ubc30\ud3ec.<br>  2.1. cephadm \uc124\uce58<br>   # dnf install -y cephadm<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<pre class=\"wp-block-code has-small-font-size\"><code># dnf install -y cephadm\n\n\ub9c8\uc9c0\ub9c9 \uba54\ud0c0\uc790\ub8cc \ub9cc\ub8cc\ud655\uc778(0:03:56 \uc774\uc804): 2025\ub144 07\uc6d4 03\uc77c (\ubaa9) \uc624\ud6c4 03\uc2dc 43\ubd84 58\ucd08.\n\uc885\uc18d\uc131\uc774 \ud574\uacb0\ub418\uc5c8\uc2b5\ub2c8\ub2e4.\n================================================================================================================ \uafb8\ub7ec\ubbf8                     \uad6c\uc870                      \ubc84\uc804                               \uc800\uc7a5\uc18c                               \ud06c\uae30\n===================================================================================================================================\uc124\uce58 \uc911:\ncephadm                    noarch                    2:18.2.7-2.el9s                    centos-ceph-reef                    228 k\n\n\uc5f0\uacb0 \uc694\uc57d\n===================================================================================================================================\uc124\uce58  1 \uafb8\ub7ec\ubbf8\n\n\uc804\uccb4 \ub0b4\ub824\ubc1b\uae30 \ud06c\uae30: 228 k\n\uc124\uce58\ub41c \ud06c\uae30 : 218 k\n\uafb8\ub7ec\ubbf8 \ub0b4\ub824\ubc1b\uae30 \uc911:\ncephadm-18.2.7-2.el9s.noarch.rpm                                                                   316 kB\/s | 228 kB     00:00    \n-----------------------------------------------------------------------------------------------------------------------------------\ud569\uacc4                                                                                               166 kB\/s | 228 kB     00:01     \n\uc5f0\uacb0 \ud655\uc778 \uc2e4\ud589 \uc911\n\uc5f0\uacb0 \ud655\uc778\uc5d0 \uc131\uacf5\ud588\uc2b5\ub2c8\ub2e4.\n\uc5f0\uacb0 \uc2dc\ud5d8 \uc2e4\ud589 \uc911\n\uc5f0\uacb0 \uc2dc\ud5d8\uc5d0 \uc131\uacf5\ud588\uc2b5\ub2c8\ub2e4.\n\uc5f0\uacb0 \uc2e4\ud589 \uc911\n\uc900\ube44 \uc911     :                                                                                                                1\/1 \n\uad6c\ud604 \uc911     : cephadm-2:18.2.7-2.el9s.noarch                                                                                 1\/1 \n\uc124\uce58 \uc911     : cephadm-2:18.2.7-2.el9s.noarch                                                                                 1\/1 \n\uad6c\ud604 \uc911     : cephadm-2:18.2.7-2.el9s.noarch                                                                                 1\/1 \n\ud655\uc778 \uc911     : cephadm-2:18.2.7-2.el9s.noarch                                                                                 1\/1 \n\n\uc124\uce58\ub418\uc5c8\uc2b5\ub2c8\ub2e4:\ncephadm-2:18.2.7-2.el9s.noarch                                                                                                   \n\n\uc644\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4!<\/code><\/pre>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">  2.2. bootstrap \ubc30\ud3ec (mon-ip ; \ubc30\ud3ec\ud558\ub294 node ip, cluster-ip\uac00 \uc0c1\uc774\ud55c \uacbd\uc6b0 &#8211;cluster-network \uc0ac\uc6a9.<br>   # cephadm bootstrap &#8211;mon-ip 10.10.10.191<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"has-small-font-size wp-block-paragraph\">[root@cephtest01 ~]# cephadm bootstrap &#8211;mon-ip 10.10.10.191<br>Creating directory \/etc\/ceph for ceph.conf<br>Verifying podman|docker is present\u2026<br>Verifying lvm2 is present\u2026<br>Verifying time synchronization is in place\u2026<br>Unit chronyd.service is enabled and running<br>Repeating the final host check\u2026<br>podman (\/usr\/bin\/podman) version 5.4.0 is present<br>systemctl is present<br>lvcreate is present<br>Unit chronyd.service is enabled and running<br>Host looks OK<br>Cluster fsid: 00468a4c-57da-11f0-8985-506b8db0fed8<br>Verifying IP 10.10.10.191 port 3300 \u2026<br>Verifying IP 10.10.10.191 port 6789 \u2026<br>Mon IP <code>10.10.10.191<\/code> is in CIDR network <code>10.10.10.0\/24<\/code><br>Mon IP <code>10.10.10.191<\/code> is in CIDR network <code>10.10.10.0\/24<\/code><br>Internal network (&#8211;cluster-network) has not been provided, OSD replication will default to the public_network<br>Pulling container image quay.io\/ceph\/ceph:v18\u2026<br>Ceph version: ceph version 18.2.7 (6b0e988052ec84cf2d4a54ff9bbbc5e720b621ad) reef (stable)<br>Extracting ceph user uid\/gid from container image\u2026<br>Creating initial keys\u2026<br>Creating initial monmap\u2026<br>Creating mon\u2026<br>Waiting for mon to start\u2026<br>Waiting for mon\u2026<br>mon is available<br>Assimilating anything we can from ceph.conf\u2026<br>Generating new minimal ceph.conf\u2026<br>Restarting the monitor\u2026<br>Setting public_network to 10.10.10.0\/24 in global config section<br>Wrote config to \/etc\/ceph\/ceph.conf<br>Wrote keyring to \/etc\/ceph\/ceph.client.admin.keyring<br>Creating mgr\u2026<br>Verifying port 0.0.0.0:9283 \u2026<br>Verifying port 0.0.0.0:8765 \u2026<br>Verifying port 0.0.0.0:8443 \u2026<br>Waiting for mgr to start\u2026<br>Waiting for mgr\u2026<br>mgr not available, waiting (1\/15)\u2026<br>mgr not available, waiting (2\/15)\u2026<br>mgr not available, waiting (3\/15)\u2026<br>mgr not available, waiting (4\/15)\u2026<br>mgr not available, waiting (5\/15)\u2026<br>mgr not available, waiting (6\/15)\u2026<br>mgr not available, waiting (7\/15)\u2026<br>mgr not available, waiting (8\/15)\u2026<br>mgr not available, waiting (9\/15)\u2026<br>mgr is available<br>Enabling cephadm module\u2026<br>Waiting for the mgr to restart\u2026<br>Waiting for mgr epoch 5\u2026<br>mgr epoch 5 is available<br>Setting orchestrator backend to cephadm\u2026<br>Generating ssh key\u2026<br>Wrote public SSH key to \/etc\/ceph\/ceph.pub<br>Adding key to root@localhost authorized_keys\u2026<br>Adding host cephtest01\u2026<br>Deploying mon service with default placement\u2026<br>Deploying mgr service with default placement\u2026<br>Deploying crash service with default placement\u2026<br>Deploying ceph-exporter service with default placement\u2026<br>Deploying prometheus service with default placement\u2026<br>Deploying grafana service with default placement\u2026<br>Deploying node-exporter service with default placement\u2026<br>Deploying alertmanager service with default placement\u2026<br>Enabling the dashboard module\u2026<br>Waiting for the mgr to restart\u2026<br>Waiting for mgr epoch 9\u2026<br>mgr epoch 9 is available<br>Generating a dashboard self-signed certificate\u2026<br>Creating initial admin user\u2026<br>Fetching dashboard port number\u2026<br>Ceph Dashboard is now available at:<\/p>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code>            URL: https:\/\/cephtest01:8443\/\n            User: admin\n        Password: jba2v2zr5h\n\nEnabling client.admin keyring and conf on hosts with \"admin\" label\nSaving cluster configuration to \/var\/lib\/ceph\/00468a4c-57da-11f0-8985-506b8db0fed8\/config directory\nEnabling autotune for osd_memory_target\nYou can access the Ceph CLI as following in case of multi-cluster or non-default config:\n\n        sudo \/usr\/sbin\/cephadm shell --fsid 00468a4c-57da-11f0-8985-506b8db0fed8 -c \/etc\/ceph\/ceph.conf -k \/etc\/ceph\/ceph.client.admin.keyring\n\nOr, if you are only running a single cluster on this host:\n\n        sudo \/usr\/sbin\/cephadm shell \n\nPlease consider enabling telemetry to help improve Ceph:\n\n        ceph telemetry on\n\nFor more information see:\n\n        https:&#47;&#47;docs.ceph.com\/en\/latest\/mgr\/telemetry\/\n\nBootstrap complete.<\/code><\/pre>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">&#8211; \uc124\uce58 \ud6c4, \ucee8\ud14c\uc774\ub108 \uc0c1\ud0dc. \uc544\uc9c1 bootstrap \uc11c\ubc84\uc5d0\uc11c\ub9cc \ud655\uc778\uac00\ub2a5.<br> \ubc30\ud3ec\ub418\uace0 \ub098\uba74 \/etc\/ceph\/\uc544\ub798 \ud30c\uc77c\uc774 \uc0dd\uc131\ub428. \/etc\/ceph\/ceph.conf, \/etc\/ceph\/ceph.pub, \/etc\/ceph\/ceph.client.admin.keyring \ub4f1.<br>ceph -s \uba85\ub839\uc5b4\ub85c \uc0c1\ud0dc\ud655\uc778. (cephadm shell\uc5d0\uc11c \uac00\ub2a5)<br><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"140\" src=\"http:\/\/www.iwgh.my\/wp-content\/uploads\/2025\/07\/image-1024x140.png\" alt=\"\" class=\"wp-image-581\" srcset=\"https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-1024x140.png 1024w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-300x41.png 300w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-768x105.png 768w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-1536x210.png 1536w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-1000x137.png 1000w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-230x31.png 230w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-350x48.png 350w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-480x66.png 480w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image.png 1661w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">3. \ub2e4\ub978 node \ucd94\uac00, ceph\uc758 \uacbd\uc6b0 replication set\uc774 \ucd5c\uc18c 3\uc744 \uad8c\uc7a5\ud558\ubbc0\ub85c 3\uac1c\uc774\uc0c1\uc758 node\uc5d0 \ubc30\ud3ec\ud558\ub294 \uac83\uc744 \uad8c\uc7a5.<br>  3.1. \ubc30\ud3ec\ub178\ub4dc\uc5d0\uc11c bootstrap\ub85c \uc0dd\uc131\ub41c pub key\ub97c \uac01 node\uc5d0 \ubcf5\uc0ac<br>   # ssh-copy-id -f -i \/etc\/ceph\/ceph.pub root@10.10.10.192 ;; \ubc30\ud3ec\ud560 node IP<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<pre class=\"wp-block-code has-small-font-size\"><code>&#91;root@cephtest01 ~]# ssh-copy-id -f -i \/etc\/ceph\/ceph.pub root@10.10.10.192\n\/usr\/bin\/ssh-copy-id: INFO: Source of key(s) to be installed: \"\/etc\/ceph\/ceph.pub\"\nThe authenticity of host '10.10.10.192 (10.10.10.192)' can't be established.\nED25519 key fingerprint is SHA256:4RR1aWJ25aMcAv609P6YAA5\/fsBRB+4dnINZCHziaeY.\nThis key is not known by any other names\nAre you sure you want to continue connecting (yes\/no\/&#91;fingerprint])? yes\nroot@10.10.10.192's password: \nPermission denied, please try again.\nroot@10.10.10.192's password: \n\nNumber of key(s) added: 1\n\nNow try logging into the machine, with:   \"ssh 'root@10.10.10.192'\"\nand check to make sure that only the key(s) you wanted were added.\n\n&#91;root@cephtest01 ~]# ssh-copy-id -f -i \/etc\/ceph\/ceph.pub root@10.10.10.193\n\/usr\/bin\/ssh-copy-id: INFO: Source of key(s) to be installed: \"\/etc\/ceph\/ceph.pub\"\nThe authenticity of host '10.10.10.193 (10.10.10.193)' can't be established.\nED25519 key fingerprint is SHA256:4RR1aWJ25aMcAv609P6YAA5\/fsBRB+4dnINZCHziaeY.\nThis host key is known by the following other names\/addresses:\n    ~\/.ssh\/known_hosts:1: 10.10.10.192\nAre you sure you want to continue connecting (yes\/no\/&#91;fingerprint])? yes\nroot@10.10.10.193's password: \n\nNumber of key(s) added: 1\n\nNow try logging into the machine, with:   \"ssh 'root@10.10.10.193'\"\nand check to make sure that only the key(s) you wanted were added.<\/code><\/pre>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">  3.2. ceph node \ucd94\uac00. <strong> !! ceph cluster \uad00\ub828\ub41c \uba85\ub839\uc5b4\ub294 \ubc30\ud3ec\ub41c ceph cluster\uc5d0\uc11c \ud574\uc57c\ub428.<\/strong><br>   # cephadm shell &#8211;fsid ceph-cluster-fsid -c \/etc\/ceph\/ceph.conf -k \/etc\/ceph\/ceph.client.admin.keyring<br>   -&gt; cephadm shell \ub610\ub294 \uc0c1\uae30 fsid, config, keyring \ud30c\uc77c \uc9c0\uc815\ud558\uc5ec ceph shell \uc9c4\uc785\ud558\uc5ec \uc2e4\ud589<br>   (fsid\ub294 ceph -s \ub610\ub294 ceph.conf \uc5d0\uc11c \ud655\uc778)<br>   <strong>[ceph: <\/strong>root@cephtest01 \/]# -&gt; cephadm shell \uc2e4\ud589\uc2dc \ud504\ub86c\ud504\ud130 \uc55e\uc5d0 ceph: \uc774 \ubd99\uc74c.<br> <br>  &#8211; ceph orch host add \uba85\ub839\uc5b4\ub85c host add, add\ub418\uba74 \ucee8\ud14c\uc774\ub108\ub97c \ud1b5\ud574 ceph cluster \uad6c\uc131\uc694\uc18c\ub97c \ubc30\ud3ec.<br>   [ceph: root@cephtest01 \/]# ceph orch host add cephtest02 10.10.10.192<br>   Added host &#8216;cephtest02&#8217; with addr &#8216;10.10.10.192&#8217;<br>   [ceph: root@cephtest01 \/]# ceph orch host add cephtest03 10.10.10.193<br>   Added host &#8216;cephtest03&#8217; with addr &#8216;10.10.10.193&#8217;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">4. Disk\ub97c OSD\ub85c \ucd94\uac00 \ubc0f cephfs \uc0dd\uc131, mount<br>  &#8211; physical disk\ub97c OSD \ub85c \ucd94\uac00, data pool, metadata pool \uc0dd\uc131, ceph fs \uc0dd\uc131, mount<br>  4.1. OSD\ub85c \uc0ac\uc6a9\uac00\ub2a5\ud55c disk \ud655\uc778<br>   cephadm shell\uc5d0\uc11c # ceph orch device ls <strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">(\uc774\ud6c4 cephadm shell\uc5d0\uc11c \uc2e4\ud589\uae30\uc900.)<\/mark><\/strong><br>   \ub610\ub294 <br>   # cephadm shell &#8212; ceph orch device ls<br>  !! OSD \uc0dd\uc131\uc774\ud6c4 ls\ud574\uc11c AVAILABLE\uc5d0 yes\ub77c\uace0 \ub098\uc624\uc9c0 \uc54a\uc74c. OSD \uc0ac\uc6a9\uac00\ub2a5\ud558\uba74 AVAILABLE &#8220;Yes&#8221;\ub85c \ud45c\uae30.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"148\" src=\"http:\/\/www.iwgh.my\/wp-content\/uploads\/2025\/07\/image-2-1024x148.png\" alt=\"\" class=\"wp-image-586\" srcset=\"https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-2-1024x148.png 1024w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-2-300x43.png 300w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-2-768x111.png 768w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-2-1000x145.png 1000w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-2-230x33.png 230w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-2-350x51.png 350w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-2-480x69.png 480w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-2.png 1355w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">  4.2. reef, cephadm\uc758 \uacbd\uc6b0 OSD\ub97c \uac1c\ubcc4\uc801\uc73c\ub85c \ub123\uc9c0 \uc54a\uace0 \uc815\ucc45\uc73c\ub85c OSD \uc0dd\uc131<br>   # ceph orch apply osd &#8211;all-available-devices<br>   ;; \uc0ac\uc6a9\uac00\ub2a5\ud55c \ubaa8\ub4e0 \ub514\uc2a4\ud06c\ub97c OSD\ub85c \uc790\ub3d9 \uc0ac\uc6a9.<br>  !!! ceph orch apply osd cephtest02:\/dev\/sdb -&gt; device ls\uc5d0\uc11c \ub098\uc628 host\/path\ub97c \uc774\uc6a9\ud574 \uac1c\ubcc4\uc9c0\uc815.<br>   \ub610\ub294 &#8211;format \ub97c \uc0ac\uc6a9\ud558\uc5ec \ud2b9\uc815 \ub178\ub4dc, \ud2b9\uc815 path, \ud2b9\uc815 type\ub3c4 \uac00\ub2a5.<br><br>   ceph osd df \/ ceph osd tree \ub4f1\uc73c\ub85c OSD \uc0c1\ud0dc \ud655\uc778 \uac00\ub2a5.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"771\" height=\"381\" src=\"http:\/\/www.iwgh.my\/wp-content\/uploads\/2025\/07\/image-3.png\" alt=\"\" class=\"wp-image-588\" srcset=\"https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-3.png 771w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-3-300x148.png 300w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-3-768x380.png 768w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-3-230x114.png 230w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-3-350x173.png 350w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-3-480x237.png 480w\" sizes=\"auto, (max-width: 771px) 100vw, 771px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">5. cephfs \uc0dd\uc131 \ubc0f \ub9c8\uc6b4\ud2b8<br>  5.1. bootstrap node\uc5d0\uc11c cephadm shell\uc5d0\uc11c data pool, metadata pool \uc0dd\uc131<br>   # ceph osd pool create cephfs_data 3<br>   (&#8216;cephfs_data&#8217; \ud480, \ubcf5\uc81c\ubcf8 3\uac1c, DATA\ub294 \ubcf5\uc81c\ubcf8 2\uac1c \uc774\uc0c1)<br>   # ceph osd pool create cephfs_metadata 3<br>   (&#8216;cephfs_metadata&#8217; \ud480, \ubcf5\uc81c\ubcf8 3\uac1c, metadata\ub294 \ubcf5\uc81c\ubcf8 3\uac1c \uc774\uc0c1)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><br>  5.2. ceph fs \uc0dd\uc131, \uc2e4\uc81c \ub9c8\uc6b4\ud2b8\ub418\ub294 fs<br>   # ceph fs new cephfs cephfs_metadata cephfs_data  <br>   (ceph fs new &lt;fs_name&gt; &lt;metadata_pool_name&gt; &lt;data_pool_name&gt;  <\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"has-small-font-size wp-block-paragraph\"># ceph fs new cephfs cephfs_metadata cephfs_data<\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\">Pool &#8216;cephfs_data&#8217; (id &#8216;2&#8217;) has pg autoscale mode &#8216;on&#8217; but is not marked as bulk.<br>Consider setting the flag by running<br>    # ceph osd pool set cephfs_data bulk true<br>new fs with metadata pool 3 and data pool 2<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">  5.3. mds (Metadata Server) \uc0dd\uc131 <br>  (<strong>\ud30c\uc77c \uc774\ub984, \ub514\ub809\ud130\ub9ac \ud2b8\ub9ac, \uc811\uadfc \uad8c\ud55c, \uc2ec\ubcfc\ub9ad \ub9c1\ud06c \ub4f1\uc758 \uba54\ud0c0\ub370\uc774\ud130\ub97c \ub2f4\ub2f9<\/strong>\ud558\ub294 \uc11c\ubc84, <br>  \ud30c\uc77c\uc774 \uc5b4\ub514\uc5d0 \uc800\uc7a5\ub418\ub294\uc9c0 \uc54c\ub824\uc90c.)<br>   # ceph orch apply mds cephfs<br>   Scheduled mds.cephfs update&#8230;<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">  !! mds\uc758 \uac1c\uc218\ub294 max_mds \uac12\uacfc mds \ubc30\ud3ec \uba85\ub839\uc5b4\ub85c \uc870\uc815.<br>  max_mds \uac12\uc740 active mds\uc758 \uac12. Default\ub85c \uc704\uc640\uac19\uc774 \ubc30\ud3ec\ud558\uba74 1 active + 1 standby, max_mds \uac12\uc740 1.<br>  mds\ub97c \ub354 \ub123\uc5b4\uc11c mds \ubd84\uc0b0\uc744 \ud558\uace0 \uc2f6\ub2e4\uba74 max_mds\ub97c \uc218\uc815\ud558\uace0 \ucd94\uac00\ub85c \ubc30\ud3ec \ud544\uc694.<br>  \ub2e8. standby mds\uac00 1\uac1c\ub3c4 \uc5c6\uc73c\uba74 \uacbd\uace0\ub098\uc634.(max 2\uac1c \ubc30\ud3ec\ub3c4 2\uac1c\uba74 active\ub9cc 2\uac1c \ub418\ub108 \uacbd\uace0.)<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"has-small-font-size wp-block-paragraph\">max_mds \uc218\uc815 <br>(mds 3\uac1c \ubc30\ud3ec\ud558\uace0 max_mds \uac00 1\uc774\uba74 active 1\/standby 2\uac1c\ub85c \uc790\ub3d9 \uc870\uc815\ub428. max_mds 2\uc774\uba74 active 2\/standby 1\uac1c\ub85c \uc790\ub3d9 \uc870\uc815)<br>  [ceph: root@cephtest01 \/]# ceph fs set cephfs max_mds 1<br><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\">mds \ubc30\ud3ec (\uac1c\uc218 \ub610\ub294 node)<br>  [ceph: root@cephtest01 \/]# ceph orch apply mds cephfs &#8211;placement=&#8221;cephtest01 cephtest02 cephtest03&#8243;<br>  Scheduled mds.cephfs update\u2026<br>\ub610\ub294<br>  [ceph: root@cephtest01 \/]# ceph orch apply mds cephfs &#8211;placement=&#8221;3&#8243;<br>  Scheduled mds.cephfs update\u2026<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">  \uc804\uccb4 \ub0b4\uc6a9 \ud655\uc778 ceph -s \ub85c \ud655\uc778 \uac00\ub2a5. <\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"has-small-font-size wp-block-paragraph\">[ceph: root@cephtest01 \/]# ceph -s<br>cluster:<br>id: 00468a4c-57da-11f0-8985-506b8db0fed8<br>health: HEALTH_OK<br>services:<br>    mon: 3 daemons, quorum cephtest01,cephtest02,cephtest03 (age 23m)<br>    mgr: cephtest01.qwcvel(active, since 49m), standbys: cephtest02.jgcctu<br>    mds: 1\/1 daemons up, 1 standby<br>    osd: 6 osds: 6 up (since 23m), 6 in (since 24m)<br><br>data:<br>    volumes: 1\/1 healthy<br>    pools:   3 pools, 65 pgs<br>    objects: 24 objects, 579 KiB<br>    usage:   197 MiB used, 600 GiB \/ 600 GiB avail<br>    pgs:     65 active+clean<br><br>[ceph: root@cephtest01 \/]# ceph fs ls<br>name: cephfs, metadata pool: cephfs_metadata, data pools: [cephfs_data ]<br><br>[ceph: root@cephtest01 \/]# ceph fs status<br>cephfs &#8211; 0 clients<br>======<br>RANK STATE MDS ACTIVITY DNS INOS DIRS CAPS<br>0 active cephfs.cephtest03.wkggmh Reqs: 0 \/s 10 13 12 0<br>POOL TYPE USED AVAIL<br>cephfs_metadata metadata 96.0k 189G<br>cephfs_data data 0 189G<br>STANDBY MDS<br>cephfs.cephtest01.anylgd<br>MDS version: ceph version 18.2.7 (6b0e988052ec84cf2d4a54ff9bbbc5e720b621ad) reef (stable)<br><br>!! mds \ubc30\ud3ec\uac1c\uc218 2\uac1c\ub85c \ub298\ub9ac\uae30<br>[ceph: root@cephtest01 \/]# ceph fs set cephfs max_mds 2<br>[ceph: root@cephtest01 \/]# ceph -s<br>cluster:<br>id: 00468a4c-57da-11f0-8985-506b8db0fed8<br>health: HEALTH_WARN<br>insufficient standby MDS daemons available<\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\">services:<br>mon: 3 daemons, quorum cephtest01,cephtest02,cephtest03 (age 18h)<br>mgr: cephtest01.qwcvel(active, since 19h), standbys: cephtest02.jgcctu<br>mds: 2\/2 daemons up<br>osd: 6 osds: 6 up (since 18h), 6 in (since 18h)<\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\">data:<br>volumes: 1\/1 healthy<br>pools: 3 pools, 65 pgs<br>objects: 24 objects, 579 KiB<br>usage: 251 MiB used, 600 GiB \/ 600 GiB avail<br>pgs: 65 active+clean<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">6. \ud30c\uc77c\uc2dc\uc2a4\ud15c \ub9c8\uc6b4\ud2b8<br>  6.1. \ub9c8\uc6b4\ud2b8\ub97c \uc704\ud574\uc11c\ub294 &#8220;ceph-common&#8221; \uad6c\uc131\uc694\uc18c\uac00 \ud544\uc694\ud558\ub2e4. (mount \ud544\uc694\ud55c \ubaa8\ub4e0 node.)<br>  Rocky9 \ud658\uacbd\uc5d0\uc11c \uc758\uc874\uc131 \ubb38\uc81c\ub85c &#8211;nobest \uc635\uc158\uc73c\ub85c \uc124\uce58\ud568. (\uc791\ub3d9\ud14c\uc2a4\ud2b8 \uc815\uc0c1)<br>   [root@cephtest02 ~]# dnf install ceph-common &#8211;nobest<br><br>  6.2. ceph.conf \ud30c\uc77c \ubc0f \uc778\uc99d keyring \ud30c\uc77c clients\ub85c \ubcf5\uc0ac<br>  \uc778\uc99d keyring\uc758 \uacbd\uc6b0 \uae30\ubcf8 admin keyring\ub97c \uc0ac\uc6a9\ud560 \uc218\ub3c4 \uc788\uc73c\ub098, ceph cluster\uc758 \ubaa8\ub4e0 \uad8c\ud55c\uc744 \uac00\uc9c0\ubbc0\ub85c<br>  \uac00\ub2a5\ud558\uba74 \ubcc4\ub3c4 \uad8c\ud55c\uc81c\ud55c\ud0a4\ub97c \uc0ac\uc6a9\ud558\uc5ec \ub9c8\uc6b4\ud2b8.<br>  \ud0a4\uc0dd\uc131<br>   # ceph auth get-or-create client.<strong>cephfsuser <\/strong>mon &#8216;allow r&#8217; mds &#8216;allow r, allow rw path=\/&#8217; osd &#8216;allow rw pool=<strong>cephfs_data<\/strong>, allow rwx pool=<strong>cephfs_metadata<\/strong>&#8216; &gt; ceph.client.<strong>cephfsuser<\/strong>.keyring<br>   ;; cephfsuser (\uc720\uc800\uc9c0\uc815), data pool\uc740 rw, metadata pool\uc740 rwx, \ud0a4 \uc774\ub984\uc740 ceph.client.&lt;username&gt;.keyring\ub85c \uac01 clients\uc758 \/etc\/ceph\/ \uc544\ub798 \uc704\uce58.<br>   # chmod 600 ceph.client.cephfsuser.keyring<br>   # mv ceph.client.cephfsuser.keyring \/etc\/ceph\/ceph.client.cephfsuser.keyring<br>   \ud0a4 \ubc0f \uc124\uc815 \ubcf5\uc0ac<br>   # scp \/etc\/ceph\/ceph.conf 10.10.10.192:\/etc\/ceph\/ceph.conf<br>   # scp \/etc\/ceph\/ceph.client.cephfsuser.keyring 10.10.10.192:\/etc\/ceph\/ceph.client.cephfsuser.keyring<br><br>  6.3. mount.ceph\ub97c \ud1b5\ud574 \ub9c8\uc6b4\ud2b8 (mount -t ceph \ub3c4 \uac00\ub2a5\ud558\ub098 \uc635\uc158\uc774 \uc0c1\uc774\ud568)<br>   # mount.ceph cephfsuser@.cephfs=\/ \/cephfs<br>   ;; mount.ceph &lt;username&gt;@.&lt;ceph_fs_name&gt;=&lt;dir&gt; &lt;mount_point&gt;<br>   ;; &lt;dir&gt;\uc744 &#8220;\/&#8221;\ub85c \ud558\uba74 \uc804\uccb4 cephfs \ub9c8\uc6b4\ud2b8, \ud558\uc704\ub514\ub809\ud1a0\ub9ac \ubcc4\ub3c4 \ub9c8\uc6b4\ud2b8\ub3c4 \uac00\ub2a5.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"has-small-font-size wp-block-paragraph\">[root@cephtest01 ~]# mount.ceph cephfsuser@.cephfs=\/ \/cephfs<br>[root@cephtest01 ~]# df -h<br>Filesystem Size Used Avail Use% Mounted on<br>devtmpfs 4.0M 0 4.0M 0% \/dev<br>tmpfs 7.7G 100K 7.7G 1% \/dev\/shm<br>tmpfs 3.1G 178M 2.9G 6% \/run<br>\/dev\/mapper\/rl-root 100G 8.1G 92G 9% \/<br>\/dev\/sda2 436M 413M 24M 95% \/boot<br>tmpfs 1.6G 52K 1.6G 1% \/run\/user\/42<br>tmpfs 1.6G 36K 1.6G 1% \/run\/user\/0<br>overlay 100G 8.1G 92G 9% \/var\/lib\/containers\/storage\/overlay\/8aecd5bb54c78897521030679dd692b88aa74c39e783a6c8897e2d77fc2dc33a\/merged<br>overlay 100G 8.1G 92G 9% \/var\/lib\/containers\/storage\/overlay\/458f5f9b878af138d8e5ead078b316bb6ae8aaa92e75f5c320d5fdf031923b90\/merged<br>overlay 100G 8.1G 92G 9% \/var\/lib\/containers\/storage\/overlay\/fd6a1c01f8f3e83b0f0fb4145c38fc52f3c85ba847a0084ec51be32655f31ae7\/merged<br>overlay 100G 8.1G 92G 9% \/var\/lib\/containers\/storage\/overlay\/6176bc236bb42b08b63be48041ae7332fc247b2dd49420c3a380d34509504f19\/merged<br>overlay 100G 8.1G 92G 9% \/var\/lib\/containers\/storage\/overlay\/b96fd2e91ec678f7a34c24cc6d7c51617938a69fd735dff7deafbbd194849338\/merged<br>overlay 100G 8.1G 92G 9% \/var\/lib\/containers\/storage\/overlay\/79977ae8d4b6cc8c958a8445366e056ef039ac5cc048d0adec3e3a6b9a553198\/merged<br>overlay 100G 8.1G 92G 9% \/var\/lib\/containers\/storage\/overlay\/db4ac1084218bd2c0fd54a8382fd4d446a6c0c7fa0ca1efb84c3b56909f15522\/merged<br>overlay 100G 8.1G 92G 9% \/var\/lib\/containers\/storage\/overlay\/eef64fb45b4f7750bc1004c99ef750217e8d055eeb9e9d8329251d4eee25a753\/merged<br>overlay 100G 8.1G 92G 9% \/var\/lib\/containers\/storage\/overlay\/ed87435c471c4a3b686566d6b58176ddd60668ca80f09128812092fadb744e03\/merged<br>overlay 100G 8.1G 92G 9% \/var\/lib\/containers\/storage\/overlay\/06aef07d5d0f259e1485b8ee9580ea4a9c9a66187ea79a75fe45af3c31f5159c\/merged<br>overlay 100G 8.1G 92G 9% \/var\/lib\/containers\/storage\/overlay\/73efe72defdd883e5361446d4f36772bb9bef1eaa829e23fbfe0a1d7436d572d\/merged<br>overlay 100G 8.1G 92G 9% \/var\/lib\/containers\/storage\/overlay\/6a56c658b5a9929399ba8a91234f13e1e783f2e76b5d108d57a8368d3018f737\/merged<br>cephfsuser@00468a4c-57da-11f0-8985-506b8db0fed8.cephfs=\/ 190G 0 190G 0% \/cephfs<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">   !! \/etc\/fstab\uc5d0 \ud3ec\ud568\ud558\uc5ec \ubd80\ud305\uc2dc \ub9c8\uc6b4\ud2b8<br>     # vi \/etc\/fstab<br>     # ceph fs mount<br>     cephfsuser@00468a4c-57da-11f0-8985-506b8db0fed8.cephfs=\/ \/cephfs ceph name=cephfsuser,_netdev 0 2<br>    \ub610\ub294<br>    10.10.10.191:6789:\/ \/cephfs ceph name=cephfsuser,_netdev 0 2<br>    !! \ub450\uac00\uc9c0 \ubaa8\ub450 \ub9c8\uc6b4\ud2b8 \ud655\uc778, FSID\ub97c \uc774\uc6a9\ud558\ub294 \uac83\uc774 \ub354 \uc548\uc815\uc801\uc73c\ub85c \ubcf4\uc784.<br>    \ubcc0\uacbd \ud6c4, systemctl daemon-reload \ub85c fstab \uc124\uc815 \uc77d\uae30 \ud544\uc694. <br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">** \uacb0\ub860 !!<br>\uac04\ub2e8\ud55c \uc131\ub2a5<br>NFS\ub85c \ub9c8\uc6b4\ud2b8\ub41c \ub514\uc2a4\ud06c\uc640 \ube44\uc2b7\ud55c \uc131\ub2a5. (\ub124\ud2b8\uc6cc\ud06c 1G\uc758 \ud55c\uacc4?)<br>\ubcf5\uc0ac\uc911\uc5d0 CPU \uc0ac\uc6a9\ub7c9 10~20%\uc99d\uac00, \uba54\ubaa8\ub9ac \uc0ac\uc6a9\ub7c9\uc740 ceph \uc124\uc815\uc644\ub8cc \ud6c4 \ud070 \ubcc0\ud654\uc5c6\uc74c.<br>\ub85c\uceec \ub514\uc2a4\ud06c \ubcf5\uc0ac \uc131\ub2a5\uacfc \ube44\uad50\ud558\uace0 \uc2f6\uc5c8\uc73c\ub098, HCI\ub97c \uc0ac\uc6a9\ud574 VM\uc73c\ub85c \ud14c\uc2a4\ud2b8\ud55c \uad00\uacc4\ub85c \ub85c\uceec \ub514\uc2a4\ud06c \ubcf5\uc0ac\ub294 \ub85c\ub4dc\uac00 \uac70\uc758 \uac78\ub9ac\uc9c0 \uc54a\uc74c. HCI dedup\uc758 \uc601\ud5a5\uc73c\ub85c \ubcf4\uc784.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"529\" src=\"http:\/\/www.iwgh.my\/wp-content\/uploads\/2025\/07\/image-1-1024x529.png\" alt=\"\" class=\"wp-image-583\" srcset=\"https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-1-1024x529.png 1024w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-1-300x155.png 300w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-1-768x397.png 768w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-1-1536x793.png 1536w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-1-1000x516.png 1000w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-1-230x119.png 230w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-1-350x181.png 350w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-1-480x248.png 480w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-1.png 1679w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">!! 1\uac1c node rebooting \uc2dc \ud558\uae30\uc640 \uac19\uc740 \uc0c1\ud0dc.<br>  \ud2b9\uc774\uc0ac\ud56d\uc73c\ub85c\ub294 1\uac1c node\uac00 \uc8fd\uc740 \uc0c1\ud0dc\uc5d0\uc11c copy \uc18d\ub3c4\uac00 \ub354 \ube60\ub984. \uc57d 1\/2. \ubcf5\uc81c\ud574\uc57c\ud560 \uac1c\uc218\uac00 3\uac1c\uc5d0\uc11c 2\uac1c\ub85c \uc904\uc5b4\uc11c \uc77c\uc2dc\uc801\uc73c\ub85c \uc18d\ub3c4\uac00 \ube68\ub77c\uc9c0\ub294 \uac83\uc73c\ub85c \ucd94\uc815. \ub178\ub4dc \ubcf5\uad6c\ud6c4 \ubc31\uadf8\ub77c\uc6b4\ub4dc \ubcf5\uc81c \uc791\uc5c5\uc774 \ubc1c\uc0dd\ud560 \uac83\uc73c\ub85c \uc608\uc0c1.<br>\ub2e4\uc218\uc758 \ud14c\uc2a4\ud2b8\uac00 \uc544\ub2c8\uae30 \ub54c\ubb38\uc5d0 \ucc38\uc870.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"has-small-font-size wp-block-paragraph\">[root@cephtest01 log]# ceph -s<br>cluster:<br>id: 00468a4c-57da-11f0-8985-506b8db0fed8<br>health: HEALTH_WARN<br>insufficient standby MDS daemons available<br>1\/3 mons down, quorum cephtest01,cephtest02<br>2 osds down<br>1 host (2 osds) down<br>Degraded data redundancy: 1608\/30900 objects degraded (5.204%), 14 pgs degraded<\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\">services:<br>mon: 3 daemons, quorum cephtest01,cephtest02 (age 6s), out of quorum: cephtest03<br>mgr: cephtest01.qwcvel(active, since 4d), standbys: cephtest02.jgcctu<br>mds: 2\/2 daemons up<br>osd: 6 osds: 4 up (since 5s), 6 in (since 4d)<\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\">data:<br>volumes: 1\/1 healthy<br>pools: 3 pools, 65 pgs<br>objects: 10.30k objects, 40 GiB<br>usage: 122 GiB used, 478 GiB \/ 600 GiB avail<br>pgs: 1608\/30900 objects degraded (5.204%)<br>35 active+clean<br>15 stale+active+clean<br>14 active+undersized+degraded<br>1 active+undersized<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">7. PG \uac1c\uc218 (ceph\uc758 \uacbd\uc6b0 fs\/block\/object \ubaa8\ub450 \uacb0\ub860\uc801\uc73c\ub85c object(\ub370\uc774\ud130\uac1d\uccb4)\ub85c \uc800\uc7a5\ub41c\ub2e4. \uc774 object\uc758 \ubc30\uce58\uadf8\ub8f9\uc774 PG(Placement Group).<br>-> client\uac00 \uc800\uc7a5\ud558\ub294 \ubaa8\ub4e0 object\ub294 PG\ub2e8\uc704\ub85c \uadf8\ub8f9\ud654\ub418\uc5b4 \uad00\ub9ac \ub428. CRUSH MAP\uc5d0 \uc758\ud574 \uac01 OSD\uc5d0 \ubd84\uc0b0 \uc800\uc7a5.<br>-> Pool\uc5d0\uc11c \uc774 PG\uc758 \uac1c\uc218\ub294 \uc131\ub2a5\uc5d0 \ud070 \uc601\ud5a5\uc744 \ubbf8\uce58\uba70 \uac1d\uccb4 \uc22b\uc790, OSD \uc22b\uc790\uc5d0 \ub530\ub77c \uc9c0\uc815\ud574\uc57c \uc131\ub2a5\ud5a5\uc0c1\uc774 \uac00\ub2a5\ud558\ub2e4. OSD\ub2f9 100-200\uc0ac\uc774\uac00 \uc801\ub2f9\ud558\ub2e4\uace0 \ud568.<br>\ucc38\uc870 : <a href=\"https:\/\/docs.redhat.com\/en\/documentation\/red_hat_ceph_storage\/3\/html\/storage_strategies_guide\/index\">https:\/\/docs.redhat.com\/en\/documentation\/red_hat_ceph_storage\/3\/html\/storage_strategies_guide\/index<\/a> <br>\uc758 PGs \ubd80\ubd84 \ucc38\uc870.<br>\uacc4\uc0b0\uae30 : <a href=\"https:\/\/docs.redhat.com\/en\/documentation\/red_hat_ceph_storage\/3\/html\/storage_strategies_guide\/placement_groups_pgs#pg_calculator\">https:\/\/docs.redhat.com\/en\/documentation\/red_hat_ceph_storage\/3\/html\/storage_strategies_guide\/placement_groups_pgs#pg_calculator<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">!! reef \ubc84\uc804\uc5d0\uc11c\ub294 autoscale \uc9c0\uc6d0 pg\ub97c \uc790\ub3d9\uc73c\ub85c \ub298\ub9ac\uac70\ub098 \uc904\uc784.<br>\ud655\uc778 \uba85\ub839\uc5b4.<br>[ceph: root@cephtest01 \/]# ceph osd pool autoscale-status<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"989\" height=\"80\" src=\"http:\/\/www.iwgh.my\/wp-content\/uploads\/2025\/07\/image-5.png\" alt=\"\" class=\"wp-image-605\" srcset=\"https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-5.png 989w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-5-300x24.png 300w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-5-768x62.png 768w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-5-230x19.png 230w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-5-350x28.png 350w, https:\/\/iwgh.duckdns.org\/wp-content\/uploads\/2025\/07\/image-5-480x39.png 480w\" sizes=\"auto, (max-width: 989px) 100vw, 989px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">pg \ubc0f pgp \ud655\uc778 (ceph osd pool POOLNAME pg_num)<br>pg : pool\uc5d0 \uc0dd\uc131\ub418\uc5b4 \uc788\ub294 pg\uc758 \ucd1d\uac1c\uc218.<br>pgp : CRUSH \uc54c\uace0\ub9ac\uc998\uc774 \uc2e4\uc81c\ub85c OSD\uc5d0 \ub9e4\ud551\ud560 \ub54c \uc0ac\uc6a9\ud558\ub294 PG \uc218.<br>;; \ub450 \uac1c\uac00 \ubcf4\ud1b5\uc740 \ub3d9\uc77c.<br><br>[ceph: root@cephtest01 \/]# ceph osd pool get cephfs_data pg_num<br>pg_num: 32<br>[ceph: root@cephtest01 \/]# ceph osd pool get cephfs_data pgp_num<br>pgp_num: 32<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">CEPHFS\/Object\/Block Service \uc81c\uacf5.<br>RBD (RADOS Block Device) ; block device\ub97c ceph RADOS\uc5d0 \uc5f0\uacb0<br>RGW (RADOS Gateway) ; client object \uc811\uadfc\uc744 ceph RADOS\uc5d0 \uc5f0\uacb0<br>MDS(Metadata Server) ; cephfs client\ub97c ceph RADOS\uc5d0 \uc5f0\uacb0<br>MON (Monitor)<br>MGR (Manager)<br>librados ; RADOS\uc5d0 \uc811\uadfc\ud558\uae30 \uc704\ud55c \ub77c\uc774\ube0c\ub7ec\ub9ac, cephfs\ub294 MDS\ub97c \ud1b5\ud574 RADOS\uc5d0 \uc9c1\uc811 \uc811\uadfc \uac00\ub2a5<br>RADOS(Reliable Autonomic Distributed Object Store) ; CRUSH \uc54c\uace0\ub9ac\uc998\uc744 \ud1b5\ud574 \ub370\uc774\ud130 object\ub97c PG-OSD \uc5d0 \ubd84\uc0b0\uc800\uc7a5\ud558\ub294 Ceph \ud575\uc2ec \uc544\ud0a4\ud14d\uccd0, api\ub97c \uc81c\uc678\ud55c \ub300\ubd80\ubd84\uc758 ceph \uad6c\uc131\uc694\uc18c\uac00 \uc5ec\uae30\uc5d0 \uc18d\ud568. <br>CRUSH Map(Controlled Replication Under Scalable Hashing) ; \ub370\uc774\ud130 \ubd84\uc0b0 \uc54c\uace0\ub9ac\uc998<br>PG(Placement Group) ; \ub370\uc774\ud130 object \uc758 \ubb36\ub294 \ub17c\ub9ac\ub2e8\uc704, PG \ub2e8\uc704\ub85c OSD\uc5d0 \ubd84\uc0b0\uc800\uc7a5<br>PGP(Placement Group for Placement) ; OSD\uc5d0 \ubb3c\ub9ac\uc801\uc73c\ub85c \ub9e4\ud551\ub418\ub294 PG \uac1c\uc218(pgp\ub294 pg\ubcf4\ub2e4 \ud074 \uc218 \uc5c6\uc74c.)<br>OSD(Object Storage Daemon)<br><br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>!! ceph reef \ubc84\uc804\ubd80\ud130\ub294 cephadm\uc744 \uc81c\uacf5\ud558\uc5ec \uad00\ub9ac\uba74\uc5d0\uc11c \ud3b8\uc758\uc131\uc744 \uc81c\uacf5. \ubc30\ud3ec\ub294 \ubaa8\ub450 Container\ub97c \ud1b5\ud574 \ubc30\ud3ec\ub418\uba70 \uc791\ub3d9 \uc5ed\uc2dc \ub9c8\ucc2c\uac00\uc9c0\ub85c \ucee8\ud14c\uc774\ub108\uae30\ubc18. 1. \uc0ac\uc804\ud655\uc778\uc0ac\ud56d 1.1. dnf update.(OS current \ubc84\uc804 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":601,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[117,10,11,200,162],"class_list":["post-580","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tech","tag-config","tag-install","tag-linux","tag-osd","tag-rocky"],"_links":{"self":[{"href":"https:\/\/iwgh.duckdns.org\/index.php?rest_route=\/wp\/v2\/posts\/580","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/iwgh.duckdns.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/iwgh.duckdns.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/iwgh.duckdns.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/iwgh.duckdns.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=580"}],"version-history":[{"count":17,"href":"https:\/\/iwgh.duckdns.org\/index.php?rest_route=\/wp\/v2\/posts\/580\/revisions"}],"predecessor-version":[{"id":608,"href":"https:\/\/iwgh.duckdns.org\/index.php?rest_route=\/wp\/v2\/posts\/580\/revisions\/608"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/iwgh.duckdns.org\/index.php?rest_route=\/wp\/v2\/media\/601"}],"wp:attachment":[{"href":"https:\/\/iwgh.duckdns.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=580"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/iwgh.duckdns.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=580"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/iwgh.duckdns.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=580"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}