پیوست و
کتابنامه و منابع رسمی
این کتابنامه همهی منابعی را که در بخشهای «منابع این فصل» آمدهاند، بههمراه منابع عمومی، یکجا گرد میآورد. همهی پیوندها در آبان ۱۴۰۵ بررسی و در دسترس بودهاند. مستندات رسمی پروژهها همیشه بهروزترین منبعاند؛ پیش از بهکارگیری هر قابلیت در production، مستندات نسخهی مورد استفادهی خود را بخوانید.
منابع عمومی#
مستندات رسمی Ceph#
- مستندات اصلی Ceph
https://docs.ceph.com/en/latest/ - نسخهها و چرخهی انتشار
https://docs.ceph.com/en/latest/releases/ - RADOS: پیکربندی و عملیات
https://docs.ceph.com/en/latest/rados/ - RBD
https://docs.ceph.com/en/latest/rbd/ - RGW
https://docs.ceph.com/en/latest/radosgw/ - CephFS
https://docs.ceph.com/en/latest/cephfs/ - cephadm
https://docs.ceph.com/en/latest/cephadm/ - راهنمای توسعهدهنده
https://docs.ceph.com/en/latest/dev/developer_guide/ - مستند توسعهدهنده: bucket index در RGW
https://docs.ceph.com/en/latest/dev/radosgw/bucket_index/ - مستند placement و storage class در RGW
https://docs.ceph.com/en/latest/radosgw/placement/ - مستند multisite در RGW
https://docs.ceph.com/en/latest/radosgw/multisite/
کد و جامعه#
- مخزن کد Ceph
https://github.com/ceph/ceph - Rook
https://rook.io/docs/rook/latest/ - وبلاگ Ceph
https://ceph.io/en/news/blog/
مقالههای بنیادی#
- Weil و همکاران، Ceph، OSDI 2006
https://www.usenix.org/legacy/event/osdi06/tech/full_papers/weil/weil.pdf - Weil و همکاران، CRUSH، SC 2006
https://ceph.io/assets/pdfs/weil-crush-sc06.pdf - Weil و همکاران، RADOS، PDSW 2007
https://ceph.io/assets/pdfs/weil-rados-pdsw07.pdf - Aghayev و همکاران، File Systems Unfit as Distributed Storage Backends (BlueStore)، SOSP 2019
https://www.pdl.cmu.edu/PDL-FTP/Storage/ceph-exp-sosp19.pdf
منابع فصلبهفصل#
فصل ۱: Ceph: آغاز دورانی تازه — معماری، برنامهریزی و نخستین کلاستر#
- مستندات Ceph — معماری
https://docs.ceph.com/en/latest/architecture/ - مستندات Ceph — راهنمای سختافزار
https://docs.ceph.com/en/latest/start/hardware-recommendations/ - مستندات cephadm — استقرار کلاستر جدید
https://docs.ceph.com/en/latest/cephadm/install/ - مستندات cephadm — مدیریت میزبانها
https://docs.ceph.com/en/latest/cephadm/host-management/ - مستندات cephadm — مشخصات سرویس و placement
https://docs.ceph.com/en/latest/cephadm/services/ - مستندات Ceph — پیکربندی شبکه
https://docs.ceph.com/en/latest/rados/configuration/network-config-ref/ - مستندات Ceph — نسخهها و چرخهی انتشار
https://docs.ceph.com/en/latest/releases/ - یادداشتهای انتشار Umbrella
https://docs.ceph.com/en/latest/releases/umbrella/ - یادداشتهای انتشار Tentacle
https://docs.ceph.com/en/latest/releases/tentacle/ - Weil et al., «Ceph: A Scalable, High-Performance Distributed File System», OSDI 2006
https://www.usenix.org/legacy/event/osdi06/tech/weil.html - Weil et al., «CRUSH: Controlled, Scalable, Decentralized Placement of Replicated Data», SC 2006
https://ceph.io/assets/pdfs/weil-crush-sc06.pdf - Weil et al., «RADOS: A Scalable, Reliable Storage Service for Petabyte-scale Storage Clusters», PDSW 2007
https://ceph.io/assets/pdfs/weil-rados-pdsw07.pdf - مستندات Rook
https://rook.io/docs/rook/latest-release/
فصل ۲: کار با Ceph Block Device (RBD)#
- مستندات Ceph — Ceph Block Device
https://docs.ceph.com/en/latest/rbd/ - مستندات Ceph — دستورهای پایهی RBD
https://docs.ceph.com/en/latest/rbd/rados-rbd-cmds/ - مستندات Ceph — snapshotهای RBD و clone
https://docs.ceph.com/en/latest/rbd/rbd-snapshot/ - مستندات Ceph — RBD mirroring
https://docs.ceph.com/en/latest/rbd/rbd-mirroring/ - مستندات Ceph — مهاجرت زندهی image
https://docs.ceph.com/en/latest/rbd/rbd-live-migration/ - مستندات Ceph — رمزنگاری image
https://docs.ceph.com/en/latest/rbd/rbd-encryption/ - مستندات Ceph — مرجع پیکربندی librbd و QoS
https://docs.ceph.com/en/latest/rbd/rbd-config-ref/ - مستندات Ceph — دروازهی NVMe-oF
https://docs.ceph.com/en/latest/rbd/nvmeof-overview/ - مستندات Ceph — دروازهی iSCSI (وضعیت نگهداری
https://docs.ceph.com/en/latest/rbd/iscsi-overview/ - مستندات Ceph — krbd
https://docs.ceph.com/en/latest/rbd/rbd-ko/ - مستندات cephadm — استقرار rbd-mirror
https://docs.ceph.com/en/latest/rbd/rbd-mirroring/ - یادداشتهای انتشار Squid
https://docs.ceph.com/en/latest/releases/squid/
فصل ۳: Ceph و OpenStack#
- مستندات Ceph — Block Devices and OpenStack
https://docs.ceph.com/en/latest/rbd/rbd-openstack/ - مستندات Ceph — مرجع پیکربندی librbd
https://docs.ceph.com/en/latest/rbd/rbd-config-ref/ - مستندات Ceph — مدیریت کاربران
https://docs.ceph.com/en/latest/rados/operations/user-management/ - مستندات Cinder — درایور Ceph RBD
https://docs.openstack.org/cinder/latest/configuration/block-storage/drivers/ceph-rbd-volume-driver.html - مستندات Glance — پیکربندی backendها
https://docs.openstack.org/glance/latest/configuration/configuring.html - مستندات Manila — درایور CephFS
https://docs.openstack.org/manila/latest/configuration/shared-file-systems/drivers/cephfs_driver.html - مستندات Kolla-Ansible — یکپارچهسازی Ceph خارجی
https://docs.openstack.org/kolla-ansible/latest/reference/storage/external-ceph-guide.html - مستندات libvirt — secretها
https://libvirt.org/formatsecret.html
فصل ۴: ذخیرهسازی شیء با RADOS Gateway#
- مستندات Ceph — Ceph Object Gateway
https://docs.ceph.com/en/latest/radosgw/ - مستندات cephadm — سرویس RGW و ingress
https://docs.ceph.com/en/latest/cephadm/services/rgw/ - مستندات Ceph — مدیریت RGW با radosgw-admin
https://docs.ceph.com/en/latest/radosgw/admin/ - مستندات Ceph — User Accounts
https://docs.ceph.com/en/latest/radosgw/account/ - مستندات Ceph — یکپارچهسازی Keystone
https://docs.ceph.com/en/latest/radosgw/keystone/ - مستندات Ceph — placement و storage class
https://docs.ceph.com/en/latest/radosgw/placement/ - مستندات Ceph — resharding پویا
https://docs.ceph.com/en/latest/radosgw/dynamicresharding/ - مستندات Ceph — اعلان رویداد bucket
https://docs.ceph.com/en/latest/radosgw/notifications/ - مستندات Ceph — رمزنگاری سمت سرور
https://docs.ceph.com/en/latest/radosgw/encryption/ - مستندات Ceph — سازگاری API S3
https://docs.ceph.com/en/latest/radosgw/s3/ - مستندات Apache Hadoop — کانکتور S3A
https://hadoop.apache.org/docs/stable/hadoop-aws/tools/hadoop-aws/index.html - مستندات AWS — S3 Object Lock
https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html
فصل ۵: ذخیرهسازی شیء چندسایتی با RGW Multi-Site#
- مستندات Ceph — Multi-Site
https://docs.ceph.com/en/latest/radosgw/multisite/ - مستندات Ceph — Multisite Sync Policy
https://docs.ceph.com/en/latest/radosgw/multisite-sync-policy/ - مستندات Ceph — Zone Features
https://docs.ceph.com/en/latest/radosgw/zone-features/ - مستندات Ceph — ماژول rgw در MGR
https://docs.ceph.com/en/latest/mgr/rgw/ - مستندات Ceph — Archive Sync Module
https://docs.ceph.com/en/latest/radosgw/archive-sync-module/ - مستندات Ceph — Cloud Sync Module
https://docs.ceph.com/en/latest/radosgw/cloud-sync-module/ - مستندات cephadm — سرویس RGW در multisite
https://docs.ceph.com/en/latest/cephadm/services/rgw/ - یادداشتهای انتشار Umbrella (بخش Multisite
https://docs.ceph.com/en/latest/releases/umbrella/
فصل ۶: سامانهی فایل Ceph (CephFS)#
- CephFS
https://docs.ceph.com/en/latest/cephfs/ - FS volumes and subvolumes
https://docs.ceph.com/en/latest/cephfs/fs-volumes/ - Mount using kernel driver
https://docs.ceph.com/en/latest/cephfs/mount-using-kernel-driver/ - Mount using FUSE
https://docs.ceph.com/en/latest/cephfs/mount-using-fuse/ - Client authentication
https://docs.ceph.com/en/latest/cephfs/client-auth/ - Configuring multiple active MDS
https://docs.ceph.com/en/latest/cephfs/multimds/ - Standby daemons
https://docs.ceph.com/en/latest/cephfs/standby/ - MDS cache configuration
https://docs.ceph.com/en/latest/cephfs/cache-configuration/ - Snapshot scheduling
https://docs.ceph.com/en/latest/cephfs/snap-schedule/ - CephFS mirroring
https://docs.ceph.com/en/latest/cephfs/cephfs-mirroring/ - NFS module
https://docs.ceph.com/en/latest/mgr/nfs/ - SMB module
https://docs.ceph.com/en/latest/mgr/smb/ - Quotas
https://docs.ceph.com/en/latest/cephfs/quota/ - File layouts
https://docs.ceph.com/en/latest/cephfs/file-layouts/ - Health messages
https://docs.ceph.com/en/latest/cephfs/health-messages/ - Disaster recovery
https://docs.ceph.com/en/latest/cephfs/disaster-recovery/ - Tentacle release notes
https://docs.ceph.com/en/latest/releases/tentacle/
فصل ۷: راهبری و مدیریت کلاستر Ceph#
- cephadm operations
https://docs.ceph.com/en/latest/cephadm/operations/ - Host management
https://docs.ceph.com/en/latest/cephadm/host-management/ - OSD service
https://docs.ceph.com/en/latest/cephadm/services/osd/ - Upgrading Ceph (cephadm
https://docs.ceph.com/en/latest/cephadm/upgrade/ - Configuring Ceph
https://docs.ceph.com/en/latest/rados/configuration/ceph-conf/ - ceph command reference
https://docs.ceph.com/en/latest/man/8/ceph/ - mClock config reference
https://docs.ceph.com/en/latest/rados/configuration/mclock-config-ref/ - Device management
https://docs.ceph.com/en/latest/rados/operations/devices/ - Monitor/OSD interaction
https://docs.ceph.com/en/latest/rados/configuration/mon-osd-interaction/ - Adding/removing monitors
https://docs.ceph.com/en/latest/rados/operations/add-or-rm-mons/ - Release index
https://docs.ceph.com/en/latest/releases/ - Tentacle release notes
https://docs.ceph.com/en/latest/releases/tentacle/
فصل ۸: Ceph از درون: CRUSH، نقشهها، احراز هویت و PGها#
- CRUSH maps
https://docs.ceph.com/en/latest/rados/operations/crush-map/ - CRUSH map edits
https://docs.ceph.com/en/latest/rados/operations/crush-map-edits/ - Placement groups
https://docs.ceph.com/en/latest/rados/operations/placement-groups/ - PG states
https://docs.ceph.com/en/latest/rados/operations/pg-states/ - Monitoring OSDs and PGs
https://docs.ceph.com/en/latest/rados/operations/monitoring-osd-pg/ - User management
https://docs.ceph.com/en/latest/rados/operations/user-management/ - Cephx config
https://docs.ceph.com/en/latest/rados/configuration/auth-config-ref/ - Messenger v2
https://docs.ceph.com/en/latest/rados/configuration/msgr2/ - Architecture
https://docs.ceph.com/en/latest/architecture/ - Health checks
https://docs.ceph.com/en/latest/rados/operations/health-checks/ - Read balancer
https://docs.ceph.com/en/latest/rados/operations/read-balancer/ - Squid release notes
https://docs.ceph.com/en/latest/releases/squid/ - Umbrella release notes
https://docs.ceph.com/en/latest/releases/umbrella/ - Weil et al., CRUSH (SC ۲۰۰۶
https://ceph.io/assets/pdfs/weil-crush-sc06.pdf
فصل ۹: از VSM تا Ceph Dashboard: مدیریت گرافیکی کلاستر#
- Ceph Dashboard
https://docs.ceph.com/en/latest/mgr/dashboard/ - Ceph RESTful API (Dashboard API
https://docs.ceph.com/en/latest/mgr/ceph_api/ - Management gateway
https://docs.ceph.com/en/latest/cephadm/services/mgmt-gateway/ - OAuth2 proxy service
https://docs.ceph.com/en/latest/cephadm/services/oauth2-proxy/ - Monitoring services (cephadm
https://docs.ceph.com/en/latest/cephadm/services/monitoring/ - Ceph Manager daemon
https://docs.ceph.com/en/latest/mgr/ - Tentacle release notes
https://docs.ceph.com/en/latest/releases/tentacle/ - Intel VSM (archived
https://github.com/intel/virtual-storage-manager
فصل ۱۰: سنجش کارایی و ابزارهای کارشناسی Ceph#
- rados manual
https://docs.ceph.com/en/latest/man/8/rados/ - rbd manual
https://docs.ceph.com/en/latest/man/8/rbd/ - Control commands (osd bench
https://docs.ceph.com/en/latest/rados/operations/control/ - Memory profiling
https://docs.ceph.com/en/latest/rados/troubleshooting/memory-profiling/ - ceph-objectstore-tool manual
https://docs.ceph.com/en/latest/man/8/ceph-objectstore-tool/ - Troubleshooting OSDs
https://docs.ceph.com/en/latest/rados/troubleshooting/troubleshooting-osd/ - Ceph API
https://docs.ceph.com/en/latest/mgr/ceph_api/ - librados Python
https://docs.ceph.com/en/latest/rados/api/python/ - fio documentation
https://fio.readthedocs.io/en/latest/fio_doc.html - iperf3
https://software.es.net/iperf/ - warp (S۳ benchmark
https://github.com/minio/warp - IOR and mdtest
https://github.com/hpc/ior - ceph-medic repository
https://github.com/ceph/ceph-medic - Tentacle release notes
https://docs.ceph.com/en/latest/releases/tentacle/
فصل ۱۱: استقرار Ceph: آزمایشگاه، cephadm، Ansible و Rook#
- Deploying a new cluster (cephadm
https://docs.ceph.com/en/latest/cephadm/install/ - Host management
https://docs.ceph.com/en/latest/cephadm/host-management/ - OSD service specs
https://docs.ceph.com/en/latest/cephadm/services/osd/ - Service management
https://docs.ceph.com/en/latest/cephadm/services/ - Converting an existing cluster to cephadm
https://docs.ceph.com/en/latest/cephadm/adoption/ - ceph-ansible
https://github.com/ceph/ceph-ansible - cephadm-ansible
https://github.com/ceph/cephadm-ansible - ceph-deploy (archived
https://github.com/ceph/ceph-deploy - Rook documentation
https://rook.io/docs/rook/latest-release/ - Rook CephCluster CRD
https://rook.io/docs/rook/latest-release/CRDs/Cluster/ceph-cluster-crd/ - vagrant-libvirt
https://vagrant-libvirt.github.io/vagrant-libvirt/ - Umbrella release notes
https://docs.ceph.com/en/latest/releases/umbrella/
فصل ۱۲: BlueStore: موتور ذخیرهسازی OSD#
- BlueStore configuration reference
https://docs.ceph.com/en/latest/rados/configuration/bluestore-config-ref/ - BlueStore migration
https://docs.ceph.com/en/latest/rados/operations/bluestore-migration/ - ceph-bluestore-tool
https://docs.ceph.com/en/latest/man/8/ceph-bluestore-tool/ - ceph-volume lvm migrate
https://docs.ceph.com/en/latest/ceph-volume/lvm/migrate/ - Health checks
https://docs.ceph.com/en/latest/rados/operations/health-checks/ - Source: src/os/bluestore (BlueStore.cc, BlueStore_components.h, Writer.cc, HybridAllocator.h
https://github.com/ceph/ceph/tree/main/src/os/bluestore - Source: option definitions
https://github.com/ceph/ceph/blob/main/src/common/options/global.yaml.in - Aghayev et al., "File Systems Unfit as Distributed Storage Backends: Lessons from 10 Years of Ceph Evolution" (SOSP ۲۰۱۹
https://www.pdl.cmu.edu/PDL-FTP/Storage/ceph-exp-sosp19.pdf - Squid release notes
https://docs.ceph.com/en/latest/releases/squid/ - Reef release notes
https://docs.ceph.com/en/latest/releases/reef/
فصل ۱۳: کدگذاری پاکشونده (Erasure Coding) برای بهرهوری ذخیرهسازی#
- Erasure code
https://docs.ceph.com/en/latest/rados/operations/erasure-code/ - Erasure code profiles
https://docs.ceph.com/en/latest/rados/operations/erasure-code-profile/ - ISA plugin
https://docs.ceph.com/en/latest/rados/operations/erasure-code-isa/ - LRC plugin
https://docs.ceph.com/en/latest/rados/operations/erasure-code-lrc/ - CLAY plugin
https://docs.ceph.com/en/latest/rados/operations/erasure-code-clay/ - SHEC plugin
https://docs.ceph.com/en/latest/rados/operations/erasure-code-shec/ - Tentacle release notes
https://docs.ceph.com/en/latest/releases/tentacle/ - Source: src/erasure-code
https://github.com/ceph/ceph/tree/main/src/erasure-code - Source: src/osd/ECTransaction.cc, ECSwitch.h, OSDMap.cc
https://github.com/ceph/ceph/tree/main/src/osd - Intel ISA-L
https://github.com/intel/isa-l - Plank, "A Tutorial on Reed-Solomon Coding for Fault-Tolerance in RAID-like Systems"
https://web.eecs.utk.edu/~jplank/plank/papers/CS-96-332.pdf
فصل ۱۴: برنامهنویسی با librados#
- librados introduction
https://docs.ceph.com/en/latest/rados/api/librados-intro/ - librados C API
https://docs.ceph.com/en/latest/rados/api/librados/ - librados C++ API
https://docs.ceph.com/en/latest/rados/api/libradospp/ - librados Python API
https://docs.ceph.com/en/latest/rados/api/python/ - Objclass and RADOS classes
https://docs.ceph.com/en/latest/rados/api/objclass-sdk/ - Source: src/include/rados/librados.h, librados.hpp
https://github.com/ceph/ceph/tree/main/src/include/rados - Source: src/osdc/Objecter.cc
https://github.com/ceph/ceph/blob/main/src/osdc/Objecter.cc - Source: src/pybind/rados/rados.pyx
https://github.com/ceph/ceph/blob/main/src/pybind/rados/rados.pyx - Source: src/osd/PrimaryLogPG.cc
https://github.com/ceph/ceph/blob/main/src/osd/PrimaryLogPG.cc - Weil et al., "RADOS: A Scalable, Reliable Storage Service for Petabyte-scale Storage Clusters" (PDSW ۲۰۰۷
https://ceph.io/assets/pdfs/weil-rados-pdsw07.pdf
فصل ۱۵: کلاسهای RADOS: محاسبه در کنار داده#
- SDK for Ceph Object Classes
https://docs.ceph.com/en/latest/rados/api/objclass-sdk/ - OSD config reference (classes
https://docs.ceph.com/en/latest/rados/configuration/osd-config-ref/ - User management and capabilities
https://docs.ceph.com/en/latest/rados/operations/user-management/ - Source: src/cls
https://github.com/ceph/ceph/tree/main/src/cls - Source: src/osd/ClassHandler.cc
https://github.com/ceph/ceph/blob/main/src/osd/ClassHandler.cc - Source: src/osd/OSDCap.cc
https://github.com/ceph/ceph/blob/main/src/osd/OSDCap.cc - Source: src/include/rados/objclass.h (v۲۰.۲.۰
https://github.com/ceph/ceph/blob/v20.2.0/src/include/rados/objclass.h - Source: src/include/rados/cls_traits.hpp
https://github.com/ceph/ceph/blob/main/src/include/rados/cls_traits.hpp - Source: src/cls/lua/cls_lua.cc
https://github.com/ceph/ceph/blob/main/src/cls/lua/cls_lua.cc
فصل ۱۶: لایهبندی ذخیرهسازی: از Cache Tiering تا Device Class و Storage Class#
- Cache Tiering (deprecation notice
https://docs.ceph.com/en/latest/rados/operations/cache-tiering/ - CRUSH maps and device classes
https://docs.ceph.com/en/latest/rados/operations/crush-map/ - Read balancer
https://docs.ceph.com/en/latest/rados/operations/read-balancer/ - RGW placement and storage classes
https://docs.ceph.com/en/latest/radosgw/placement/ - RGW cloud transition
https://docs.ceph.com/en/latest/radosgw/cloud-transition/ - Erasure code (overwrites
https://docs.ceph.com/en/latest/rados/operations/erasure-code/ - Source: src/osd/PrimaryLogPG.cc (agent_*, hit_set_*
https://github.com/ceph/ceph/blob/main/src/osd/PrimaryLogPG.cc - Source: src/osd/TierAgentState.h
https://github.com/ceph/ceph/blob/main/src/osd/TierAgentState.h - Source: src/osd/HitSet.h
https://github.com/ceph/ceph/blob/main/src/osd/HitSet.h - ceph-devel (۲۰۱۷-۱۱), «About the "temperature histogram" of tier-agent»
https://www.spinics.net/lists/ceph-devel/msg39274.html
فصل ۱۷: عیبیابی Ceph: از HEALTH_WARN تا ماشین حالت Peering#
- Health checks
https://docs.ceph.com/en/latest/rados/operations/health-checks/ - Monitoring OSDs and PGs
https://docs.ceph.com/en/latest/rados/operations/monitoring-osd-pg/ - Placement group states
https://docs.ceph.com/en/latest/rados/operations/pg-states/ - Troubleshooting PGs
https://docs.ceph.com/en/latest/rados/troubleshooting/troubleshooting-pg/ - Troubleshooting OSDs
https://docs.ceph.com/en/latest/rados/troubleshooting/troubleshooting-osd/ - Troubleshooting monitors
https://docs.ceph.com/en/latest/rados/troubleshooting/troubleshooting-mon/ - Peering (developer guide
https://docs.ceph.com/en/latest/dev/peering/ - Source: src/osd/PeeringState.h / .cc
https://github.com/ceph/ceph/blob/main/src/osd/PeeringState.h - Source: src/osd/scrubber
https://github.com/ceph/ceph/tree/main/src/osd/scrubber - Source: src/osd/OpRequest.h
https://github.com/ceph/ceph/blob/main/src/osd/OpRequest.h
فصل ۱۸: بازیابی از فاجعه: rbd-mirror، stretch mode و نجات کلاستر#
- RBD mirroring
https://docs.ceph.com/en/latest/rbd/rbd-mirroring/ - Stretch mode (Tentacle
https://docs.ceph.com/en/tentacle/rados/operations/stretch-mode/ - Stretch mode (Umbrella
https://docs.ceph.com/en/umbrella/rados/operations/stretch-mode/ - Stretch mode (latest/dev
https://docs.ceph.com/en/latest/rados/operations/stretch-mode/ - Troubleshooting monitors (Monitor Store Failures
https://docs.ceph.com/en/latest/rados/troubleshooting/troubleshooting-mon/ - CephFS mirroring
https://docs.ceph.com/en/latest/cephfs/cephfs-mirroring/ - RGW S3 bucket operations (object lock config
https://docs.ceph.com/en/latest/radosgw/s3/bucketops/ - Source: src/tools/rbd_mirror
https://github.com/ceph/ceph/tree/main/src/tools/rbd_mirror - Source: src/cls/rbd/cls_rbd_types.h
https://github.com/ceph/ceph/blob/main/src/cls/rbd/cls_rbd_types.h - Source: src/librbd/mirror/snapshot
https://github.com/ceph/ceph/tree/main/src/librbd/mirror/snapshot
فصل ۱۹: راهبری و نگهداری روزمره: ارتقا، جایگزینی دیسک، autoscaler و balancer#
- cephadm upgrade
https://docs.ceph.com/en/latest/cephadm/upgrade/ - cephadm upgrade (Umbrella
https://docs.ceph.com/en/umbrella/cephadm/upgrade/ - cephadm host management
https://docs.ceph.com/en/latest/cephadm/host-management/ - cephadm OSD service
https://docs.ceph.com/en/latest/cephadm/services/osd/ - Placement groups and autoscaling
https://docs.ceph.com/en/latest/rados/operations/placement-groups/ - Balancer
https://docs.ceph.com/en/latest/rados/operations/balancer/ - Configuring Ceph (central config
https://docs.ceph.com/en/latest/rados/configuration/ceph-conf/ - Source: src/mon/ConfigMonitor.cc (config log / reset
https://github.com/ceph/ceph/blob/main/src/mon/ConfigMonitor.cc - Device management
https://docs.ceph.com/en/latest/rados/operations/devices/ - Ceph releases
https://docs.ceph.com/en/latest/releases/ - Source: src/pybind/mgr/pg_autoscaler/module.py
https://github.com/ceph/ceph/blob/main/src/pybind/mgr/pg_autoscaler/module.py - Source: src/pybind/mgr/balancer/module.py
https://github.com/ceph/ceph/blob/main/src/pybind/mgr/balancer/module.py - Source: src/osd/OSDMap.cc (calc_pg_upmaps
https://github.com/ceph/ceph/blob/main/src/osd/OSDMap.cc
فصل ۲۰: پایش Ceph: Prometheus، ceph-exporter، هشدارها و مشاهدهپذیری#
- Monitoring overview
https://docs.ceph.com/en/latest/monitoring/ - cephadm monitoring services
https://docs.ceph.com/en/latest/cephadm/services/monitoring/ - Prometheus manager module
https://docs.ceph.com/en/latest/mgr/prometheus/ - mgmt-gateway
https://docs.ceph.com/en/latest/cephadm/services/mgmt-gateway/ - oauth2-proxy
https://docs.ceph.com/en/latest/cephadm/services/oauth2-proxy/ - Ceph Dashboard
https://docs.ceph.com/en/latest/mgr/dashboard/ - Crash module
https://docs.ceph.com/en/latest/mgr/crash/ - ceph-mixin alerts
https://github.com/ceph/ceph/blob/main/monitoring/ceph-mixin/prometheus_alerts.yml - Source: src/common/perf_counters.h
https://github.com/ceph/ceph/blob/main/src/common/perf_counters.h - Source: src/common/options/ceph-exporter.yaml.in
https://github.com/ceph/ceph/blob/main/src/common/options/ceph-exporter.yaml.in - Prometheus security model
https://prometheus.io/docs/operating/security/
فصل ۲۱: تنظیم کارایی Ceph: از mClock تا هسته و شبکه#
- mClock config reference
https://docs.ceph.com/en/latest/rados/configuration/mclock-config-ref/ - OSD config reference
https://docs.ceph.com/en/latest/rados/configuration/osd-config-ref/ - BlueStore config reference
https://docs.ceph.com/en/latest/rados/configuration/bluestore-config-ref/ - cephadm OSD service (memory autotune
https://docs.ceph.com/en/latest/cephadm/services/osd/ - Hardware recommendations
https://docs.ceph.com/en/latest/start/hardware-recommendations/ - Network config reference
https://docs.ceph.com/en/latest/rados/configuration/network-config-ref/ - CBT (Ceph Benchmarking Tool
https://github.com/ceph/cbt - Source: src/dmclock
https://github.com/ceph/ceph/tree/main/src/dmclock - Source: src/osd/scheduler/mClockScheduler.cc
https://github.com/ceph/ceph/blob/main/src/osd/scheduler/mClockScheduler.cc - Source: src/common/options/osd.yaml.in
https://github.com/ceph/ceph/blob/main/src/common/options/osd.yaml.in - Gulati, Merchant, Varman, "mClock: Handling Throughput Variability for Hypervisor IO Scheduling" (OSDI ۲۰۱۰
https://www.usenix.org/conference/osdi10/mclock-handling-throughput-variability-hypervisor-io-scheduling - tracker 69078
https://tracker.ceph.com/issues/69078
فصل ۲۲: معماری کد Ceph و مسیر درخواستها از درون#
- مخزن Ceph
https://github.com/ceph/ceph - راهنمای توسعهدهنده
https://docs.ceph.com/en/latest/dev/developer_guide/ - اجرای vstart
https://docs.ceph.com/en/latest/dev/dev_cluster_deployment/ - مستندات داخلی OSD
https://docs.ceph.com/en/latest/dev/osd_internals/ - encoding
https://docs.ceph.com/en/latest/dev/encoding/ - BlueStore
https://docs.ceph.com/en/latest/rados/configuration/bluestore-config-ref/ - crimson
https://docs.ceph.com/en/latest/dev/crimson/ - Weil و همکاران، «Ceph: A Scalable, High-Performance Distributed File System»، OSDI 2006
https://www.usenix.org/legacy/event/osdi06/tech/full_papers/weil/weil.pdf
فصل ۲۳: لایههای پایینی (۱): دستگاه بلوکی، bufferlist، mempool و crc32c#
- کد KernelDevice
https://github.com/ceph/ceph/blob/main/src/blk/kernel/KernelDevice.cc - libaio در Ceph
https://github.com/ceph/ceph/blob/main/src/blk/aio/aio.cc - bufferlist
https://github.com/ceph/ceph/blob/main/src/include/buffer.h - mempool
https://github.com/ceph/ceph/blob/main/src/include/mempool.h - crc32c
https://github.com/ceph/ceph/blob/main/src/common/crc32c.cc - پیکربندی BlueStore (checksum و فشردهسازی
https://docs.ceph.com/en/latest/rados/configuration/bluestore-config-ref/ - io_uring
https://kernel.dk/io_uring.pdf - CRC-32C (RFC ۳۷۲۰، پیوست B.4
https://www.rfc-editor.org/rfc/rfc3720
فصل ۲۴: لایههای پایینی (۲): قالب رویدیسک BlueStore و BlueFS#
- انواع BlueStore
https://github.com/ceph/ceph/blob/main/src/os/bluestore/bluestore_types.h - انواع BlueFS
https://github.com/ceph/ceph/blob/main/src/os/bluestore/bluefs_types.h - کدگذاری denc
https://github.com/ceph/ceph/blob/main/src/include/denc.h - امتیاز تکهتکه شدن
https://github.com/ceph/ceph/blob/main/src/os/bluestore/Allocator.cc - BitmapFreelistManager
https://github.com/ceph/ceph/blob/main/src/os/bluestore/BitmapFreelistManager.cc - پیکربندی BlueStore
https://docs.ceph.com/en/latest/rados/configuration/bluestore-config-ref/ - ceph-bluestore-tool
https://docs.ceph.com/en/latest/man/8/ceph-bluestore-tool/ - مقالهی BlueStore (SOSP ۲۰۱۹
https://www.pdl.cmu.edu/PDL-FTP/Storage/ceph-exp-sosp19.pdf - ۲Q (Johnson و Shasha، VLDB 1994
https://www.vldb.org/conf/1994/P439.PDF
فصل ۲۵: لایههای پایینی (۳): RocksDB درون BlueStore#
- RocksDBStore
https://github.com/ceph/ceph/blob/main/src/kv/RocksDBStore.cc - پیکربندی BlueStore و sharding
https://docs.ceph.com/en/latest/rados/configuration/bluestore-config-ref/ - قالب WAL مربوط به RocksDB
https://github.com/facebook/rocksdb/wiki/Write-Ahead-Log-File-Format - قالب block-based table
https://github.com/facebook/rocksdb/wiki/Rocksdb-BlockBasedTable-Format - compaction سطحی
https://github.com/facebook/rocksdb/wiki/Leveled-Compaction - column familyها
https://github.com/facebook/rocksdb/wiki/Column-Families - log_format.h
https://github.com/facebook/rocksdb/blob/main/db/log_format.h - LSM-tree (O'Neil و همکاران، ۱۹۹۶
https://www.cs.umb.edu/~poneil/lsmtree.pdf
فصل ۲۶: لایههای پایینی (۴): msgr2 در سطح بایت، AsyncConnection و EventCenter#
- مستند طراحی msgr2
https://docs.ceph.com/en/latest/dev/msgr2/ - frames_v2.h
https://github.com/ceph/ceph/blob/main/src/msg/async/frames_v2.h - ProtocolV2.cc
https://github.com/ceph/ceph/blob/main/src/msg/async/ProtocolV2.cc - crypto_onwire.cc
https://github.com/ceph/ceph/blob/main/src/msg/async/crypto_onwire.cc - پیکربندی messenger
https://docs.ceph.com/en/latest/rados/configuration/msgr2/ - گزینهی ms_mode در هسته
https://docs.kernel.org/filesystems/ceph.html - NIST SP 800-38D (GCM
https://csrc.nist.gov/pubs/sp/800/38/d/final - epoll(۷
https://man7.org/linux/man-pages/man7/epoll.7.html
فصل ۲۷: لایههای پایینی (۵): ریاضیات erasure coding، از GF(۲⁸) تا FastEC#
- مستندات erasure code
https://docs.ceph.com/en/latest/rados/operations/erasure-code/ - پروفایلها
https://docs.ceph.com/en/latest/rados/operations/erasure-code-profile/ - پلاگین CLAY
https://docs.ceph.com/en/latest/rados/operations/erasure-code-clay/ - پلاگین LRC
https://docs.ceph.com/en/latest/rados/operations/erasure-code-lrc/ - پلاگین SHEC
https://docs.ceph.com/en/latest/rados/operations/erasure-code-shec/ - ErasureCodeIsa.cc
https://github.com/ceph/ceph/blob/main/src/erasure-code/isa/ErasureCodeIsa.cc - ISA-L ec_base.c
https://github.com/intel/isa-l/blob/master/erasure_code/ec_base.c - مقالهی Clay codes (FAST ۲۰۱۸
https://www.usenix.org/conference/fast18/presentation/vajha - آموزش Reed-Solomon (Plank
https://web.eecs.utk.edu/~jplank/plank/papers/CS-96-332.html
فصل ۲۸: لایههای پایینی (۶): CRUSH در سطح بیت، از rjenkins تا upmap#
- مقالهی CRUSH (Weil و همکاران، SC 2006
https://ceph.io/assets/pdfs/weil-crush-sc06.pdf - mapper.c
https://github.com/ceph/ceph/blob/main/src/crush/mapper.c - hash.c
https://github.com/ceph/ceph/blob/main/src/crush/hash.c - CRUSH maps
https://docs.ceph.com/en/latest/rados/operations/crush-map/ - ویرایش CRUSH map
https://docs.ceph.com/en/latest/rados/operations/crush-map-edits/ - upmap
https://docs.ceph.com/en/latest/rados/operations/upmap/ - balancer
https://docs.ceph.com/en/latest/rados/operations/balancer/ - crushtool
https://docs.ceph.com/en/latest/man/8/crushtool/ - تابع hash مربوط به Bob Jenkins
https://burtleburtle.net/bob/hash/doobs.html
فصل ۲۹: لایههای پایینی (۷): کلاینتهای هستهی لینوکس، libceph، krbd و ceph.ko#
- net/ceph در هسته
https://github.com/torvalds/linux/tree/master/net/ceph - drivers/block/rbd.c
https://github.com/torvalds/linux/blob/master/drivers/block/rbd.c - fs/ceph
https://github.com/torvalds/linux/tree/master/fs/ceph - مستند CephFS در هسته
https://docs.kernel.org/filesystems/ceph.html - rbd (man
https://docs.ceph.com/en/latest/man/8/rbd/ - krbd در مستندات Ceph
https://docs.ceph.com/en/latest/rbd/rbd-ko/ - caps در CephFS
https://docs.ceph.com/en/latest/cephfs/capabilities/ - کلاینت هستهی CephFS
https://docs.ceph.com/en/latest/cephfs/mount-using-kernel-driver/
فصل ۳۰: لایههای پایینی (۸): Crimson و Seastar، OSD تکهستهای و SeaStore#
- Crimson در مستندات (main
https://github.com/ceph/ceph/blob/main/doc/crimson/crimson.rst - راهنمای توسعهدهندهی Crimson
https://github.com/ceph/ceph/blob/main/doc/dev/crimson/index.rst - طراحی SeaStore
https://github.com/ceph/ceph/blob/main/doc/dev/crimson/seastore.rst - کد Crimson
https://github.com/ceph/ceph/tree/main/src/crimson - گزینههای Crimson
https://github.com/ceph/ceph/blob/main/src/common/options/crimson.yaml.in - Seastar
https://seastar.io/ - آموزش Seastar
https://github.com/scylladb/seastar/blob/master/doc/tutorial.md - پروژهی Crimson در وبلاگ Ceph
https://ceph.io/en/news/crimson/ - Rosenblum و Ousterhout، The Design and Implementation of a Log-Structured File System (۱۹۹۲
https://people.eecs.berkeley.edu/~brewer/cs262/LFS.pdf
فصل ۳۱: لایههای پایینی (۹): SPDK و NVMe، از صفهای سختافزاری تا درگاه NVMe-oF#
- درگاه NVMe-oF در مستند Ceph
https://docs.ceph.com/en/latest/rbd/nvmeof-overview/ - پیکربندی هدف NVMe-oF
https://docs.ceph.com/en/latest/rbd/nvmeof-target-configure/ - پیشنیازهای درگاه
https://docs.ceph.com/en/latest/rbd/nvmeof-requirements/ - استفاده از SPDK در BlueStore
https://docs.ceph.com/en/latest/rados/configuration/bluestore-config-ref/ - کد NVMEDevice
https://github.com/ceph/ceph/blob/main/src/blk/spdk/NVMEDevice.cc - کد NVMeofGwMap
https://github.com/ceph/ceph/blob/main/src/mon/NVMeofGwMap.cc - پروژهی ceph-nvmeof
https://github.com/ceph/ceph-nvmeof - درایور NVMe هستهی لینوکس
https://github.com/torvalds/linux/blob/master/drivers/nvme/host/pci.c - ساختارهای NVMe و NVMe/TCP
https://github.com/torvalds/linux/blob/master/include/linux/nvme.h - ماژول bdev_rbd در SPDK
https://github.com/spdk/spdk/blob/master/module/bdev/rbd/bdev_rbd.c - مستند SPDK
https://spdk.io/doc/ - مشخصات NVMe
https://nvmexpress.org/specifications/
فصل ۳۲: لایههای پایینی (۱۰): scrub، recovery، backfill و repair در سطح کد#
- scrub در مستند Ceph
https://docs.ceph.com/en/latest/rados/configuration/osd-config-ref/#scrubbing - مستند توسعهدهندهی scrub
https://docs.ceph.com/en/latest/dev/osd_internals/scrub/ - رزرو و اولویت backfill
https://docs.ceph.com/en/latest/dev/osd_internals/backfill_reservation/ - recovery در مستند توسعهدهنده
https://docs.ceph.com/en/latest/dev/osd_internals/recovery_reservation/ - کد scrubber
https://github.com/ceph/ceph/tree/main/src/osd/scrubber - PeeringState
https://github.com/ceph/ceph/blob/main/src/osd/PeeringState.cc - AsyncReserver
https://github.com/ceph/ceph/blob/main/src/common/AsyncReserver.h - PrimaryLogPG
https://github.com/ceph/ceph/blob/main/src/osd/PrimaryLogPG.cc - گزینههای OSD
https://github.com/ceph/ceph/blob/main/src/common/options/osd.yaml.in - عیبیابی PG و repair ناسازگاریها
https://docs.ceph.com/en/latest/rados/troubleshooting/troubleshooting-pg/
فصل ۳۳: لایههای پایینی (۱۱): حافظه و CPU درون OSD، از mempool تا NUMA و پروفایلگیری#
- پیکربندی حافظهی BlueStore
https://docs.ceph.com/en/latest/rados/configuration/bluestore-config-ref/ - مرجع گزینههای OSD
https://docs.ceph.com/en/latest/rados/configuration/osd-config-ref/ - mempool
https://github.com/ceph/ceph/blob/main/src/include/mempool.h - PriorityCache
https://github.com/ceph/ceph/blob/main/src/common/PriorityCache.cc - BlueStore MempoolThread
https://github.com/ceph/ceph/blob/main/src/os/bluestore/BlueStore.cc - NUMA در OSD
https://github.com/ceph/ceph/blob/main/src/osd/OSD.cc - tcmalloc (gperftools
https://github.com/gperftools/gperftools - perf
https://perfwiki.github.io/main/ - bpftrace
https://github.com/bpftrace/bpftrace - uftrace
https://github.com/namhyung/uftrace - Flame graphs
https://www.brendangregg.com/flamegraphs.html
فصل ۳۴: بخش تخصصی (۱): RADOS — هویت شیء، فراداده و مسیر op درون OSD#
- hobject.h و hobject.cc
https://github.com/ceph/ceph/blob/main/src/common/hobject.h - osd_types.h (object_info_t، pg_log_entry_t، کلیدهای pgmeta
https://github.com/ceph/ceph/blob/main/src/osd/osd_types.h - PrimaryLogPG.cc (do_op، execute_ctx، finish_ctx
https://github.com/ceph/ceph/blob/main/src/osd/PrimaryLogPG.cc - OSD.cc (enqueue_op و صف شاردشده
https://github.com/ceph/ceph/blob/main/src/osd/OSD.cc - مستند توسعهدهنده دربارهی اجرای op
https://docs.ceph.com/en/latest/dev/osd_internals/ - گزینههای OSD
https://docs.ceph.com/en/latest/rados/configuration/osd-config-ref/
فصل ۳۵: بخش تخصصی (۲): RADOS — pg log، intervalها، missing و سازوکار recovery و backfill#
- osd_types.cc و osd_types.h (PastIntervals، PriorSet، pg_info_t، pg_missing_item
https://github.com/ceph/ceph/blob/main/src/osd/osd_types.cc - PGLog.cc و PGLog.h (merge_log، divergent
https://github.com/ceph/ceph/blob/main/src/osd/PGLog.h - PeeringState.cc (activate، calc_trim_to
https://github.com/ceph/ceph/blob/main/src/osd/PeeringState.cc - PrimaryLogPG.cc (start_recovery_ops، recover_backfill
https://github.com/ceph/ceph/blob/main/src/osd/PrimaryLogPG.cc - مستند توسعهدهنده دربارهی peering
https://docs.ceph.com/en/latest/dev/peering/ - مستند توسعهدهنده دربارهی log-based PG
https://docs.ceph.com/en/latest/dev/osd_internals/log_based_pg/ - عیبیابی PG
https://docs.ceph.com/en/latest/rados/troubleshooting/troubleshooting-pg/
فصل ۳۶: بخش تخصصی (۳): RADOS — snapshot و clone، watch/notify و cls در سمت OSD، و مرجع rados و pool#
- PrimaryLogPG.cc (make_writeable، find_object_context، trim_object، CALL
https://github.com/ceph/ceph/blob/main/src/osd/PrimaryLogPG.cc - SnapMapper.cc
https://github.com/ceph/ceph/blob/main/src/osd/SnapMapper.cc - Watch.cc
https://github.com/ceph/ceph/blob/main/src/osd/Watch.cc - osd_types.h (SnapSet
https://github.com/ceph/ceph/blob/main/src/osd/osd_types.h - rados.cc (فهرست دستورهای rados
https://github.com/ceph/ceph/blob/main/src/tools/rados/rados.cc - مستند توسعهدهنده دربارهی snapshot
https://docs.ceph.com/en/latest/dev/osd_internals/snaps/ - مستند watch/notify
https://docs.ceph.com/en/latest/dev/osd_internals/watch_notify/ - مرجع pool
https://docs.ceph.com/en/latest/rados/operations/pools/
فصل ۳۷: بخش تخصصی (۴): RBD — چیدمان روی RADOS، striping، object map و fast-diff، و مرجع rbd#
- cls_rbd.cc
https://github.com/ceph/ceph/blob/main/src/cls/rbd/cls_rbd.cc - rbd_types.h و features.h
https://github.com/ceph/ceph/blob/main/src/include/rbd/features.h - Striper.cc
https://github.com/ceph/ceph/blob/main/src/osdc/Striper.cc - bit_vector.hpp
https://github.com/ceph/ceph/blob/main/src/common/bit_vector.hpp - librbd/object_map/DiffRequest.cc
https://github.com/ceph/ceph/blob/main/src/librbd/object_map/DiffRequest.cc - مستند RBD layering و striping
https://docs.ceph.com/en/latest/dev/rbd-layering/ - مرجع دستور rbd
https://docs.ceph.com/en/latest/man/8/rbd/ - مرجع rbd-nbd
https://docs.ceph.com/en/latest/man/8/rbd-nbd/
فصل ۳۸: بخش تخصصی (۵): RBD — مسیر I/O در librbd، layering و copyup، exclusive-lock، cache و QoS#
- librbd/io (Types.h، ImageDispatcher، ObjectRequest، CopyupRequest
https://github.com/ceph/ceph/tree/main/src/librbd/io - librbd/managed_lock و ExclusiveLock.cc
https://github.com/ceph/ceph/tree/main/src/librbd/managed_lock - WriteAroundObjectDispatch.cc
https://github.com/ceph/ceph/blob/main/src/librbd/cache/WriteAroundObjectDispatch.cc - Throttle.cc (TokenBucketThrottle
https://github.com/ceph/ceph/blob/main/src/common/Throttle.cc - گزینههای RBD
https://docs.ceph.com/en/latest/rbd/rbd-config-ref/ - cache پایدار
https://docs.ceph.com/en/latest/rbd/rbd-persistent-write-log-cache/ - مستند exclusive lock
https://docs.ceph.com/en/latest/rbd/rbd-exclusive-locks/ - rbd(۸) و ویژگیهای krbd
https://docs.ceph.com/en/latest/man/8/rbd/
فصل ۳۹: بخش تخصصی (۶): RBD — درون rbd-mirror: journal در برابر snapshot#
- کتابخانهی journal (Entry.cc، JournalRecorder.cc، Journaler.cc
https://github.com/ceph/ceph/tree/main/src/journal - cls_journal.cc
https://github.com/ceph/ceph/blob/main/src/cls/journal/cls_journal.cc - librbd/journal و Types.h
https://github.com/ceph/ceph/tree/main/src/librbd/journal - rbd-mirror
https://github.com/ceph/ceph/tree/main/src/tools/rbd_mirror - cls_rbd_types.h (MirrorSnapshotNamespace
https://github.com/ceph/ceph/blob/main/src/cls/rbd/cls_rbd_types.h - مستند mirroring
https://docs.ceph.com/en/latest/rbd/rbd-mirroring/ - گزینههای rbd-mirror
https://docs.ceph.com/en/latest/rbd/rbd-config-ref/
فصل ۴۰: بخش تخصصی (۷): RGW — مدل داده روی RADOS: فراداده، bucket index، نسخهبندی، manifest و multipart#
- cls_rgw.cc و cls_rgw_types.h
https://github.com/ceph/ceph/blob/main/src/cls/rgw/cls_rgw.cc - rgw_zone.cc (نام poolها
https://github.com/ceph/ceph/blob/main/src/rgw/rgw_zone.cc - rgw_putobj_processor.cc
https://github.com/ceph/ceph/blob/main/src/rgw/driver/rados/rgw_putobj_processor.cc - rgw_sal_rados.cc (multipart
https://github.com/ceph/ceph/blob/main/src/rgw/driver/rados/rgw_sal_rados.cc - مستند bucket index و layout
https://docs.ceph.com/en/latest/dev/radosgw/bucket_index/ - مستند placement و storage class
https://docs.ceph.com/en/latest/radosgw/placement/ - radosgw-admin
https://docs.ceph.com/en/latest/man/8/radosgw-admin/
فصل ۴۱: بخش تخصصی (۸): RGW — مسیر درخواست، SigV4، سهمیه، محدودیت نرخ، gc و lifecycle#
- rgw_process.cc
https://github.com/ceph/ceph/blob/main/src/rgw/rgw_process.cc - rgw_auth_s3.cc
https://github.com/ceph/ceph/blob/main/src/rgw/rgw_auth_s3.cc - rgw_ratelimit.h
https://github.com/ceph/ceph/blob/main/src/rgw/rgw_ratelimit.h - rgw_quota.cc
https://github.com/ceph/ceph/blob/main/src/rgw/rgw_quota.cc - rgw_gc.cc
https://github.com/ceph/ceph/blob/main/src/rgw/driver/rados/rgw_gc.cc - rgw_lc.cc
https://github.com/ceph/ceph/blob/main/src/rgw/rgw_lc.cc - AWS Signature Version 4
https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv-create-signed-request.html - مستند gc و lifecycle در Ceph
https://docs.ceph.com/en/latest/radosgw/config-ref/
فصل ۴۲: بخش تخصصی (۹): RGW — درون multisite: period، قالب لاگها، نسلهای bucket و موتور همگامسازی#
- rgw_zone.cc (commit_period
https://github.com/ceph/ceph/blob/main/src/rgw/rgw_zone.cc - rgw_data_sync.cc و rgw_data_sync.h
https://github.com/ceph/ceph/blob/main/src/rgw/driver/rados/rgw_data_sync.cc - rgw_sync.cc (metadata sync
https://github.com/ceph/ceph/blob/main/src/rgw/driver/rados/rgw_sync.cc - rgw_datalog.h
https://github.com/ceph/ceph/blob/main/src/rgw/driver/rados/rgw_datalog.h - cls_rgw_types.h (rgw_bi_log_entry
https://github.com/ceph/ceph/blob/main/src/cls/rgw/cls_rgw_types.h - مستند multisite
https://docs.ceph.com/en/latest/radosgw/multisite/ - مستند reshard پویا (شامل multisite
https://docs.ceph.com/en/latest/radosgw/dynamicresharding/