RadOS Mac OS
- Down to the file you just downloaded and click to select it. MAC USERS: The Mac OS adds an extra file with the same name but with a leading dot. Skip over this file and select the one without the leading dot instead.
- Dec 01, 2015 Rados Gateway (Data flow) ● RGW nodes – Frontend – (Apache/FastCGI, CivetWeb) – ReST dialect (Pluggable architecture for other dialects) – RGW core execution layer – RGW-RADOS object mapping layer – Librados ● RADOS – Object Classes for RGW – RADOS backend (OSDs) 15.
CEPH is a free and opensource object storage system. This article describes the basic terminology, installation and configuration parameters required to build your own CEPH environment.
CEPH has been designed to be a distributed storage system which is highly fault tolerant, scalable and configurable. It can run on large number of distributed commodity hardware thus eliminating the need for very large central storage solutions.
This post aims to be a basic, short and self contained article that explains all the key details to understand and play with CEPH.
Rados Mac Os X
Ceph的底层是RADOS(可靠、自动、分布式对象存储),可以通过LIBRADOS直接访问到RADOS的对象存储系统。Ceph还提供三种标准的访问接口:RBD(块设备接口)、RADOS Gateway(对象存储接口)、Ceph File System(POSIX文件接口)。 对于CephFS主要由三个组件构成:MON、OSD和MDS。.
Environment
I’ve setup CEPH on my laptop with a few LXC containers. My setup has –
- Host: Ubuntu 16.04 xenial 64-bit OS
- LXC version: 2.0.6
- 40G disk partition that is free to use for this experiement.
- CEPH Release – Jewel
The Ubuntu site has documentation on LXC configuration here. But this site talks about creating unprivileged containers. However, we’ll need “privileged” containers. Privileged containers are’t considered secure, since processes are mapped to root user on the host. Hence it has been used only for the purpose of experimenting.
See documentation on LXC site here to understand how to create privileged LXC containers.
Now, create these containers (as privileged) with names like these –
- cephadmin
- cephmon
- cephosd0
- cephosd1
- cephosd2
- cephradosgw
Here’s a command to create a container with Ubuntu Xenial 64-bit container. You could choose another distro, in which case some of the instructions might not be applicable. Using the names above run the command to create each container –
Though CEPH installations talk about private and public networks. For testing purposes, the ‘lxcbr0’ available from LXC is sufficient to successfully work with CEPH.
Start the containers and install SSH servers on all of them –
Repeat the above commands for all the containers you’ve created. Re-start all the containers. Register the container-names into your /etc/hosts for easily being able to login to them.
Disk Setup
On the 40G disk partition you’ve allocated for this exercise perform –
- Delete the existing partition
- Create 3 new partitions
- Format each of them with ‘XFS’ filesystem.
CEPH recommends using XFS / BTRFS / EXT4. I’ve used XFS in my tests. I tried with EXT4 but received warnings related to limited xattr sizes while CEPH was being deployed.
Note down the device major and minor numbers for the partitions you’ve created from the above steps.
Make each of the partition you’ve created available to each of the cephosd0, cephosd1 and cephosd2 containers. If the above operation resulted in ‘/dev/sda8’, ‘/dev/sda9’ and ‘/dev/sda10’ devices. Assign each of the device major and minor number to a corresponding cephosd<N> container. To do that, you’ll need to edit the LXC configuration file for each of the cephosd* container by performing the steps –
- Login to each cephosd<N> node, and run
- Stop your cephosd containers (cephosd0, cephosd1, cephosd2) –
- On the host create corresponding ‘fstab’ file for each container. You’d assign /dev/sda8 to cephosd0, /dev/sda9 to cephosd1 and so on. The syntax of fstab would have lines like this depending on how many disks / partitions you intend to share –
Example –
IMPORTANT NOTE
The <mount-point-in-container> has no preceding forward slash. The preceding slash is not required. Refer this post on askubuntu.com for more details.
- For each of the cephosd<N> node edit the configuration file
Edit the container configuration file ‘config’. The lines below gives the container permission to access the device inside LXC and mount it to the mount point defined in the fstab file. Add the following lines –
Now, start/restart the containers. With the above set of steps we complete the creation of containers ready for us to install CEPH.
CEPH Installation
Complete the pre-flight steps on the CEPH quick install from here. The steps in pre-flight –
- Setup the ‘cephadmin’ node with the ceph-deploy package.
- Installs ‘ntp’ on all the nodes (required where OSD or MON run).
- Create a common ceph deploy user (password-less ssh sudo access) that will be used for CEPH installation on all nodes.
After the pre-flight steps are complete check –
- To ensure the password-less access works from ‘cephadmin’ to all the other nodes on your cluster via the ceph deploy user you have created.
- The XFS partition created earlier is available on all OSDs under /mnt/xfsdisk.
Next, you need to complete the CEPH deployment. The steps with all the illustrations are available here. To get a good understanding of each command read the description from the link. Since our experiement has 3 OSDs and 3 monitor daemons; You could run these commands from the ‘cephadmin’ node using the ceph deploy user created in pre-flight –
- Create a directory and run the commands below from within it.
- Designate following nodes as CEPH Monitors
- Install CEPH on all nodes including admin node.
- Add the initial monitors and gather their keys
- Prepare the disk on each OSD
- Activate each OSD
- Run this command to ensure cephadmin can perform administrative activities on all your nodes on the CEPH cluster
- Check health of cluster (You must see HEALTH_OK) if you’ve performed all the steps correctly.
- Install and deploy the instance of RADOS gateway
NOTE
If you haven’t configured the OSD daemons to start automatically via upstart, they won’t after a LXC startup/restart. And running ‘ceph -s’ or ‘ceph -w’ or ‘ceph health’ on admin node shows HEALTH_ERR and degraded cluster since the OSDs are down. In such a case, manually login to each OSD and start the OSD instance with the command sudo systemctl start ceph-osd@<instance>; <instance> in our case is 0, 1, or 2.
With the above steps, the cluster must be up with all the PGs showing ‘active + clean’ status;
Access data on cluster
To run these commands you’ll need a subset ceph.conf with monitor node information and admin keyring file. For test purposes you could run it on the cephadmin node under the cluster directory you’ve created in the first step of CEPH installation section.
To list all available data pools
To create a pool
To insert data in a file into a pool
Mac Os Catalina
To list all objects in a pool
To get a data object from the pool
Rados Mac Os X
ID | Name | Platform | Architecture | Single-core Score | Multi-core Score |
---|---|---|---|---|---|
6814601 | ASUSTeK COMPUTER INC. MINIPC PN50AMD Ryzen 7 4800U1800 MHz(8 cores) | Windows 64 | x86_64 | 1188 | 6747 |
5993642 | Mac mini (Late 2020)Apple M13194 MHz(8 cores) | macOS 64 | aarch64 | 1747 | 7708 |
5992416 | Mac mini (Late 2020)Apple M13194 MHz(8 cores) | macOS 64 | aarch64 | 1751 | 7690 |
5992368 | Mac mini (Late 2020)Apple M13194 MHz(8 cores) | macOS 64 | aarch64 | 1745 | 7655 |
5882335 | Mac mini (Late 2020)Apple M13194 MHz(8 cores) | macOS 64 | aarch64 | 1745 | 7690 |
5865635 | MacBook Air (Late 2020)Apple M13196 MHz(8 cores) | macOS 64 | aarch64 | 1748 | 7697 |
5863237 | MacBook Air (Late 2020)Apple M13180 MHz(8 cores) | macOS 64 | aarch64 | 1744 | 7612 |
5749095 | Mac mini (Late 2020)Apple M13194 MHz(8 cores) | macOS 64 | aarch64 | 1738 | 7632 |
5327591 | Dell Inc. Precision 3541Intel Core i9-9880H2294 MHz(8 cores) | Windows 64 | x86_64 | 1232 | 6349 |
4892072 | iPhone13,1ARM2993 MHz(6 cores) | iOS 64 | aarch64 | 1588 | 3706 |
4864748 | iPhone13,1ARM2993 MHz(6 cores) | iOS 64 | aarch64 | 1579 | 3815 |
4005303 | ASUSTeK COMPUTER INC. MINIPC PN50AMD Ryzen 7 4800U1800 MHz(8 cores) | Windows 64 | x86_64 | 1186 | 6996 |
3708112 | ASUSTeK COMPUTER INC. MINIPC PN50AMD Ryzen 7 4800U1800 MHz(8 cores) | Linux 64 | x86_64 | 1238 | 7148 |
3544454 | ASUSTeK COMPUTER INC. MINIPC PN50AMD Ryzen 7 4800U1800 MHz(8 cores) | Linux 64 | x86_64 | 1246 | 7060 |
3535101 | ASUSTeK COMPUTER INC. MINIPC PN50AMD Ryzen 7 4800U1800 MHz(8 cores) | Linux 64 | x86_64 | 1251 | 7092 |
3513849 | ASUSTeK COMPUTER INC. MINIPC PN50AMD Ryzen 7 4800U1800 MHz(8 cores) | Linux 64 | x86_64 | 1249 | 7080 |
3512001 | ASUSTeK COMPUTER INC. MINIPC PN50AMD Ryzen 7 4800U1800 MHz(8 cores) | Linux 64 | x86_64 | 1248 | 7032 |
3483696 | ASUSTeK COMPUTER INC. MINIPC PN50AMD Ryzen 7 4800U1800 MHz(8 cores) | Windows 64 | x86_64 | 1174 | 6873 |
3461630 | ASUSTeK COMPUTER INC. MINIPC PN50AMD Ryzen 7 4800U1800 MHz(8 cores) | Windows 64 | x86_64 | 1178 | 6882 |
3461570 | ASUSTeK COMPUTER INC. MINIPC PN50AMD Ryzen 7 4800U1800 MHz(8 cores) | Windows 64 | x86_64 | 1174 | 6864 |
3458463 | ASUSTeK COMPUTER INC. MINIPC PN50AMD Ryzen 7 4800U1800 MHz(8 cores) | Linux 64 | x86_64 | 1256 | 6987 |
2827703 | Dell Inc. Precision 3541Intel Core i9-9880H2293 MHz(8 cores) | Windows 64 | x86_64 | 1229 | 6408 |
2703482 | Intel(R) Client Systems NUC10i7FNKIntel Core i7-10710U4700 MHz(6 cores) | Linux 64 | x86_64 | 1120 | 6044 |
2699321 | Intel(R) Client Systems NUC10i7FNKIntel Core i7-10710U4700 MHz(6 cores) | Linux 64 | x86_64 | 1358 | 6339 |
2678639 | Intel(R) Client Systems NUC10i7FNKIntel Core i7-10710U1595 MHz(6 cores) | Windows 64 | x86_64 | 1209 | 5967 |
2663145 | Intel(R) Client Systems NUC10i7FNKIntel Core i7-10710U4700 MHz(6 cores) | Linux 64 | x86_64 | 1355 | 6448 |
2659680 | Intel(R) Client Systems NUC10i7FNKIntel Core i7-10710U4700 MHz(6 cores) | Linux 64 | x86_64 | 1357 | 6460 |
2655406 | Intel(R) Client Systems NUC10i7FNKIntel Core i7-10710U4700 MHz(6 cores) | Linux 64 | x86_64 | 1361 | 6451 |
2655292 | Intel(R) Client Systems NUC10i7FNKIntel Core i7-10710U4700 MHz(6 cores) | Linux 64 | x86_64 | 1358 | 6457 |
2539095 | Intel(R) Client Systems NUC10i7FNHIntel Core i7-10710U1596 MHz(6 cores) | Windows 64 | x86_64 | 1074 | 5262 |
2539033 | Intel(R) Client Systems NUC10i7FNHIntel Core i7-10710U1596 MHz(6 cores) | Windows 64 | x86_64 | 1172 | 5464 |
2538881 | Intel(R) Client Systems NUC10i7FNHIntel Core i7-10710U1596 MHz(6 cores) | Windows 64 | x86_64 | 1165 | 5463 |
2538796 | Intel(R) Client Systems NUC10i7FNHIntel Core i7-10710U1596 MHz(6 cores) | Windows 64 | x86_64 | 1062 | 5430 |
2482338 | Intel(R) Client Systems NUC8i3BEKIntel Core i3-8109U3600 MHz(2 cores) | Linux 64 | x86_64 | 1021 | 2363 |
2475144 | Dell Inc. Precision 3541Intel Core i9-9880H2294 MHz(8 cores) | Windows 64 | x86_64 | 1250 | 6529 |
2471821 | Dell Inc. Precision 3541Intel Core i9-9880H4800 MHz(8 cores) | Linux 64 | x86_64 | 1338 | 6849 |
2426572 | Intel(R) Client Systems NUC10i7FNHIntel Core i7-10710U1596 MHz(6 cores) | Windows 64 | x86_64 | 1208 | 5717 |
2426167 | Intel(R) Client Systems NUC10i7FNHIntel Core i7-10710U1596 MHz(6 cores) | Windows 64 | x86_64 | 1212 | 5680 |
2425988 | Intel(R) Client Systems NUC10i7FNHIntel Core i7-10710U1596 MHz(6 cores) | Windows 64 | x86_64 | 1199 | 5671 |
2416719 | Intel(R) Client Systems NUC10i7FNHIntel Core i7-10710U4700 MHz(6 cores) | Linux 64 | x86_64 | 1113 | 5888 |
2337361 | ZOTAC ZBOX-CI549Intel Core i5-7300U2693 MHz(2 cores) | Windows 64 | x86_64 | 849 | 1724 |
2333373 | ZOTAC ZBOX-CI549Intel Core i5-7300U3500 MHz(2 cores) | Linux 64 | x86_64 | 953 | 2013 |
2333349 | ZOTAC ZBOX-CI549Intel Core i5-7300U3500 MHz(2 cores) | Linux 64 | x86_64 | 888 | 1865 |
1490604 | Intel(R) Client Systems NUC8i3BEKIntel Core i3-8109U2992 MHz(2 cores) | Windows 64 | x86_64 | 984 | 2304 |
1489300 | Intel(R) Client Systems NUC8i3BEKIntel Core i3-8109U3600 MHz(2 cores) | Linux 64 | x86_64 | 1014 | 2337 |
1489276 | Intel(R) Client Systems NUC8i3BEKIntel Core i3-8109U3600 MHz(2 cores) | Linux 64 | x86_64 | 1012 | 2341 |
1489116 | Intel(R) Client Systems NUC8i3BEKIntel Core i3-8109U3600 MHz(2 cores) | Linux 64 | x86_64 | 1015 | 2337 |
1442143 | UnknownIntel Core i7-6770HQ2595 MHz(4 cores) | Windows 64 | x86_64 | 933 | 3355 |
1441599 | System manufacturer System Product NameIntel Core i7-2600K3411 MHz(4 cores) | Windows 64 | x86_64 | 767 | 2861 |
1277870 | UnknownIntel Core i7-5557U3092 MHz(2 cores) | Windows 64 | x86_64 | 849 | 1838 |
1236149 | HP HP Spectre x360 Convertible 15-bl1XXIntel Core i7-8550U1995 MHz(4 cores) | Windows 64 | x86_64 | 1099 | 3501 |
1231260 | HP HP Spectre x360 Convertible 15-bl1XXIntel Core i7-8550U1995 MHz(4 cores) | Windows 64 | x86_64 | 1107 | 3482 |
1225600 | HP HP Spectre x360 Convertible 15-bl1XXIntel Core i7-8550U4000 MHz(4 cores) | Linux 64 | x86_64 | 1100 | 3360 |
1225575 | HP HP Spectre x360 Convertible 15-bl1XXIntel Core i7-8550U4000 MHz(4 cores) | Linux 64 | x86_64 | 1085 | 3482 |
1225549 | HP HP Spectre x360 Convertible 15-bl1XXIntel Core i7-8550U4000 MHz(4 cores) | Linux 64 | x86_64 | 1094 | 3470 |
1225512 | HP HP Spectre x360 Convertible 15-bl1XXIntel Core i7-8550U4000 MHz(4 cores) | Linux 64 | x86_64 | 1089 | 3402 |
1101915 | Intel(R) Client Systems NUC10i7FNHIntel Core i7-10710U1608 MHz(6 cores) | Windows 64 | x86_64 | 1218 | 5894 |
1096702 | Intel(R) Client Systems NUC10i7FNHIntel Core i7-10710U1608 MHz(6 cores) | Windows 64 | x86_64 | 1183 | 5795 |
1096311 | Intel(R) Client Systems NUC10i7FNHIntel Core i7-10710U4700 MHz(6 cores) | Linux 64 | x86_64 | 1117 | 6019 |
1096251 | Intel(R) Client Systems NUC10i7FNHIntel Core i7-10710U4700 MHz(6 cores) | Linux 64 | x86_64 | 1114 | 6007 |
1095778 | Intel(R) Client Systems NUC10i7FNHIntel Core i7-10710U4700 MHz(6 cores) | Linux 64 | x86_64 | 1118 | 5985 |
932593 | iPad Pro (12.9-inch 3rd Generation)Apple A12X Bionic2490 MHz(8 cores) | iOS 64 | aarch64 | 1116 | 4649 |
526491 | HP HP Spectre x360 Convertible 15-bl1XXIntel Core i7-8550U1995 MHz(4 cores) | Windows 64 | x86_64 | 1083 | 3374 |
526413 | HP HP Spectre x360 Convertible 15-bl1XXIntel Core i7-8550U1995 MHz(4 cores) | Windows 64 | x86_64 | 1083 | 3371 |
139896 | Intel Corporation NUC7i5BNHIntel Core i5-7260U2194 MHz(2 cores) | Windows 64 | x86_64 | 891 | 2032 |
86107 | MacBook Pro (15-inch Early 2010)Intel Core i5-520M2400 MHz(2 cores) | macOS 64 | x86_64 | 391 | 858 |
85698 | iPad Pro (12.9-inch)Apple A9X2260 MHz(2 cores) | iOS 64 | aarch64 | 659 | 1224 |
40575 | Dell Inc. Precision 3541Intel Core i9-9880H2294 MHz(8 cores) | Windows 64 | x86_64 | 1226 | 6210 |
37075 | Dell Inc. Precision 3541Intel Core i9-9880H2294 MHz(8 cores) | Windows 64 | x86_64 | 1225 | 6168 |
36147 | iPhone XS MaxApple A12 Bionic2490 MHz(6 cores) | iOS 64 | aarch64 | 1116 | 2780 |
30830 | iPhone XS MaxApple A12 Bionic2490 MHz(6 cores) | iOS 64 | aarch64 | 1115 | 2630 |
20078 | iPad Pro (12.9-inch 3rd Generation)Apple A12X Bionic2490 MHz(8 cores) | iOS 64 | aarch64 | 1089 | 4348 |