Skip to content
This repository has been archived by the owner on Feb 8, 2024. It is now read-only.

Releases: Seagate/cortx-k8s

CORTX K8s Release v0.13.0

15 Sep 21:28
45a3620
Compare
Choose a tag to compare

The latest released code v0.13.0 from CORTX K8s is available at https://github.com/Seagate/cortx-k8s on the main branch. This release has been verified with:
ghcr.io/seagate/cortx-data:2.0.0-950
ghcr.io/seagate/cortx-rgw:2.0.0-950
ghcr.io/seagate/cortx-control:2.0.0-950

Changes in v0.13.0:

  • Improvement to logging utilities
    • Improve options for logs-cortx-cloud.sh (CORTX-34174)
    • New utility: get-logs-from-pvc.sh, to get contents from a PVC when the associated pod is not running (CORTX-34141)
  • Updates to status-cortx-cloud.sh
    • Fix regression in data-only deployment (CORTX-34189)
    • Fix issue when nodes are tainted with NoSchedule (CORTX-34284)
  • New tool get-logs-from-pvc.sh to get contents of PVC when a Pod is offline (CORTX-32645)
  • Remove all deprecated code (CORTX-34139)

Removal of deprecated items notice: In this release (v0.13.0), all previously deprecated items have been removed removed.

  • Uninstallation of deprecated items is no longer performed in destroy-cortx-cloud.sh. All of these items are either installed by the unified CORTX Chart, or are not used at all. To avoid any potential issues during uninstallation, first uninstall your cluster with the v0.12.0 script version before upgrading to v0.13.0, or manually clean up any leftover resources.

    • This includes:
      • Client Helm releases
      • HA Helm release
      • Server Helm releases
      • Data Helm releases
      • Control Helm release
      • Platform Helm release
      • CORTX-Configmap Helm release
      • machine-id and SSL certificate ConfigMap resources
      • The cortx-data-blk-data-${namespace} Helm release (this is replaced by a release named cortx-block-data)
      • OpenLDAP Helm release
      • Consul Helm release
      • Kafka Helm release
      • ZooKeeper Helm release
      • The cortx-io-svc Service (this is replaced by a Service named cortx-server-0)
  • Deprecated services will be no longer be installed in new deployments. If you rely on these service names you must transition to the new names. You can see the list of deprecated services installed in your cluster by running the command kubectl -n $NAMESPACE get all -l cortx.io/deprecated=true.

    • The cortx-loadbal-svc Service has been replaced by cortx-control.
    • The cortx-io-svc-0 Service has been replaced by cortx-server-0.
  • The status-cortx-cloud.sh script has a filter for deprecated services. This filter will no longer be used. If any deprecated services still exist, the script will report a problem.

What's Changed

Full Changelog: v0.12.0...v0.13.0

CORTX K8s Release v0.12.0

01 Sep 18:11
6c1aae5
Compare
Choose a tag to compare

The latest released code v0.12.0 from CORTX K8s is available at https://github.com/Seagate/cortx-k8s on the main branch. This release has been verified with:
ghcr.io/seagate/cortx-data:2.0.0-933
ghcr.io/seagate/cortx-rgw:2.0.0-933
ghcr.io/seagate/cortx-control:2.0.0-933

Changes in v0.12.0:

  • Support external SSL secret (CORTX-33018, see documentation)
  • New tool get-logs-from-pvc.sh to get contents of PVC when a Pod is offline (CORTX-32645)
  • Improve logs-contrx-cloud.sh error handing (CORTX-33534)
  • Add check for CORTX already deployed in deploy script (CORTX-31017)
  • Updates to the glossary

Removal of deprecated items notice: In the next release (v0.13.0), all deprecated items will be removed.

  • Uninstallation of deprecated items is no longer performed in destroy-cortx-cloud.sh. All of these items are either installed by the unified CORTX Chart, or are not used at all. To avoid any potential issues during uninstallation, first uninstall your cluster with the v0.12.0 script version before upgrading to v0.13.0, or manually clean up any leftover resources.

    • This includes:
      • Client Helm releases
      • HA Helm release
      • Server Helm releases
      • Data Helm releases
      • Control Helm release
      • Platform Helm release
      • CORTX-Configmap Helm release
      • machine-id and SSL certificate ConfigMap resources
      • The cortx-data-blk-data-${namespace} Helm release (this is replaced by a release named cortx-block-data)
      • OpenLDAP Helm release
      • Consul Helm release
      • Kafka Helm release
      • ZooKeeper Helm release
      • The cortx-io-svc Service (this is replaced by a Service named cortx-server-0)
  • Deprecated services will be no longer be installed in new deployments. If you rely on these service names you must transition to the new names. You can see the list of deprecated services installed in your cluster by running the command kubectl -n $NAMESPACE get all -l cortx.io/deprecated=true.

      The `cortx-loadbal-svc` Service has been replaced by `cortx-control`.
      The `cortx-io-svc-0` Service has been replaced by `cortx-server-0`.
    
  • The status-cortx-cloud.sh script has a filter for deprecated services. This filter will no longer be used. If any deprecated services still exist, the script will report a problem.

What's Changed

Full Changelog: v0.11.0...v0.12.0

CORTX K8s Release v0.11.0

19 Aug 19:27
c54d8c0
Compare
Choose a tag to compare

The latest released code v0.11.0 from CORTX K8s is available at https://github.com/Seagate/cortx-k8s on the main branch. This release has been verified with:
ghcr.io/seagate/cortx-data:2.0.0-902
ghcr.io/seagate/cortx-rgw:2.0.0-902
ghcr.io/seagate/cortx-control:2.0.0-902

Critical change: F-87N: CORTX-K8s: Consul Support for GCONF (CORTX-33054)

  • This change brings the cortx-k8s contribution to the “Consul Support for GCONF” project.
  • This does not introduce any interface changes – all changes are related to internal config changes
  • This requires CORTX version 2.0.0-902 or later.

Other documentation update included:

Full Changelog: v0.10.0...v0.11.0

CORTX K8s Release v0.10.0

16 Aug 00:29
7a920e1
Compare
Choose a tag to compare

The latest released code v0.10.0 from CORTX Services is available at https://github.com/Seagate/cortx-k8s on the main branch. This release has been verified with:
ghcr.io/seagate/cortx-data:2.0.0-895
ghcr.io/seagate/cortx-rgw:2.0.0-895
ghcr.io/seagate/cortx-control:2.0.0-895

Key changes:

  • F-26C: Highly Available cortx-control pods:
    • In Helm chart, specify control.replicaCount to create multiple cortx-control pods. (Default is 1 replica, which is no change from previous.)
    • This change also allows failed cortx-control pods to be replaced on any node (not bound to a single node)
    • See the description of CORTX-32842 for detailed instructions.
  • CORTX-33135: Verbose K8s logging for cortx-control containers
    • By specifying global.cortx.setupLoggingDetail = “all” (or “component”) in values.yaml, all lines logged to various log files internal to the container are sent to stdout so that they are readily accessible via kubectl logs.
    • (More fine-grained logging options are also available. See github README for details.)
  • CORTX-33749: Workaround for conntrack table issues
    • One source of IO stability has the symptom of “connection resets” on stressful workloads.
    • Saurabh identified the problem earlier. This fix implements the solution as part of prereq-deploy-cortx-cloud.sh plus accompanying documentation.
    • (Technically this is not a CORTX/K8s issue, but is a configuration that must be present in the environment.)
  • CORTX-27411: Add global image options
    • In Helm chart, allow general image pull policy, registration, and tag to be specified in a single, global location (rather than repeated with each image)

What's Changed

Full Changelog: v0.9.0...v0.10.0

v0.9.0

20 Jul 23:48
910e57e
Compare
Choose a tag to compare

The latest released code v0.9.0 from CORTX Services is available at https://github.com/Seagate/cortx-k8s on the main branch. This release has been verified with:
ghcr.io/seagate/cortx-data:2.0.0-871
ghcr.io/seagate/cortx-rgw:2.0.0-871
ghcr.io/seagate/cortx-control:2.0.0-871

This is a major release that includes multiple data pods per node and refactored Helm charts. Note that the solution.example.yaml format has changes that are not compatible with previous versions.

Key changes:

  • F-87I: Multiple data pods per node: With multiple CVGs defined in the storage section, multiple cortx-data pods will be created (see below or cortx-k8s/README.md for details)
  • F-87J: Helm Chart Refactor: Though changes in solution.yaml are minor, the Helm charts that implement CORTX deploy have undergone a major refactoring. The most significant effect from a user perspective is that all K8s resources are created at once and then transition to ready dependencies are resolved. Besides a significant reduction in deploy complexity, this also allows CORTX to deploy faster.

Other changes:

  • CORTX-32355: Increase Consul default resources
  • CORTX-33050: Add support for Motr log devices (not yet supported in motr)
  • CORTX-33598: Updated max namespace length to 20 characters
  • CORTX-31831: Probes to avoid initial Kafka restarts
  • CORTX-29838: Fix containerPort off-by-one
  • number of cortx-server pods is configurable via the solution.common.s3.instances_per_node setting. (default=1)

Key Changes in solution.yaml file
The primary change is the structure of the storage_sets section:

  • “nodes” now specifies a simple list of worker nodes to deploy cortx on
  • “storage” is a list of CVGs.
    • CVGs will be deployed across multiple pods, as determined by the number of CVGs and the “container_group_size” setting. If container_group_size is 1, then each CVG is deployed as a separate cortx-data StatefulSet / Pod.
    • Format of metadata and data sections is slightly different. See solution.example.yaml.
  • The “storage_sets” section is now formatted as a list, even though CORTX at this time supports only a single storage set.

What's Changed

New Contributors

Full Changelog: v0.8.0...v0.9.0

v0.8.0

25 Jun 22:31
d680cda
Compare
Choose a tag to compare

The latest released code v0.8.0 from CORTX Services is available at https://github.com/Seagate/cortx-k8s on the main branch. This release has been verified with:
ghcr.io/seagate/cortx-data:2.0.0-837
ghcr.io/seagate/cortx-rgw:2.0.0-837
ghcr.io/seagate/cortx-control:2.0.0-837

This is a release with just a couple of minor changes:

  • CORTX-32063 / CORTX-27442: Parallelize support_bundle creation so that all pods are done in parallel, significantly reducing support bundle creation, especially for large clusters.
  • CORTX-32320: Documentation updates to clarify how to specify upgrade images

What's Changed

  • CORTX-32063: Parallelize support-bundle generation (#291)
  • CORTX-32320: Update docs for upgrade to clarify how images are used (#292)

Full Changelog: v0.7.0...v0.8.0

v0.7.0

06 Jun 22:15
2e0a85e
Compare
Choose a tag to compare

The latest released code v0.7.0 from CORTX Services is available at https://github.com/Seagate/cortx-k8s on the main branch. This release has been verified with:

ghcr.io/seagate/cortx-data:2.0.0-803
ghcr.io/seagate/cortx-rgw:2.0.0-803
ghcr.io/seagate/cortx-control:2.0.0-803

Kubernetes change you should be aware of: With this release the reclaim policy for local-path storage (Rancher) is changed from retain to Delete. This means that when a persistent volume is deleted (as it is by destroy-cortx-cloud.sh), the underlying directory that was created for the PV (e.g. /mnt/fs-local-volume/local-path-provisioner/pvc-xxxxx) is removed.

This means:

  • You no longer have to worry about filling up your local disk space with old directories! Hooray!
  • But as you transition to using this don’t forget:
    • Manually delete the existing local-storage storage class (“kubectl delete sc local-path”). The next time you deploy a new local-storage storage class will be created, now with the “Delete” reclaim policy.
    • Manually remove old directories from previous runs… these will not be retroactively removed

Key changes in this release:

  • Support for granular cortx images (cortx-data/-control/-rgw). (CORTX-28340)
  • Change retain policy from Retain to Delete for local-path storage. This is described in the note above. (CORTX-30684)
  • Support bundle options added to log-cortx-cloud.sh. All support_bundle options are now available through logs-cortx-cloud.sh, and are passed through to /var/cortx/support_bundle. (CORTX-30473; thank you Rohit Dwivedi for your contribution!)

What's Changed

  • Bump VERSION to v0.7.0
  • Bump CORTX images to build 803 (#271)
  • CORTX-32041: configure HAX http endpoint correctly (#270)
  • CORTX-30473: add support bundle filters to logs-cortx-cloud.sh (#259)
  • Tested and added name to tested by section (#257)
  • CORTX-28340: Update cortx-k8s to use new cortx-data/-control images (#262)
  • CORTX-30684: change retain policy to Delete for local-path storage (#260)

v0.6.0

19 May 19:44
Compare
Choose a tag to compare

The latest released code v0.6.0 from CORTX Services is available at https://github.com/Seagate/cortx-k8s on the main branch. This release has been verified with:

  • ghcr.io/seagate/cortx-all:2.0.0-775
  • ghcr.io/seagate/cortx-rgw:2.0.0-775

Note: Starting with this release yq (min version v4.25.1) must be to be installed on the system and in the PATH prior to running any of the *-cortx-cloud.sh scripts. (Previously a copy of yq was included in the report, but this has now been removed.) Here are yq installation instructions.

Key changes in this release:

  • Expose CPU & Memory limits through solution.yaml. CORTX-31350. This allows you to specify requests/limits for each container via solution.yaml. See PR#248 for details.
  • Add NODE_NAME and POD_NAME to runtime env vars in each pod. This injecets the pods name and k8s worker node into container environment variables to support future changes to provisionwer work in initContainers. See PR#251.
  • yq has been removed from the cortx-k8s repo. yq is a large binary executable, which does not belong in our git repo. CORTX-28885. As the documentation now states, yq is a prerequisite to running CORTX with this release.

Other changes are incremental work toward supporting a unified CORTX helm chart, which will be available in a future release.

What's Changed

  • CORTX-30140: Kafka managed as cortx Helm Chart dependency by @keithpine in #233
  • CORTX-30141: Remove CORTX secrets custom template file by @keithpine in #232
  • CORTX-30140: Zookeeper managed as cortx Helm Chart dependency by @keithpine in #236
  • CORTX-28885: Remove yq binary from project by @keithpine in #240
  • CORTX-30785: Fixing the Alex bug by @mukul-seagate11 in #242
  • CORTX-30141: Merge cortx-configmap Chart into cortx Chart by @keithpine in #239
  • CORTX-31113: Use forked actions by @keithpine in #244
  • CORTX-30141: Merge cortx-platform Chart into cortx Chart by @keithpine in #245
  • CORTX-30142: Remove machine-id config maps by @keithpine in #249
  • CORTX-31350: Expose Cpu & Memory limits for all CORTX Services by @osowski in #248
  • Add default lintconf.yaml for chart testing by @keithpine in #250
  • CORTX-31408: Add NODE_NAME and POD_NAME to runtime env vars in each Pod by @osowski in #251
  • Mention required yq version by @keithpine in #253
  • fix missing namespace during chart install by @keithpine in #254

Full Changelog: v0.5.0...v0.6.0

v0.5.0

05 May 22:59
Compare
Choose a tag to compare

The latest released code v0.5.0 from CORTX Services is available at https://github.com/Seagate/cortx-k8s on the main branch. This release has been verified with:

  • ghcr.io/seagate/cortx-all:2.0.0-756
  • ghcr.io/seagate/cortx-rgw:2.0.0-756

Note: This release requires Kubernetes v1.22 or later.

Key change in this release:

  • Allow adjustable timeouts in deploy-cortx-cloud.sh. CORTX-31239. This is a change that allows the test team to work around CORTX-29667. The timeouts for waiting for CORTX helm charts to install can now be overridden by environment variables. (See note here.)

This release also includes:

  • Bug fix: CORTX-31043: Abort deploy script if the specified namespace has unsupported characters.

What's Changed

New Contributors

Full Changelog: v0.4.0...v0.5.0

CORTX Services Release v0.4.0

22 Apr 19:36
Compare
Choose a tag to compare

The latest released code v0.4.0 from CORTX Services is available at https://github.com/Seagate/cortx-k8s on the main branch. This release has been verified with:

  • ghcr.io/seagate/cortx-all:2.0.0-735
  • ghcr.io/seagate/cortx-rgw:2.0.0-735

Key Changes

  • Fix CORTX-20971: Sev 1 unable to deploy system due to helm chart change.
    • The root cause of this is that the Consul Helm chart was updated. Since the CORTX deploy script pulls on the latest helm chart, there was a configuration incompatibility and deploy failed. The fix is to pin the helm chart version to a known, verified, working version rather than assuming “latest” will always work. (This issue is being considered as we refactor CORTX helm charts.)
  • Fix CORTX-29869: Support specified namespace for cortx-client pods.
  • Add rgw_s3 service for RGW component in cluster config file

What's Changed

  • CORTX-30708: Fix shellcheck issues in parse scripts by @keithpine in #213
  • CORTX-30708: Fix shellcheck issues in solution-validation.sh by @keithpine in #212
  • CORTX-30781 Add regression test for default vs other namespace by @walterlopatka in #214
  • CORTX-29723: remove mocking from cortx-client-pod init container by @tanujashinde0405 in #181
  • CORTX-29807 Update README.md with granular data-only deployment by @zahidsk in #211
  • CORTX-30943: Support specified namespace for cortx-client pods by @walterlopatka in #216
  • CORTX-29869: Add rgw_s3 service for RGW component in cluster config file by @tanujashinde0405 in #200
  • CORTX-30971: Pin helm chart release versions by @walterlopatka in #218
  • CORTX-27408 - Updated kafka image version by @osowski in #219

Full Changelog: v0.3.0...v0.4.0