The Hoof & Paw
DocsCategoriesTagsView the current conditions from the WolfspyreLabs WeatherstationToggle Dark/Light/Auto modeToggle Dark/Light/Auto modeToggle Dark/Light/Auto modeBack to homepage

Configuring RADOS

So… assuming everything went according to plan… you should now have RADOS running:

validating radosgw is running: Service status
root@px-m-45:/tmp/ceph-px-m-45# service radosgw status
● radosgw.service - LSB: radosgw RESTful rados gateway
     Loaded: loaded (/etc/init.d/radosgw; generated)
     Active: active (running) since Thu 2023-01-26 22:16:32 CST; 1 weeks 3 days ago
       Docs: man:systemd-sysv-generator(8)
      Tasks: 603 (limit: 618787)
     Memory: 370.3M
        CPU: 1h 2min 15.883s
     CGroup: /system.slice/radosgw.service
             └─90606 /bin/radosgw -n client.radosgw.px-m-45

Adding radosgw to /etc/services allows tools like netstat to resolve that for you.
I’m showing the output of netstat with/without service-name resolution here:

Netstat output: px-m-40
root@px-m-40:/tmp/ceph-px-m-40# netstat -ln4 |egrep '(radosgw|7480)'
tcp        0      0 0.0.0.0:7480            0.0.0.0:*               LISTEN
Netstat output: px-m-41
root@px-m-41:/tmp/ceph-px-m-41# netstat -l4 |egrep '(radosgw|7480)'
tcp        0      0 0.0.0.0:radosgw         0.0.0.0:*               LISTEN
Netstat output: px-m-42
root@px-m-42:/tmp/ceph-px-m-42# netstat -ln4 |egrep '(radosgw|7480)'
tcp        0      0 0.0.0.0:7480            0.0.0.0:*               LISTEN
Netstat output: px-m-43
root@px-m-43:/tmp/ceph-px-m-43# netstat -l4 |egrep '(radosgw|7480)'
tcp        0      0 0.0.0.0:radosgw         0.0.0.0:*               LISTEN
Netstat output: px-m-44
root@px-m-44:/tmp/ceph-px-m-44# netstat -ln4 |egrep '(radosgw|7480)'
tcp        0      0 0.0.0.0:7480            0.0.0.0:*               LISTEN
Netstat output: px-m-45
root@px-m-45:/tmp/ceph-px-m-45# netstat -l4 |egrep '(radosgw|7480)'
tcp        0      0 0.0.0.0:radosgw         0.0.0.0:*               LISTEN

So Now What?

Okay! COOL! So RADOS is running! Wahoo!!!

Now what?

Well,

Creation of an administrative user account

FIRST, we need to create an admin user for global administration.

radosgw - Creation of global admin user
radosgw-admin user create --uid=admin --system \
  --display-name="WolfspyreLabs Admin" \ 
  --email="admin@example.com"

The Output:

User Creation Output
{
    "user_id": "admin",
    "display_name": "WolfspyreLabs Admin",
    "email": "admin@example.com",
    "suspended": 0,
    "max_buckets": 1000,
    "subusers": [],
    "keys": [
        {
            "user": "admin",
            "access_key": "CODEMONKEYLIKEFRETOS",
            "secret_key": "CODEMONKEYLIKETABANDMOUNTAINDEWCODEMONKEYLIKEYOU"
        }
    ],
    "swift_keys": [],
    "caps": [],
    "op_mask": "read, write, delete",
    "system": "true",
    "default_placement": "",
    "default_storage_class": "",
    "placement_tags": [],
    "bucket_quota": {
        "enabled": false,
        "check_on_raw": false,
        "max_size": -1,
        "max_size_kb": 0,
        "max_objects": -1
    },
    "user_quota": {
        "enabled": false,
        "check_on_raw": false,
        "max_size": -1,
        "max_size_kb": 0,
        "max_objects": -1
    },
    "temp_url_keys": [],
    "type": "rgw",
    "mfa_ids": []
}

IF you use the ceph-dashboard, there’s some enablement to perform there.

Using Ceph Dashboard?

[The ceph documentation]https://docs.ceph.com/en/quincy/mgr/dashboard/#dashboard-enabling-object-gateway for the OSG Dashboard integration is pretty straight forward.

Creation of a dashboard adminuser account

radosgw - Creation of global admin user
radosgw-admin user create --uid=dashboardadmin --system \
  --display-name="WolfspyreLabs Dashboard Admin" \ 
  --email="dashadmin@example.com"

The Output:

User Creation Output
{
    "user_id": "dashboardadmin",
    "display_name": "WolfspyreLabs Dashboard Admin",
    "email": "dashadmin@example.com",
    "suspended": 0,
    "max_buckets": 1000,
    "subusers": [],
    "keys": [
        {
            "user": "dashboardadmin",
            "access_key": "CODEMONKEYLIKEFRETOS",
            "secret_key": "CODEMONKEYLIKETABANDMOUNTAINDEWCODEMONKEYLIKEYOU"
        }
    ],
    "swift_keys": [],
    "caps": [],
    "op_mask": "read, write, delete",
    "system": "true",
    "default_placement": "",
    "default_storage_class": "",
    "placement_tags": [],
    "bucket_quota": {
        "enabled": false,
        "check_on_raw": false,
        "max_size": -1,
        "max_size_kb": 0,
        "max_objects": -1
    },
    "user_quota": {
        "enabled": false,
        "check_on_raw": false,
        "max_size": -1,
        "max_size_kb": 0,
        "max_objects": -1
    },
    "temp_url_keys": [],
    "type": "rgw",
    "mfa_ids": []
}

After you’ve created the dashboard admin user, g/a and set these credentials in the dashboard:

Manually Creating Normal Users