In this section
v6.14.0
🚨 Upgrade Notices
-
Updated Console's default config to change the default Keycloak host config from
login.<domain>tokeycloak.<domain>. SmoothGlue Build environments use thekeycloak.<domain>host by default when deploying Keycloak. If deploying Keycloak underlogin.<domain>the following can be added to thebigbang-values.yamlto configure Console to use the overwritten host for Keycloak:packages:console:values:keycloak:host: login.<domain> -
This upgrade includes a major version update to Keycloak. The full migration guide for Keycloak
26.0.0is located here. Specific changes of note:-
If you are currently setting the
KC_PROXYenvironment variable toedgeusing the.addons.keycloak.values.secrets.envvalue, note that this option has been removed. It has been replaced byKC_PROXY_HEADERSoption, which should be set automatically if the value.addons.keycloak.values.proxy.enabledis set totrue.addons:keycloak:values:proxy:enabled: true
-
-
Keycloak may fail to upgrade.
- To resolve this, reconcile the helm release and then delete the pods within the keycloak namespace.
flux reconcile hr -n bigbang keycloak --with-source --forcekubectl delete pods -n keycloak- Alternately, scale the keycloak pod replica count to 1 by editing the Horizontal Pod Autoscaler before starting the upgrade.
kubectl patch hpa -n keycloak keycloak -p "{\"spec\":{\"minReplicas\":1,\"maxReplicas\":1}}"And then scale it back up once done with the upgrade, for example.
kubectl patch hpa -n keycloak keycloak -p "{\"spec\":{\"minReplicas\":2,\"maxReplicas\":5}}" -
The SmoothGlue EKS IaC's
zarf-configoutput now includes Zarf variables for AWS and a variable forCLUSTER_NAME. When using the auto-SSO feature, please ensure the variables in the outputtedzarf-configare merged with customer-managedzarf-config's to ensure Keycloak client names are configured properly.
📦 SmoothGlue Features
- SmoothGlue Automated SSO:
- SmoothGlue now automatically configures the
_structusureAdminsgroup with the appropriate Keycloak permissions to manage thesmoothgluerealm. - SmoothGlue now automatically configures cluster-level prefixes onto Keycloak clients managed by SmoothGlue. This change will enable future work to allow a SmoothGlue Run's SSO clients to be managed by SmoothGlue. Some applications may need to be manually restarted to pickup the new SSO client names.
- SmoothGlue now automates the creation of the Keycloak objects for SonarQube. There are still some manual steps required by System Integrators to enable SSO for SonarQube. Please see updated documentation.
- SmoothGlue will automatically configure a Keycloak client and automatically configure the application for:
- Gitlab
- Mattermost
- Console
- SmoothGlue will automatically configure a Keycloak client for:
- Confluence
- Jira
- SmoothGlue now automatically configures the
- This release updates the styling and branding of the SmoothGlue Keycloak theme. Notably, the theme now includes a configurable terms of use banner which can be configured on a per-realm basis. This feature is not enabled by default; to configure the terms of use banner, follow these steps:
- Log into Keycloak's admin console and select the realm you wish to modify.
- Navigate to "Realm Settings" -> "Localization" -> "Realm Overrides".
- Click the "Add Translation" button to add a translation with the key "termsText". The value should be the text of your Terms of Use banner. This field supports HTML tags.
⏩ Upgraded Packages
- This release of SmoothGlue Enterprise v6.14.0 includes Big Bang Version 2.51.0. For more details on the features and updates included in Big Bang Version 2.51.0, please refer to the Big Bang release notes.
- Kiali stays pinned to the earlier 2.50.0 version of v2.6.0 due to a failure seen in latest version.
🐞 Bug Fixes
- Docusaurus and Tailwind config to support dark mode by default. Updated global footer to add a label for the legal links.
❗ Known Issues
-
The following only applies to the initial deployment of the SmoothGlue IAC. No action is required for updates to already deployed clusters - Due to an upstream issue for the EKS module and when deploying a cluster using an AL2023 AMI, the System Integrator will need to manually generate and set a Zarf registry pull password. The following config can be added to the
env.hclfile:locals {cluster_inputs = {zarf_registry_pull_password = "securepassword123"}} -
When using a network load balancer (NLB) with the
preserve_client_ipoption enabled, the default routing rules for EKS nodes prevent nodes from accessing platform services hosted on the same node, which can cause failures when logging into Keycloak, particularly on clusters with fewer nodes.- More specifically, the default routing rules for nodes do not route traffic to the VPC router for traffic within the node’s local subnet, since these addresses should theoretically be reachable directly by the node. However, when using the
preserve_client_ipoption, the VPC router rewrites the source IP for traffic; when the node attempts to talk to the NLB, the traffic is rewritten so that it appears to come from the node itself, and the return traffic is not able to be routed correctly back to the NLB. - The following options are potential workarounds:
- Disabling the
preserve_client_ipoption on the NLB will resolve the issue at the cost of losing source attribution for incoming traffic. - Removing the local subnet route on nodes will resolve the issue at the cost of increasing the amount and cost of traffic being routed through the VPC router.
- Increasing the node count for the cluster will reduce the likelihood of the issue because it will become less likely for any given traffic to be routed back to the original node.
- Disabling the
- More specifically, the default routing rules for nodes do not route traffic to the VPC router for traffic within the node’s local subnet, since these addresses should theoretically be reachable directly by the node. However, when using the
-
The Big Bang Istio Helm chart has a bug that prevents Istio Gateway deployments from properly being upgraded. During an upgrade, Istio Gateway deployments may get stuck as a result and will need manual intervention to complete the upgrade. To validate the issue in the cluster, check the health of the
istiooperators.install.istio.ioresource as follows:kubectl get istiooperators.install.istio.io -n istio-systemIf it is in
Errorstatus, delete all Istio Gateway deployments in theistio-systemnamespace to allow the Istio Operator to finish reconciling the upgrade and report aHealthystatus. The deployments will be recreated automatically by the Istio Operator. For example:kubectl delete deployment.apps/admin-ingressgateway -n istio-systemkubectl delete deployment.apps/passthrough-ingressgateway -n istio-systemkubectl delete deployment.apps/public-ingressgateway -n istio-systemNote: Deleting the deployments will entail some brief but non-zero downtime.
https://repo1.dso.mil/big-bang/product/packages/istio-controlplane/-/issues/253 has been opened to track this issue, which was introduced in SmoothGlue 6.7 (Big Bang 2.44)
🌐 Compatibility
- The packages for this release were built using Zarf v0.46.0.
- The packages were tested across the following Kubernetes distributions:
- RKE2: v1.30.11+rke2r1
- K3s: v1.32.3+k3s1
- EKS: v1.30.9-eks-5d632ec
🔗 Helpful Links
- Refer to the SmoothGlue documentation for additional guidance.
- For details on the Big Bang release, see the Big Bang Release Notes.