Hi Dan,
I need to bring the affected OSDs up this week. Would be great if
you could take a look at this case or let me know if you don't have
time.
Best regards,
=================
Frank Schilder
AIT Risø Campus
Bygning 109, rum S14
________________________________________
From: Frank Schilder <frans@xxxxxx>
Sent: Friday, November 8, 2024 6:13 PM
To: Dan van der Ster
Cc: ceph-users@xxxxxxx
Subject: Re: failed to load OSD map for epoch 2898146,
got 0 bytes
Hi Dan,
I have collected a 134M log file (11M compressed) of the startup
with debug_osd=20/20. Do you have access to the upload area of the
ceph-devs (the ceph-post-file destination)? If not, any preferred
way I can send it to you?
To execute the ceph-objectstore-tool mount command it looks like I
need to activate the OSD first, is this correct? Can I just use
"umount" to unmount again?
On a side note, I noticed something strange. We have a containerized
deployment and to have everything at the same version we also run a
container ceph_adm for admin purposes. We bind-mount /var/lib/ceph
into all containers. I now observed that for OSDs we manually
recreated with "ceph-volume batch" inside ceph_adm their data path
folders remain mounted as in:
tmpfs on /var/lib/ceph/osd/ceph-110 type tmpfs (rw,relatime,seclabel)
ceph-volume batch apparently leaves this tmpfs mount behind instead
of cleaning it up. For these OSDs we now have the data dir mounted
in two different containers (its a double mount). Its the first time
I noticed that, we never had any problems with that. Is it something
that I need to address somehow (like stop OSD, unmount in
adm_container or just restart the adm-container) or can I ignore it?
I guess in the future we need to execute an "osd deactivate" or
"umount" to clean this up after OSD creation.
Thanks for your help!
=================
Frank Schilder
AIT Risø Campus
Bygning 109, rum S14
________________________________________
From: Dan van der Ster <dan.vanderster@xxxxxxxxx>
Sent: Tuesday, October 22, 2024 11:56 PM
To: Frank Schilder
Cc: ceph-users@xxxxxxx
Subject: Re: failed to load OSD map for epoch 2898146,
got 0 bytes
Hi Frank,
I'm glad this thread is more about understanding what's going on, as
opposed to a quick fix. Normally people in this situation should just
zap and redeploy, like you said.
The next thing I'd do is fuse-mount the OSD and see which osdmaps it
has -- try to read them, etc. Does the OSD have the osdmap epoch it is
warning about in the logs?
ceph-objectstore-tool --data-path </path/to/osd> --op fuse --mountpoint /mnt
Inside /mnt you'll see the PGs and a meta folder, IIRC. Inside meta
you will find the osdmaps.
Cheers, dan
--
Dan van der Ster
CTO @ CLYSO
https://clyso.com | dan.vanderster@xxxxxxxxx
On Tue, Oct 22, 2024 at 12:14 AM Frank Schilder <frans@xxxxxx> wrote:
Hi Dan,
I don't remember exactly when I took them down. Maybe a month ago?
The reason was a fatal IO error due to connectivity issues. Its 2
SSDs with 4 OSDs each and they were installed in JBODs. We have 12
of those and, unfortunately, it seems that 3 have issues with SSDs
even though they have dedicated slots for SSD/NVMe drives. The
hallmark are SAS messages containing "blk_update" (usually
blk_update_request with a drive reset). Any attempts to fix that
(reseating, moving etc.) failed. We had like 40-50 messages per
disk per hour in the log, didn't impact performance though. So it
was a nuisance on the lower priority list.
Some time ago, maybe a month, in one of these JBODs the connection
finally gave up. For both SSDs at the same time. I'm pretty sure it
was a bus error and the disks are fine. I stopped these OSDs and
the data is recovered, no problems here. The disks are part of our
FS meta data pool and we have plenty, so there was no rush. They
store a ton of objects though and I try to avoid having a full
re-write of everything (life-time fetishist).
Yesterday, we started a major disk replacement operation after
evacuating about 40 HDDs. As part of this, we move all SSDs from
the JBODs to the servers and I tried to get these two disks up
yesterday with the result reported below. We are not done yet with
the maintenance operation and I can pull logs after we are done.
Possibly next week. We are not in a rush to get these disks back up
and I'm also prepared to just zap and redeploy these.
My interest with this case is along the lines "I would like to know
what is going on" and "is there a better way than zap+redeploy".
Others might be in a situation where they don't have the luxury of
all data being healthy and we have a chance to experiment without
any risk.
Best regards,
=================
Frank Schilder
AIT Risø Campus
Bygning 109, rum S14
________________________________________
From: Dan van der Ster <dan.vanderster@xxxxxxxxx>
Sent: Tuesday, October 22, 2024 12:04 AM
To: Frank Schilder
Cc: ceph-users@xxxxxxx
Subject: Re: failed to load OSD map for epoch 2898146,
got 0 bytes
Hi Frank,
Do you have some more info about these OSDs -- how long were they down
for? Were they down because of some IO errors?
Is it possible that the OSD thinks it stored those osdmaps but IO
errors are preventing them from being loaded?
I know the log is large, but can you share at least a snippet of when
this starts? Preferably with debug_osd = 10.
Thanks, Dan
--
Dan van der Ster
CTO @ CLYSO
https://clyso.com | dan.vanderster@xxxxxxxxx
On Mon, Oct 21, 2024 at 1:32 PM Frank Schilder <frans@xxxxxx> wrote:
>
> Hi Dan,
>
> maybe not. Looking at the output of
>
> grep -B 1 -e "2971464 failed to load OSD map for epoch 2898132"
/var/log/ceph/ceph-osd.1004.log
>
> that searches for lines that start a cycle and also print the
line before, there might be some progress, but I'm not sure:
>
> 2024-10-21T17:41:40.173+0200 7fad509a1700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898208, got 0 bytes
> 2024-10-21T17:41:40.173+0200 7fad4a194700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898132, got 0 bytes
> --
> 2024-10-21T17:41:40.610+0200 7fad519a3700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898678, got 0 bytes
> 2024-10-21T17:41:40.610+0200 7fad4e19c700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898132, got 0 bytes
> --
> 2024-10-21T17:41:41.340+0200 7fad4c198700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898293, got 0 bytes
> 2024-10-21T17:41:41.340+0200 7fad4f19e700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898132, got 0 bytes
> --
> 2024-10-21T17:41:41.347+0200 7fad4e99d700 -1 osd.1004 2971464
failed to load OSD map for epoch 2899238, got 0 bytes
> 2024-10-21T17:41:41.347+0200 7fad4c999700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898132, got 0 bytes
>
> The loop seems to run longer and longer. Problem is though that
by the time it got here it already wrote like 1G log. The loop
seems to repeat over all epochs for each such iteration, so the log
output is quadratic in the number of epochs to catch up with. I
still have like 100000 to go and I doubt I have disks large enough
to collect the resulting logs. The logging probably also a total
performance killer.
>
> Is it possible to suppress the massive log spam so that I can let
it run until it is marked up? These messages seem not to be related
to a log level. If absolutely necessary, I could start the OSD
manually with logging to disk disabled.
>
> Thanks and best regards,
> =================
> Frank Schilder
> AIT Risø Campus
> Bygning 109, rum S14
>
> ________________________________________
> From: Dan van der Ster <dan.vanderster@xxxxxxxxx>
> Sent: Monday, October 21, 2024 9:03 PM
> To: Frank Schilder
> Cc: ceph-users@xxxxxxx
> Subject: Re: failed to load OSD map for epoch
2898146, got 0 bytes
>
> Hi Frank,
>
> Are you sure it's looping over the same epochs?
> It looks like that old osd is trying to catch up on all the osdmaps it
> missed while it was down. (And those old maps are probably trimmed
> from all the mons and osds, based on the "got 0 bytes" error).
> Eventually it should catch up to the current (e 2971464 according to
> your log), and then the PGs can go active.
>
> Cheers, Dan
>
> --
> Dan van der Ster
> CTO @ CLYSO
> https://clyso.com | dan.vanderster@xxxxxxxxx
>
>
>
>
> On Mon, Oct 21, 2024 at 9:13 AM Frank Schilder <frans@xxxxxx> wrote:
> >
> > Hi all,
> >
> > I have a strange problem on an octopus latest cluster. We had
a couple of SSD OSDs down for a while and brought them up today
again. For some reason, these OSDs don't come up and flood the log
with messages like
> >
> > osd.1004 2971464 failed to load OSD map for epoch 2898146, got 0 bytes
> >
> > These messages cycle through the same epochs over and over
again. I did not really fine too much help, there is an old thread
about a similar/the same problem on a home lab cluster, with new
OSDs though, I believe. I couldn't really find useful information.
The OSDs seem to boot fine and then end up in something like a
death loop. Below some snippets from the OSD log.
> >
> > Any hints appreciated.
> > Thanks and best regards,
> > Frank
> >
> > After OSD start, everything looks normal up to here:
> >
> > 2024-10-21T17:41:39.136+0200 7fad73cf6f00 0 osd.1004 2971464
load_pgs opened 205 pgs
> > 2024-10-21T17:41:39.140+0200 7fad73cf6f00 -1 osd.1004 2971464
log_to_monitors {default=true}
> > 2024-10-21T17:41:39.150+0200 7fad73cf6f00 -1 osd.1004 2971464
mon_cmd_maybe_osd_create fail: 'osd.1004 has already bound to class
'fs_meta', can not reset class to 'ssd'; use 'ceph osd crush
> > rm-device-class <id>' to remove old class first': (16) Device
or resource busy
> > 2024-10-21T17:41:39.155+0200 7fad519a3700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898132, got 0 bytes
> > 2024-10-21T17:41:39.155+0200 7fad511a2700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898132, got 0 bytes
> > 2024-10-21T17:41:39.155+0200 7fad511a2700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898133, got 0 bytes
> > 2024-10-21T17:41:39.155+0200 7fad511a2700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898134, got 0 bytes
> > 2024-10-21T17:41:39.155+0200 7fad511a2700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898135, got 0 bytes
> > 2024-10-21T17:41:39.155+0200 7fad511a2700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898136, got 0 bytes
> > 2024-10-21T17:41:39.155+0200 7fad4f99f700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898132, got 0 bytes
> > 2024-10-21T17:41:39.155+0200 7fad4f99f700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898133, got 0 bytes
> > 2024-10-21T17:41:39.155+0200 7fad4b196700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898132, got 0 bytes
> > 2024-10-21T17:41:39.155+0200 7fad4b196700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898133, got 0 bytes
> > 2024-10-21T17:41:39.155+0200 7fad4b196700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898134, got 0 bytes
> > 2024-10-21T17:41:39.155+0200 7fad4b196700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898135, got 0 bytes
> > 2024-10-21T17:41:39.155+0200 7fad4b196700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898136, got 0 bytes
> > 2024-10-21T17:41:39.155+0200 7fad4b196700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898137, got 0 bytes
> > 2024-10-21T17:41:39.155+0200 7fad73cf6f00 0 osd.1004 2971464
done with init, starting boot process
> > 2024-10-21T17:41:39.155+0200 7fad73cf6f00 1 osd.1004 2971464 start_boot
> > 2024-10-21T17:41:39.155+0200 7fad4b196700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898138, got 0 bytes
> > 2024-10-21T17:41:39.155+0200 7fad4b196700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898139, got 0 bytes
> > 2024-10-21T17:41:39.155+0200 7fad4b196700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898140, got 0 bytes
> > 2024-10-21T17:41:39.155+0200 7fad4b196700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898141, got 0 bytes
> > 2024-10-21T17:41:39.155+0200 7fad4b196700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898142, got 0 bytes
> > 2024-10-21T17:41:39.156+0200 7fad4b196700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898143, got 0 bytes
> > 2024-10-21T17:41:39.156+0200 7fad4b196700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898144, got 0 bytes
> > 2024-10-21T17:41:39.156+0200 7fad4b196700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898145, got 0 bytes
> > 2024-10-21T17:41:39.156+0200 7fad4b196700 -1 osd.1004 2971464
failed to load OSD map for epoch 2898146, got 0 bytes
> >
> >
> > These messages repeat over and over again with some others of
this form showing up every now and then:
> >
> > 2024-10-21T17:41:39.476+0200 7fad651ca700 4 rocksdb:
[db/compaction_job.cc:1332] [default] [JOB 12] Generated table
#82879: 76571 keys, 67866714 bytes
> > 2024-10-21T17:41:39.688+0200 7fad651ca700 4 rocksdb:
EVENT_LOG_v1 {"time_micros": 1729525299690000, "cf_name":
"default", "job": 12, "event": "table_file_creation",
"file_number": 82879, "file_size": 67866714, "table_properties":
{"data_size": 67111697, "index_size": 562601, "filter_size":
191557, "raw_key_size": 4823973, "raw_average_key_size": 63,
"raw_value_size": 62631087, "raw_average_value_size": 817,
"num_data_blocks": 15644, "num_entries": 76571,
"filter_policy_name": "rocksdb.BuiltinBloomFilter"}}
> >
> >
> > And another occasion:
> >
> > 2024-10-21T17:41:40.520+0200 7fad651ca700 4 rocksdb:
[db/compaction_job.cc:1332] [default] [JOB 12] Generated table
#82880: 76774 keys, 67868330 bytes
> > 2024-10-21T17:41:40.520+0200 7fad501a0700 -1 osd.1004 2971464
failed to load OSD map for epoch 2899234, got 0 bytes
> > 2024-10-21T17:41:40.520+0200 7fad501a0700 -1 osd.1004 2971464
failed to load OSD map for epoch 2899235, got 0 bytes
> > 2024-10-21T17:41:40.520+0200 7fad501a0700 -1 osd.1004 2971464
failed to load OSD map for epoch 2899236, got 0 bytes
> > 2024-10-21T17:41:40.520+0200 7fad651ca700 4 rocksdb:
EVENT_LOG_v1 {"time_micros": 1729525300521403, "cf_name":
"default", "job": 12, "event": "table_file_creation",
"file_number": 82880, "file_size": 67868330, "table_properties":
{"data_size": 67113021, "index_size": 562509, "filter_size":
191941, "raw_key_size": 4836742, "raw_average_key_size": 62,
"raw_value_size": 62623274, "raw_average_value_size": 815,
"num_data_blocks": 15630, "num_entries": 76774,
"filter_policy_name": "rocksdb.BuiltinBloomFilter"}}
> >
> > =================
> > Frank Schilder
> > AIT Risø Campus
> > Bygning 109, rum S14
> > _______________________________________________
> > ceph-users mailing list -- ceph-users@xxxxxxx
> > To unsubscribe send an email to ceph-users-leave@xxxxxxx
_______________________________________________
ceph-users mailing list -- ceph-users@xxxxxxx
To unsubscribe send an email to ceph-users-leave@xxxxxxx
_______________________________________________
ceph-users mailing list -- ceph-users@xxxxxxx
To unsubscribe send an email to ceph-users-leave@xxxxxxx