Release Notes
0.0.0
Prelude
Creating the foundation for the stable branch.
Initial release of a genestack installer for Rackspace OpenStack environments
New Features
-
Kubernetes deployment and management with Kubespray. This release uses Kubernetes 1.30.x and Kubespray 2.27.0.
-
Kube-OVN CNI plugin is supported in this release. Kube-OVN can be deployed to provide networking services to the Kubernetes cluster.
-
Prometheus monitoring with the Prometheus Operator. This release uses Prometheus Operator to deploy and manage Prometheus, which is used for system monitoring and alerting.
-
Kubernetes PVC Storage with Rook Ceph is supported in this release. Rook Ceph can be deployed internal to the Kubernetes cluster to provide persistent storage options.
-
Kubernetes PVC Storage with Rook Ceph is supported in this release. Rook Ceph can be deployed external to the Kubernetes cluster to provide persistent storage options.
-
Kubernetes PVC Storage with NFS is supported in this release. NFS can be deployed external to the Kubernetes cluster to provide persistent storage options.
-
Kubernetes PVC Storage with TopoLVM is supported in this release. TopoLVM can be deployed internal to the Kubernetes cluster to provide persistent storage options.
-
Kubernetes PVC Storage with Longhorn (recommended) is supported in this release. Longhorn can be deployed internal to the Kubernetes cluster to provide persistent storage options.
-
MetalLB LoadBalancer is supported in this release. MetalLB can be deployed to provide LoadBalancer services to the Kubernetes cluster. This is used by default for VIP address functionality within platform service loadbalancers.
-
NGINX Gateway API is supported in this release. NGINX Gateway API can be deployed to provide Gateway services to the Kubernetes cluster. This is used by default for all internal services and external ingress into the platform services.
-
MariaDB Operator is supported in this release. MariaDB Operator can be deployed to provide database services to the Kubernetes cluster. This is used by default for OpenStack Services
-
Postgres Operator is supported in this release. The Zalando Postgres Operator can be deployed to provide database services for applications. This is used by default for OpenStack metering services.
-
RabbitMQ Operator is supported in this release. RabbitMQ Operator can be deployed to provide message queue services to the Kubernetes cluster. This is used by default for OpenStack Services.
-
Memcached is supported in this release. Memcached can be deployed to provide fast caching services to the Kubernetes cluster. This is used by default for OpenStack Services.
-
Libvirt is supported in this release for virtualization. Libvirt can be deployed to provide virtualization services to the Kubernetes cluster. This is used by default for OpenStack Services.
-
OVN for OpenStack is supported in this release. OVN is deployed to provide networking services to OpenStack Consumers and is default for OpenStack.
-
Log collection is supported in this release. Fluentbit can be deployed to provide log collection services to the Kubernetes cluster. This is used by default for all services.
-
Log aggregation is supported in this release. Loki can be deployed to provide log aggregation services to the Kubernetes cluster. This is used by default for all services.
-
OpenStack Keystone is supported in this release. OpenStack Keystone can be deployed to provide identity services for OpenStack and is used by default.
-
OpenStack Glance is supported in this release. OpenStack Glance can be deployed to provide image services for OpenStack and is used by default.
-
OpenStack Heat is supported in this release. OpenStack Heat can be deployed to provide orchestration services for OpenStack and is used by default.
-
OpenStack Barbican is supported in this release. OpenStack Barbican can be deployed to provide key management services for OpenStack and is used by default.
-
OpenStack Cinder is supported in this release. OpenStack Cinder can be deployed to provide block storage services for OpenStack and is used by default.
-
OpenStack Placement is supported in this release. OpenStack Placement can be deployed to provide resource management services for OpenStack and is used by default.
https://docs.rackspacecloud.com/openstack-compute-kit-placement/
-
OpenStack Nova is supported in this release. OpenStack Nova can be deployed to provide compute services for OpenStack and is used by default.
-
OpenStack Neutron is supported in this release. OpenStack Neutron can be deployed to provide networking services for OpenStack and is used by default.
https://docs.rackspacecloud.com/openstack-network-kit-neutron/
-
OpenStack Skyline is supported in this release. OpenStack Skyline can be deployed to provide dashboard services for OpenStack and is used by default.
-
OpenStack Octavia is supported in this release. OpenStack Octavia can be deployed to provide load balancing services for OpenStack and is used by default.
-
OpenStack Magnum is supported in this release. OpenStack Magnum can be deployed to provide container orchestration services for OpenStack and is used by default.
-
OpenStack Ceilometer is supported in this release. OpenStack Ceilometer can be deployed to provide telemetry services for OpenStack and is used by default.
-
Gnocchi is supported in this release. Gnocchi can be deployed to provide metric services for OpenStack and is used by default within the metering stack.
-
Grafana is supported in this release. Grafana can be deployed to provide metric visualization services for OpenStack and is used by default within the metering stack.
-
Service metric collection is supported in this release and is interconnected with prometheus and grafana to provide metric visualization services throughout the cluster.
- Supported Exporters:
-
- Kube-OVN
- NGINX Gateway Fabris
- RabbitMQ
- Memcached
- MariaDB
- Postgres
- OpenStack
- Blackbox
- Pushgateway
Dashboards are all pre-configured for all supported exporters and visualized via Grafana.
-
Alert Manager is supported in this release. Alert Manager can be deployed to provide alerting services for the cluster and is used by default.
- Envoy Gateway with a full featured configuration in support of OpenStack. Envoy implements the Gateway API with traffic policies, loadbalancers, and listeners which are configured to support the OpenStack APIs.
Known Issues
- The OVN loadbalancers options are by default available within Genestack but is currently \"tech preview\" and not recommended for production use.
- Skyline UI currently limits the loadbalancer types to Amphora. This is a known issue and will be resolved in a future release.
Upgrade Notes
-
When upgrading from a pre-release to stable, the following changes will need to be made to the ansible inventory or group_vars to support stable cert-manager
In previous builds the
--enable-gateway-api
was unset, but it is now a required option.
-
When upgrading from a pre-release to stable, the following changes will need to be made to the ansible inventory or group_vars to support stable metallb
In previous builds the
metallb_enabled
was set to true, but it is now managed by the MetalLB helm chart.
-
When upgrading from a pre-release to stable, the following changes will need to be made to the ansible inventory or group_vars to eliminate the CNI plugin from the Kubespray Management.
In previous builds the
kube_network_plugin
was set to kube-ovn, but it is now managed by the Kube-OVN helm chart.
-
When upgrading from a pre-release to stable, the following changes will need to be made to the ansible inventory or group_vars to eliminate the previous assumption of the kubeadm patch files.
In previous builds the
kubeadm_patches
was set to a dictionary of patches that would deploy files into the environment. This interface was changed upstream and now must be a list of string type patches. Review the upstream documentation[0] for more information.
-
When upgrading from a pre-release to stable, the following file no longer has any effect on the environment and can be removed from the ansible group_vars.
/etc/genestack/inventory/group_vars/k8s_cluster/k8s-net-kube-ovn.yml
This file can be eliminated.
- When upgrading from a pre-release to stable, review the Kube-OVN to Helm migration documentation at https://docs.rackspacecloud.com/k8s-cni-kube-ovn-helm-conversion as this step will be required before running Kubespray again.
Deprecation Notes
-
The barbican chart will now use the online OSH helm repository. This change will allow the barbican chart to be updated more frequently and will allow the barbican chart to be used with the OpenStack-Helm project. Upgrading to this chart may require changes to the deployment configuration. Simple updates can be made by running the following command:
helm -n openstack uninstall barbican kubectl -n openstack delete -f /etc/genestack/kustomize/barbican/base/barbican-rabbitmq-queue.yaml /opt/genestack/bin/install-barbican.sh
This operation should have no operational impact on running VMs but should be performed during a maintenance window.
- In early builds of Genestack Kube-OVN was deployed and managed by Kubespray; however, this is no longer the case. The Kube-OVN helm chart is now used to deploy and manage the Kube-OVN CNI plugin.
- In early builds of Genestack MetalLB was deployed and managed by Kubespray; however, this is no longer the case. The MetalLB helm chart is now used to deploy and manage the MetalLB LoadBalancer.
- In early builds of Genestack the cert-manager option
ExperimentalGatewayAPISupport
was set to true, within the ansible group_vars. This option should be removed as it no longer has any effect.
-
The ceilometer chart will now use the online OSH helm repository. This change will allow the ceilometer chart to be updated more frequently and will allow the ceilometer chart to be used with the OpenStack-Helm project. Upgrading to this chart may require changes to the deployment configuration. Simple updates can be made by running the following command:
helm -n openstack uninstall ceilometer kubectl -n openstack delete -f /etc/genestack/kustomize/ceilometer/base/ceilometer-rabbitmq-queue.yaml /opt/genestack/bin/install-ceilometer.sh
This operation should have no operational impact but should be performed during a maintenance window.
-
The cinder chart will now use the online OSH helm repository. This change will allow the cinder chart to be updated more frequently and will allow the cinder chart to be used with the OpenStack-Helm project. Upgrading to this chart may require changes to the deployment configuration. Simple updates can be made by running the following command:
helm -n openstack uninstall cinder kubectl -n openstack delete -f /etc/genestack/kustomize/cinder/base/cinder-rabbitmq-queue.yaml /opt/genestack/bin/install-cinder.sh
This operation should have no operational impact on running VMs but should be performed during a maintenance window.
-
The glance chart will now use the online OSH helm repository. This change will allow the glance chart to be updated more frequently and will allow the glance chart to be used with the OpenStack-Helm project. Upgrading to this chart may require changes to the deployment configuration. Simple updates can be made by running the following command:
helm -n openstack uninstall glance kubectl -n openstack delete -f /etc/genestack/kustomize/glance/base/glance-rabbitmq-queue.yaml /opt/genestack/bin/install-glance.sh
This operation should have no operational impact on running VMs but should be performed during a maintenance window.
-
The gnocchi chart will now use the online OSH helm repository. This change will allow the gnocchi chart to be updated more frequently and will allow the gnocchi chart to be used with the OpenStack-Helm project. Upgrading to this chart may require changes to the deployment configuration. Simple updates can be made by running the following command:
-
The heat chart will now use the online OSH helm repository. This change will allow the heat chart to be updated more frequently and will allow the heat chart to be used with the OpenStack-Helm project. Upgrading to this chart may require changes to the deployment configuration. Simple updates can be made by running the following command:
helm -n openstack uninstall heat kubectl -n openstack delete -f /etc/genestack/kustomize/heat/base/heat-rabbitmq-queue.yaml /opt/genestack/bin/install-heat.sh
This operation should have no operational impact on running VMs but should be performed during a maintenance window.
-
The horizon chart will now use the online OSH helm repository. This change will allow the horizon chart to be updated more frequently and will allow the horizon chart to be used with the OpenStack-Helm project. Upgrading to this chart may require changes to the deployment configuration. Simple updates can be made by running the following command:
This operation should have no operational impact on running VMs but should be performed during a maintenance window.
-
The keystone chart will now use the online OSH helm repository. This change will allow the keystone chart to be updated more frequently and will allow the keystone chart to be used with the OpenStack-Helm project. Upgrading to this chart may require changes to the deployment configuration. Simple updates can be made by running the following command:
helm -n openstack uninstall keystone kubectl -n openstack delete -f /etc/genestack/kustomize/keystone/base/keystone-rabbitmq-queue.yaml /opt/genestack/bin/install-keystone.sh
This operation should have no operational impact on running VMs but should be performed during a maintenance window.
-
The libvirt chart will now use the online OSH helm repository. This change will allow the libvirt chart to be updated more frequently and will allow the libvirt chart to be used with the OpenStack-Helm project. Upgrading to this chart may require changes to the deployment configuration. Simple updates can be made by running the following command:
This operation should have no operational impact on running VMs but should be performed during a maintenance window.
-
The magnum chart will now use the online OSH helm repository. This change will allow the magnum chart to be updated more frequently and will allow the magnum chart to be used with the OpenStack-Helm project. Upgrading to this chart may require changes to the deployment configuration. Simple updates can be made by running the following command:
helm -n openstack uninstall magnum kubectl -n openstack delete -f /etc/genestack/kustomize/magnum/base/magnum-rabbitmq-queue.yaml /opt/genestack/bin/install-magnum.sh
This operation should have no operational impact on running VMs but should be performed during a maintenance window.
-
The neutron chart will now use the online OSH helm repository. This change will allow the neutron chart to be updated more frequently and will allow the neutron chart to be used with the OpenStack-Helm project. Upgrading to this chart may require changes to the deployment configuration. Simple updates can be made by running the following command:
-
The nova chart will now use the online OSH helm repository. This change will allow the nova chart to be updated more frequently and will allow the nova chart to be used with the OpenStack-Helm project. Upgrading to this chart may require changes to the deployment configuration. Simple updates can be made by running the following command:
helm -n openstack uninstall nova kubectl -n openstack delete -f /etc/genestack/kustomize/nova/base/nova-rabbitmq-queue.yaml /opt/genestack/bin/install-nova.sh
This operation should have no operational impact on running VMs but should be performed during a maintenance window.
-
The octavia chart will now use the online OSH helm repository. This change will allow the octavia chart to be updated more frequently and will allow the octavia chart to be used with the OpenStack-Helm project. Upgrading to this chart may require changes to the deployment configuration. Simple updates can be made by running the following command:
helm -n openstack uninstall octavia kubectl -n openstack delete -f /etc/genestack/kustomize/octavia/base/octavia-rabbitmq-queue.yaml /opt/genestack/bin/install-octavia.sh
Depending on the state of the Octavia deployment, it may be nessessary to rerun the ansible-playbook for the octavia deployment. Note that this playbook will drop a marker file
/tmp/octavia_hm_controller_ip_port_list
which may need to be cleaned up before rerunning the playbook.https://docs.rackspacecloud.com/openstack-octavia/#run-the-playbook
That said, if the deployment was healthy before, the cleanup steps should not be needed. This operation should have no operational impact on running VMs but should be performed during a maintenance window.
-
The placement chart will now use the online OSH helm repository. This change will allow the placement chart to be updated more frequently and will allow the placement chart to be used with the OpenStack-Helm project. Upgrading to this chart may require changes to the deployment configuration. Simple updates can be made by running the following command:
This operation should have no operational impact on running VMs but should be performed during a maintenance window.