openstack-helm-infra/ovn/values.yaml
Mohammed Naser ec29020b32 feat(ovn): enable ha for OVN control plane
This is a really big refactor which implements and adds OVN HA
for the control plane which can enable production deployments.

Depends-On: https://review.opendev.org/c/openstack/openstack-helm-images/+/889181
Change-Id: Idce896148b33a87467cd5656918c5c7377a29504
2023-08-08 10:50:23 +03:00

322 lines
7.2 KiB
YAML

# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# Default values for openvswitch.
# This is a YAML-formatted file.
# Declare name/value pairs to be passed into your templates.
# name: value
---
release_group: null
images:
tags:
ovn_ovsdb_nb: docker.io/openstackhelm/ovn:latest-ubuntu_focal
ovn_ovsdb_sb: docker.io/openstackhelm/ovn:latest-ubuntu_focal
ovn_northd: docker.io/openstackhelm/ovn:latest-ubuntu_focal
ovn_controller: docker.io/openstackhelm/ovn:latest-ubuntu_focal
dep_check: quay.io/airshipit/kubernetes-entrypoint:v1.0.0
image_repo_sync: docker.io/library/docker:17.07.0
pull_policy: "IfNotPresent"
local_registry:
active: false
exclude:
- dep_check
- image_repo_sync
labels:
ovn_ovsdb_nb:
node_selector_key: openstack-network-node
node_selector_value: enabled
ovn_ovsdb_sb:
node_selector_key: openstack-network-node
node_selector_value: enabled
ovn_northd:
node_selector_key: openstack-network-node
node_selector_value: enabled
ovn_controller:
node_selector_key: openvswitch
node_selector_value: enabled
volume:
ovn_ovsdb_nb:
enabled: true
class_name: general
size: 5Gi
ovn_ovsdb_sb:
enabled: true
class_name: general
size: 5Gi
network:
interface:
# Tunnel interface will be used for VXLAN tunneling.
tunnel: null
# If tunnel is null there is a fallback mechanism to search
# for interface with routing using tunnel network cidr.
tunnel_network_cidr: "0/0"
conf:
ovn_cms_options: "enable-chassis-as-gw,availability-zones=nova"
ovn_encap_type: geneve
ovn_bridge: br-int
ovn_bridge_mappings: external:br-ex
# auto_bridge_add:
# br-private: eth0
# br-public: eth1
auto_bridge_add: {}
# NOTE: should be same as nova.conf.use_fqdn.compute
use_fqdn:
compute: true
pod:
security_context:
ovn_northd:
container:
northd:
capabilities:
add:
- SYS_NICE
ovn_controller:
container:
controller:
capabilities:
add:
- SYS_NICE
tolerations:
ovn_ovsdb_nb:
enabled: false
ovn_ovsdb_sb:
enabled: false
ovn_northd:
enabled: false
ovn_controller:
enabled: false
affinity:
anti:
type:
default: preferredDuringSchedulingIgnoredDuringExecution
topologyKey:
default: kubernetes.io/hostname
weight:
default: 10
probes:
ovn_northd:
northd:
readiness:
enabled: true
params:
initialDelaySeconds: 5
timeoutSeconds: 10
liveness:
enabled: true
params:
initialDelaySeconds: 5
timeoutSeconds: 10
dns_policy: "ClusterFirstWithHostNet"
replicas:
ovn_ovsdb_nb: 1
ovn_ovsdb_sb: 1
ovn_northd: 1
lifecycle:
upgrades:
daemonsets:
pod_replacement_strategy: RollingUpdate
ovn_ovsdb_nb:
enabled: true
min_ready_seconds: 0
max_unavailable: 1
ovn_ovsdb_sb:
enabled: true
min_ready_seconds: 0
max_unavailable: 1
ovn_northd:
enabled: true
min_ready_seconds: 0
max_unavailable: 1
ovn_controller:
enabled: true
min_ready_seconds: 0
max_unavailable: 1
resources:
enabled: false
ovs:
ovn_ovsdb_nb:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "1024Mi"
cpu: "2000m"
ovn_ovsdb_sb:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "1024Mi"
cpu: "2000m"
ovn_northd:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "1024Mi"
cpu: "2000m"
ovn_controller:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "1024Mi"
cpu: "2000m"
jobs:
image_repo_sync:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "1024Mi"
cpu: "2000m"
secrets:
oci_image_registry:
ovn_ovsdb_nb: ovn-ovsdb-nb-oci-image-registry-key
ovn_ovsdb_sb: ovn-ovsdb-sb-oci-image-registry-key
ovn_northd: ovn-northd-oci-image-registry-key
ovn_controller: ovn-controller-oci-image-registry-key
# TODO: Check these endpoints?!
endpoints:
cluster_domain_suffix: cluster.local
local_image_registry:
name: docker-registry
namespace: docker-registry
hosts:
default: localhost
internal: docker-registry
node: localhost
host_fqdn_override:
default: null
port:
registry:
node: 5000
oci_image_registry:
name: oci-image-registry
namespace: oci-image-registry
auth:
enabled: false
openvswitch:
username: openvswitch
password: password
hosts:
default: localhost
host_fqdn_override:
default: null
port:
registry:
default: null
ovn_ovsdb_nb:
name: ovn-ovsdb-nb
namespace: null
hosts:
default: ovn-ovsdb-nb
host_fqdn_override:
default: null
port:
ovsdb:
default: 6641
raft:
default: 6643
ovn_ovsdb_sb:
name: ovn-ovsdb-sb
namespace: null
hosts:
default: ovn-ovsdb-sb
host_fqdn_override:
default: null
port:
ovsdb:
default: 6642
raft:
default: 6644
network_policy:
ovn_ovsdb_nb:
ingress:
- {}
egress:
- {}
ovn_ovsdb_sb:
ingress:
- {}
egress:
- {}
ovn_northd:
ingress:
- {}
egress:
- {}
ovn_controller:
ingress:
- {}
egress:
- {}
dependencies:
dynamic:
common:
local_image_registry:
jobs:
- openvswitch-image-repo-sync
services:
- endpoint: node
service: local_image_registry
static:
ovn_ovsdb_nb: null
ovn_ovsdb_sb: null
ovn_northd:
services:
- endpoint: internal
service: ovn-ovsdb-nb
- endpoint: internal
service: ovn-ovsdb-sb
ovn_controller:
services:
- endpoint: internal
service: ovn-ovsdb-sb
pod:
- requireSameNode: true
labels:
application: openvswitch
component: server
image_repo_sync:
services:
- endpoint: internal
service: local_image_registry
manifests:
configmap_bin: true
configmap_etc: true
deployment_northd: true
daemonset_controller: true
service_ovn_ovsdb_nb: true
service_ovn_ovsdb_sb: true
statefulset_ovn_ovsdb_nb: true
statefulset_ovn_ovsdb_sb: true
deployment_ovn_northd: true
daemonset_ovn_controller: true
job_image_repo_sync: true
...