ES cluster is down: indexing is not supported on a read-only engine

I suspect at some point you may have ran out of disk space even though there is disk space now. What happens is elastic goes into read-only mode. Now you will need to reset that read-only mode.

https://www.elastic.co/guide/en/elasticsearch/reference/7.4/disk-allocator.html

https://www.elastic.co/guide/en/elasticsearch/reference/7.4/index-modules.html

PUT /your_index/_settings
{
  "index.blocks.read_only_allow_delete": null,
  "index.blocks.read_only": false
}

Clarification : false sets the setting to false and null remove the setting from the dynamic settings thus cleaning up unnecessary metadata. They have the same result on the index but null ends up with less clutter.

You may need to run that on multiple indices.

Also do you have any frozen indices that you are attempting to index too?
If you are trying to index into a frozen index which normally responds with blocked by: [FORBIDDEN/8/index write (api)] because by default frozen indices have index.blocks.write: true, but if you remove that block then you may get the exception you are seeing.