Briefly, this error occurs when Elasticsearch is trying to clean up a Google Cloud Storage (GCS) repository but the necessary base64_credentials are not provided. The base64_credentials are essential for authenticating the connection to GCS. To resolve this issue, you can either provide the base64-encoded service account JSON key in the elasticsearch.yml file or use the secure settings API to add the base64_credentials. Remember to restart Elasticsearch after making these changes.
This guide will help you check for common problems that cause the log ” base64_credentials option is required for cleaning up GCS repository ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: repository.
Log Context
Log “base64_credentials option is required for cleaning up GCS repository” class name is CleanupGCSRepositoryCommand.java. We extracted the following from Elasticsearch source code for those seeking an in-depth context :
protected void validate(OptionSet options) { super.validate(options); String encodedCredentials = base64CredentialsOption.value(options); if (Strings.isNullOrEmpty(encodedCredentials)) { throw new ElasticsearchException("base64_credentials option is required for cleaning up GCS repository"); } } @Override protected AbstractRepository newRepository(Terminal terminal; OptionSet options) throws IOException; GeneralSecurityException;