-
Oleksandr Kosse (EPAM) authored
Gonrg 5689 update dataloading process See merge request !1438
Oleksandr Kosse (EPAM) authoredGonrg 5689 update dataloading process See merge request !1438
Provisioning with custom versions of images or helm charts
NOTE: Check that you're in release branch (example release/0.22). Master branch can be unstable due to development.
This example illustrates how to install OSDU instance with specific versions of release images or helm charts on Baremetal Environment.
Some possible use-cases:
- You installed OSDU instance with release version
0.18
, and you need to deploy specific OSDU Service(s) with a new (or a previous) image version (with some fixes, for example) - You installed OSDU instance with release version
0.18
, and you need to deploy specific OSDU Service(s) with a new (or a previous) helm chart version (with some fixes, for example)
Installation with custom versions of images
Download the following files:
custom-values.yaml
custom-images.yaml
Create a separate directory
mkdir osdu-baremetal-custom-versions && cd osdu-baremetal-custom-versions
To determine the latest release version, run the following command:
tag=$(git ls-remote --tags https://community.opengroup.org/osdu/platform/deployment-and-operations/infra-gcp-provisioning.git | awk '{print $2}' | cut -d '/' -f 3 | cut -d 'v' -f2 | cut -d . -f1-2 | sort -V | tail -n 1)
For custom version of release, you need to redefine the tag you need, example: tag=0.22
tag=<put your version here>
After we have written the required value in the variable, execute the following command:
echo "tag: "$tag &&
curl -LO https://community.opengroup.org/osdu/platform/deployment-and-operations/infra-gcp-provisioning/-/raw/release/$tag/examples/osdu-baremetal-custom-versions/custom-values.yaml &&
curl -LO https://community.opengroup.org/osdu/platform/deployment-and-operations/infra-gcp-provisioning/-/raw/release/$tag/examples/osdu-baremetal-custom-versions/custom-images.yaml
To override versions of images that is set in Services helm charts' with custom-images.yaml fill in the required values as described in the example:
# Example how to override a current version of image for Legal Service and set it to `v0.19.0`
gc_legal_deploy:
data:
image: "community.opengroup.org:5555/osdu/platform/security-and-compliance/legal/gc-legal:v0.19.0"
bootstrapImage: "community.opengroup.org:5555/osdu/platform/security-and-compliance/legal/gc-bootstrap-legal:v0.19.0"
# Example how to override a current version of image for File Service and set it to `v0.19.0`
gc_file_deploy:
data:
image: "community.opengroup.org:5555/osdu/platform/system/file/gc-file:v0.19.0"
custom-images.yaml
is an extendible file. If you need to change images for a set of Services, you should add required values for the set of Services there.
The command for deploying with custom-images.yaml
:
helm install -f custom-images.yaml osdu-baremetal osdu-baremetal oci://community.opengroup.org:5555/osdu/platform/deployment-and-operations/infra-gcp-provisioning/gc-helm/osdu-gc-baremetal
Installation with custom values and custom versions of images
It is possible to override main values.yaml 1 with custom-values.yaml and custom-images.yaml.
Prepare custom-values.yaml file by example. It is needed to use only alphanumerical characters and at least 8 symbols for passwords.
Name | Description | Type | Default | Required |
---|---|---|---|---|
global.domain 2 | DNS name for OSDU installation | string | none | yes |
keycloak.auth.adminPassword | Password for keycloak admin user | string | none | yes |
minio.auth.rootPassword | Password for minio root user | string | none | yes |
postgresql.global.postgresql.auth.postgresPassword | Password for postgres database | string | none | yes |
airflow-database-password | Password for airflow database | string | none | yes |
airflow.auth.password | Password for airflow admin user | string | none | yes |
rabbitmq.auth.password | Password for rabbitmq admin user | string | none | yes |
elasticsearch.security.elasticPassword | Password for ElasticSearch instance | string | none | yes |
NOTE:
-
Starting from version 0.24.x, we've stopped using the Policy service to validate requests from other services by default. To change this behavior you need to set policy_enabled variable to true.
-
Parameter that enables upload of the sample storage data
data_bootstrap_enabled
No longer supported in with basic installation, use a separate helm to load the date Data Bootstrap Helm Chart -
gc_storage_deploy.data.opaEnabled
-
gc_search_deploy.data.servicePolicyEnabled
To install helm chart use the command:
helm install -f custom-values.yaml -f custom-images.yaml osdu-baremetal oci://community.opengroup.org:5555/osdu/platform/deployment-and-operations/infra-gcp-provisioning/gc-helm/osdu-gc-baremetal
Installation with custom version of Helm chart
To install the Helm chart of a specific version(for example 0.19.3) use the --version
flag:
helm install osdu-baremetal oci://community.opengroup.org:5555/osdu/platform/deployment-and-operations/infra-gcp-provisioning/gc-helm/osdu-gc-baremetal --version 0.19.3
To install the Helm chart with the latest patch of a specific version(for example 0.19) use the following command:
helm install osdu-baremetal oci://community.opengroup.org:5555/osdu/platform/deployment-and-operations/infra-gcp-provisioning/gc-helm/osdu-gc-baremetal --version 0.19.x
All available versions can be found here.
-
Minio, by default, uses the Single-Node Single-Drive ("Standalone") mode without Persistent Volumes. To use the Multi-Node Multi-Drive ("Distributed") mode, change the
mode
variable to "distributed" in the values.yaml file. ↩ -
If you do not have a domain name you can use "<loadBalancerIP>.nip.io" as your domain name. LoadBalancerIP could be found with the command:
kubectl -n istio-gateway get svc istio-ingressgateway -o jsonpath={.status.loadBalancer.ingress[].ip}
You can find more information about using nip.io as a domain here ↩