How to install Reposity GCS Plugin Offline?

Opensearch : 2.3 / 2.2 / 1.2.3

Hey All,

It’s possible to install manually (and offline), repository GCS plugin to take Snapshot in Google Bucket ?

I don’t find the distribution ZIP ? To perform bin/opensearch-plugin install -b file:///usr/share/opensearch/plugins/repository-gcs.zip for example.

Maybe you have a procedure to build it easy without developper skills ?

Thanks for all

Gnary

Hi @GnarlyCapricorne , the repository-gcs is one of the core plugins which is bundled with OpenSearch distribution, you should be able to install it by name:

bin/opensearch-plugin install repository-gcs

But if you need the distribution, you could download it from https://artifacts.opensearch.org/releases/plugins/, the URL pattern is https://artifacts.opensearch.org/releases/plugins/<plugin-name>/<version>/<plugin-name>-<version>-zip

For example, for repository-gcs plugin version 2.4.1 the location is:

https://artifacts.opensearch.org/releases/plugins/repository-gcs/2.4.1/repository-gcs-2.4.1.zip

Hope it helps.

Hi Reta

Sorry for my late response.

In 2.3.0, it seems not include by default :

Exception in thread "main" java.net.UnknownHostException: artifacts.opensearch.org

Here the defautl list :

bin/opensearch-plugin list
opensearch-alerting
opensearch-anomaly-detection
opensearch-asynchronous-search
opensearch-cross-cluster-replication
opensearch-geospatial
opensearch-index-management
opensearch-job-scheduler
opensearch-knn
opensearch-ml
opensearch-notifications
opensearch-notifications-core
opensearch-observability
opensearch-performance-analyzer
opensearch-reports-scheduler
opensearch-security
opensearch-sql

I will try you your proposition.

Thanks

It works.

I tested quickly and snapshot don’t work currently.

I think the problem comes from the proxy that allows us to contact S3. ( we are in an area with no external connection).

I will continue to find the way !

In opensearch.yml of manager nodes :

#Real S3 endpoint
s3.client.default.endpoint: s3-private.company.eu

#Protocole HTTP used by our inbound proxy 
s3.client.default.protocol: http

#Alias DNS to contact our proxy
s3.client.default.proxy.host: s3-redirect.internal
s3.client.default.proxy.port: 9098

I also import in opensearch.keystore secret and access key for S3. (For information, we don’t use opensearch.keystore in configuration but pem certificates. Maybe that will be a problem)

echo acceskeyxyz | bin/opensearch-keystore add s3.client.default.access_key
echo secretkeyxyz |bin/opensearch-keystore add s3.client.default.secret_key

I restart All nodes.

First probleme i see, proxy.username and proxy.password is missing in logs at startup. But our internal Proxy don’t use username/password.

I don’t know how to work around this problem. Except add a user/password on internal proxy.

I will come back to you to keep you informed