aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaciej Wereski <m.wereski@partner.samsung.com>2022-11-04 09:47:25 +0100
committerMichal Jagiello <michal.jagiello@t-mobile.pl>2022-11-16 10:26:50 +0000
commitbd1c776bf4dffa24f739534573440c0a54e2776b (patch)
treeb6b28986bf04514c6264ce93863f66a2e0c6b5bf
parent6004a811d4ee78e81d51da226e9e0bec8c543ba4 (diff)
noheat: Add workaround for SDC case-sensivity in Istio
As described in 'Add an EnvoyFilter for HTTP header case' section of https://wiki.onap.org/display/DW/ONAP+on+ServiceMesh+setup+guide Issue-ID: INT-1601 Signed-off-by: Maciej Wereski <m.wereski@partner.samsung.com> Change-Id: I7d52794a9679bdb4c27afa3ebddecd41e561a0a2
-rw-r--r--deployment/noheat/cluster-rke/ansible/roles/deps/files/envoyfilter-case.yml41
-rw-r--r--deployment/noheat/cluster-rke/ansible/roles/deps/tasks/istio.yml15
2 files changed, 56 insertions, 0 deletions
diff --git a/deployment/noheat/cluster-rke/ansible/roles/deps/files/envoyfilter-case.yml b/deployment/noheat/cluster-rke/ansible/roles/deps/files/envoyfilter-case.yml
new file mode 100644
index 000000000..8edcf09c5
--- /dev/null
+++ b/deployment/noheat/cluster-rke/ansible/roles/deps/files/envoyfilter-case.yml
@@ -0,0 +1,41 @@
+---
+apiVersion: networking.istio.io/v1alpha3
+kind: EnvoyFilter
+metadata:
+ name: header-casing
+ namespace: istio-config
+spec:
+ configPatches:
+ - applyTo: CLUSTER
+ match:
+ context: ANY
+ patch:
+ operation: MERGE
+ value:
+ typed_extension_protocol_options:
+ envoy.extensions.upstreams.http.v3.HttpProtocolOptions:
+ '@type': type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions
+ use_downstream_protocol_config:
+ http_protocol_options:
+ header_key_format:
+ stateful_formatter:
+ name: preserve_case
+ typed_config:
+ '@type': type.googleapis.com/envoy.extensions.http.header_formatters.preserve_case.v3.PreserveCaseFormatterConfig
+ - applyTo: NETWORK_FILTER
+ match:
+ listener:
+ filterChain:
+ filter:
+ name: envoy.filters.network.http_connection_manager
+ patch:
+ operation: MERGE
+ value:
+ typed_config:
+ '@type': type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
+ http_protocol_options:
+ header_key_format:
+ stateful_formatter:
+ name: preserve_case
+ typed_config:
+ '@type': type.googleapis.com/envoy.extensions.http.header_formatters.preserve_case.v3.PreserveCaseFormatterConfig
diff --git a/deployment/noheat/cluster-rke/ansible/roles/deps/tasks/istio.yml b/deployment/noheat/cluster-rke/ansible/roles/deps/tasks/istio.yml
index 01e335c7c..89b848636 100644
--- a/deployment/noheat/cluster-rke/ansible/roles/deps/tasks/istio.yml
+++ b/deployment/noheat/cluster-rke/ansible/roles/deps/tasks/istio.yml
@@ -4,6 +4,13 @@
name: istio
repo_url: https://istio-release.storage.googleapis.com/charts
+- name: Create Istio config namespace
+ kubernetes.core.k8s:
+ name: istio-config
+ api_version: v1
+ kind: Namespace
+ state: present
+
- name: Deploy Istio base chart
kubernetes.core.helm:
name: istio-base
@@ -19,6 +26,14 @@
chart_ref: istio/istiod
release_namespace: istio-system
wait: true
+ release_values:
+ meshConfig:
+ rootNamespace: istio-config
+
+- name: Apply workaround for SDC case sensivity issue
+ kubernetes.core.k8s:
+ state: present
+ definition: "{{ lookup('file', 'envoyfilter-case.yml') | from_yaml }}"
- name: Create Istio ingress gateway namespace
kubernetes.core.k8s: