[VOL-4285] Helm charts for grpc migration
Change-Id: Ifa3423b43b236bab6c9de437b1dd7045069fe5de
diff --git a/README.md b/README.md
index 0566c58..36f4e89 100644
--- a/README.md
+++ b/README.md
@@ -136,8 +136,8 @@
```shell
helm upgrade --install --create-namespace \
- -n voltha1 voltha1 onf/voltha-stack \
- --set global.stack_name=voltha1 \
+ -n voltha voltha onf/voltha-stack \
+ --set global.stack_name=voltha \
--set global.voltha_infra_name=voltha-infra \
--set global.voltha_infra_namespace=infra
```
@@ -157,8 +157,8 @@
by adding it to the `voltha-stack` command. The following is an example for 3 ONOS instances.
```shell
helm upgrade --install --create-namespace \
- -n voltha1 voltha1 onf/voltha-stack \
- --set global.stack_name=voltha1 \
+ -n voltha voltha onf/voltha-stack \
+ --set global.stack_name=voltha \
--set global.voltha_infra_name=voltha-infra \
--set global.voltha_infra_namespace=infra \
--set voltha.onos_classic.replicas=3
@@ -168,8 +168,8 @@
As an example to deploy VOLTHA 2.8 LTS release you can use `--version 2.8.0` like:
```shell
helm upgrade --install --create-namespace \
- -n voltha1 --version 2.8.0 voltha1 onf/voltha-stack \
- --set global.stack_name=voltha1 \
+ -n voltha --version 2.8.0 voltha onf/voltha-stack \
+ --set global.stack_name=voltha \
--set global.voltha_infra_name=voltha-infra \
--set global.voltha_infra_namespace=infra
```
@@ -180,8 +180,8 @@
```shell
helm upgrade --install --create-namespace \
- -n voltha1 voltha1 onf/voltha-stack \
- --set global.stack_name=voltha1 \
+ -n voltha voltha onf/voltha-stack \
+ --set global.stack_name=voltha \
--set global.voltha_infra_name=voltha-infra \
--set global.voltha_infra_namespace=infra \
--set global.tracing.enabled=true
@@ -195,8 +195,8 @@
```shell
helm upgrade --install --create-namespace \
- -n voltha1 voltha1 onf/voltha-stack \
- --set global.stack_name=voltha1 \
+ -n voltha voltha onf/voltha-stack \
+ --set global.stack_name=voltha \
--set global.voltha_infra_name=voltha-infra \
--set global.voltha_infra_namespace=infra \
--set global.log_correlation.enabled=true
@@ -210,8 +210,8 @@
```shell
helm upgrade --install --create-namespace \
- -n voltha1 voltha1 onf/voltha-stack \
- --set global.stack_name=voltha1 \
+ -n voltha voltha onf/voltha-stack \
+ --set global.stack_name=voltha \
--set global.voltha_infra_name=voltha-infra \
--set global.voltha_infra_namespace=infra \
--set voltha-adapter-openonu.use_openonu_adapter_go=false
@@ -226,7 +226,7 @@
you can use the BBSim helm chart:
```shell
-helm upgrade --install -n voltha1 bbsim0 onf/bbsim --set olt_id=10
+helm upgrade --install -n voltha bbsim0 onf/bbsim --set olt_id=10
```
> _While it's not mandatory to install BBSim in the same namespace as the VOLTHA stack it's advised to do so to make explicit which stack is controlling it._
@@ -271,16 +271,16 @@
```shell
helm upgrade --install -n infra voltha-infra onf/voltha-infra -f examples/dt-values.yaml
-helm upgrade --install -n voltha1 bbsim0 onf/bbsim --set olt_id=10 -f examples/dt-values.yaml
-helm upgrade --install --create-namespace -n voltha1 voltha1 onf/voltha-stack --set global.stack_name=voltha1 --set voltha_infra_name=voltha-infra --set voltha_infra_namespace=infra
+helm upgrade --install -n voltha bbsim0 onf/bbsim --set olt_id=10 -f examples/dt-values.yaml
+helm upgrade --install --create-namespace -n voltha voltha onf/voltha-stack --set global.stack_name=voltha --set voltha_infra_name=voltha-infra --set voltha_infra_namespace=infra
```
**TT**
```shell
helm upgrade --install -n infra voltha-infra onf/voltha-infra -f examples/tt-values.yaml
-helm upgrade --install -n voltha1 bbsim0 onf/bbsim --set olt_id=10 -f examples/tt-values.yaml
-helm upgrade --install --create-namespace -n voltha1 voltha1 onf/voltha-stack --set global.stack_name=voltha1 --set voltha_infra_name=voltha-infra --set voltha_infra_namespace=infra
+helm upgrade --install -n voltha bbsim0 onf/bbsim --set olt_id=10 -f examples/tt-values.yaml
+helm upgrade --install --create-namespace -n voltha voltha onf/voltha-stack --set global.stack_name=voltha --set voltha_infra_name=voltha-infra --set voltha_infra_namespace=infra
```
### Using an ingress controller
@@ -345,7 +345,7 @@
- `--server`/`server` - the value of the external IP address of the ingress
controller and the port on which it is listening (_ex:_ `localhost:443` or
-`voltha1.voltha.com:30474`).
+`voltha.voltha.com:30474`).
- `--kvstore`/`kvstore` - the value of the external IP address of the ingress
controller and the point on which it is listening (_ex:_ `localhost:443`)
@@ -357,13 +357,13 @@
_CLI example_:
```bash
-voltctl --server=voltha1.voltha.com:443 --kvstore=localhost:443 --tls version
+voltctl --server=voltha.voltha.com:443 --kvstore=localhost:443 --tls version
```
_`voltctl` configuration file example:_
```yaml
-server: voltha1.example.com:443
+server: voltha.example.com:443
kafka: localhost:443
kvstore: localhost:443
tls:
@@ -408,11 +408,11 @@
infra voltha-infra-voltha-infra-onos-config-loader-whdtz 0/1 Completed 3 14m
infra voltha-infra-voltha-tracing-jaeger-7fffb6cdf6-l5r8s 1/1 Running 0 14m
infra voltha-infra-zookeeper-0 1/1 Running 0 14m
-voltha1 bbsim0-6f9584b4dd-txtj4 1/1 Running 0 66s
-voltha1 voltha1-voltha-adapter-openolt-5b5844b5b6-htlvp 1/1 Running 0 91s
-voltha1 voltha1-voltha-adapter-openonu-85749df5fc-n5kdd 1/1 Running 0 91s
-voltha1 voltha1-voltha-ofagent-5b5dc9b7b5-htxt6 1/1 Running 0 91s
-voltha1 voltha1-voltha-rw-core-7d69cb4567-9cn2n 1/1 Running 0 91s
+voltha bbsim0-6f9584b4dd-txtj4 1/1 Running 0 66s
+voltha voltha-voltha-adapter-openolt-5b5844b5b6-htlvp 1/1 Running 0 91s
+voltha voltha-voltha-adapter-openonu-85749df5fc-n5kdd 1/1 Running 0 91s
+voltha voltha-voltha-ofagent-5b5dc9b7b5-htxt6 1/1 Running 0 91s
+voltha voltha-voltha-rw-core-7d69cb4567-9cn2n 1/1 Running 0 91s
```
> _Note that is completely fine if the `onos-config-loader` pod restarts a few times, it is a job that loads
configuration into ONOS and will fail until ONOS is ready to accept the configuration._
@@ -421,7 +421,7 @@
In order to use `voltctl` you need to expose the `voltha-api` service:
```shell
-kubectl -n voltha1 port-forward --address 0.0.0.0 svc/voltha1-voltha-api 55555
+kubectl -n voltha port-forward --address 0.0.0.0 svc/voltha-voltha-api 55555
```
> _If you have deployed multiple stacks you need to change the `port-forward` command to connect to the stack you want to operate, eg:_
@@ -435,8 +435,8 @@
```shell
$ voltctl adapter list
ID VENDOR TYPE ENDPOINT VERSION CURRENTREPLICA TOTALREPLICAS LASTCOMMUNICATION
-brcm_openomci_onu_1 VOLTHA OpenONUGo brcm_openomci_onu voltha1_brcm_openomci_onu unknown-version 1 1
-openolt_1 VOLTHA OpenOLT openolt voltha1_openolt 3.0.2 1 1
+brcm_openomci_onu_1 VOLTHA OpenONUGo brcm_openomci_onu voltha_brcm_openomci_onu unknown-version 1 1
+openolt_1 VOLTHA OpenOLT openolt voltha_openolt 3.0.2 1 1
```
### Provisioning an OLT
@@ -447,7 +447,7 @@
To create and enable the OLT device in VOLTHA you can use these `voltctl` commands:
```shell
-voltctl device create -t openolt -H bbsim0.voltha1.svc:50060
+voltctl device create -t openolt -H bbsim0.voltha.svc:50060
voltctl device list --filter Type~openolt -q | xargs voltctl device enable
```
@@ -473,7 +473,7 @@
export VOLTCONFIG="~/.volt/config"
make sanity-kind
```
-> This assumes that both the `onos-ssh`, `onos-rest` and `voltha-api` ports are forwarded on the host and bbsim was installed with ` helm install -n voltha1 bbsim0 onf/bbsim --set olt_id=10`.
+> This assumes that both the `onos-ssh`, `onos-rest` and `voltha-api` ports are forwarded on the host and bbsim was installed with ` helm install -n voltha bbsim0 onf/bbsim --set olt_id=10`.
### Remove VOLTHA from your cluster
@@ -481,7 +481,7 @@
If you need to completely uninstall everything that you installed following this guide, you can simply remove the installed `helm` charts:
```shell
-helm del -n voltha1 voltha1 bbsim0
+helm del -n voltha voltha bbsim0
helm del -n infra voltha-infra
```
@@ -500,8 +500,8 @@
```shell
helm upgrade --install --create-namespace \
- -n voltha1 voltha1 onf/voltha-stack \
- --set global.stack_name=voltha1 \
+ -n voltha voltha onf/voltha-stack \
+ --set global.stack_name=voltha \
--set voltha_infra_name=voltha-infra \
--set voltha_infra_namespace=infra \
--set voltha-adapter-openonu.images.adapter_open_onu_go.repository=voltha/voltha-openonu-adapter-go \
@@ -512,7 +512,7 @@
by restarting the pod, for example:
```shell
-kubectl delete pod -n voltha1 $(kubectl get pods -n voltha1 | grep openonu | awk '{print $1}')
+kubectl delete pod -n voltha $(kubectl get pods -n voltha | grep openonu | awk '{print $1}')
```
> In order for this to work the `imagePullPolicy` has to be set to `Always`.
@@ -525,8 +525,8 @@
been officially tagged and release there is a provided `dev-values.yaml`. You can use it for the a `voltha-stack` like so:
```shell
helm upgrade --install --create-namespace \
- -n voltha1 voltha1 onf/voltha-stack \
- --set global.stack_name=voltha1 \
+ -n voltha voltha onf/voltha-stack \
+ --set global.stack_name=voltha \
--set voltha_infra_name=voltha-infra \
--set voltha_infra_namespace=infra \
-f examples/dev-values.yaml
@@ -541,18 +541,18 @@
```shell
helm upgrade --install --create-namespace \
- -n voltha1 voltha1 onf/voltha-stack \
- --set global.stack_name=voltha1 \
+ -n voltha voltha onf/voltha-stack \
+ --set global.stack_name=voltha \
--set voltha_infra_name=voltha-infra \
--set voltha_infra_namespace=infra \
--set voltha-adapter-openonu.enabled=false
helm upgrade --install --create-namespace \
- -n voltha1 opeonu-adapter voltha-adapter-openonu \
- --set global.stack_name=voltha1 \
- --set adapter_open_onu.kv_store_data_prefix=service/voltha/voltha1_voltha1 \
- --set adapter_open_onu.topics.core_topic=voltha1_voltha1_rwcore \
- --set adapter_open_onu.topics.adapter_open_onu_topic=voltha1_voltha1_brcm_openomci_onu \
+ -n voltha opeonu-adapter voltha-adapter-openonu \
+ --set global.stack_name=voltha \
+ --set adapter_open_onu.kv_store_data_prefix=service/voltha/voltha_voltha \
+ --set adapter_open_onu.topics.core_topic=voltha_voltha_rwcore \
+ --set adapter_open_onu.topics.adapter_open_onu_topic=voltha_voltha_brcm_openomci_onu \
--set services.kafka.adapter.service=voltha-infra-kafka.infra.svc \
--set services.kafka.cluster.service=voltha-infra-kafka.infra.svc \
--set services.etcd.service=voltha-infra-etcd.infra.svc
diff --git a/VERSION b/VERSION
index ffd8a2b..2468aa9 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-2.9.0-dev
+3.0.0-dev
diff --git a/examples/att-values.yaml b/examples/att-values.yaml
index 939606b..3c2385f 100644
--- a/examples/att-values.yaml
+++ b/examples/att-values.yaml
@@ -29,3 +29,10 @@
needs_eapol: true
needs_dhcp: true
tp_id: 64
+
+# NOTE this is a temporary workaround as in the reconcile case the meter might get deleted while there is
+# a PENDING_ADD flow pointing to it.
+onos-classic:
+ config:
+ componentConfig:
+ "org.opencord.olt.impl.OltMeterService": '{"deleteMeters": "false"}'
diff --git a/voltha-adapter-openolt/Chart.yaml b/voltha-adapter-openolt/Chart.yaml
index f6e52bc..b0bf873 100644
--- a/voltha-adapter-openolt/Chart.yaml
+++ b/voltha-adapter-openolt/Chart.yaml
@@ -14,7 +14,7 @@
---
apiVersion: "v1"
name: "voltha-adapter-openolt"
-version: "2.10.5"
+version: "2.10.6"
description: "A Helm chart for Voltha OpenOLT Adapter"
keywords:
- "onf"
@@ -33,4 +33,4 @@
# appVersion refers to multiple components with potentially different
# container image versions.
-appVersion: "3.5.5"
+appVersion: "4.0.0"
diff --git a/voltha-adapter-openolt/templates/openolt-deploy.yaml b/voltha-adapter-openolt/templates/openolt-deploy.yaml
index 3eb979f..9010d7c 100644
--- a/voltha-adapter-openolt/templates/openolt-deploy.yaml
+++ b/voltha-adapter-openolt/templates/openolt-deploy.yaml
@@ -116,15 +116,15 @@
value: {{ tpl .Values.adapter_open_olt.kv_store_data_prefix . }}
args:
- "/app/openolt"
- - "--kafka_adapter_address={{ tpl .Values.services.kafka.adapter.address . }}"
+ - "--core_endpoint={{ tpl .Values.global.core_endpoint . }}"
+ - "--adapter_endpoint={{ tpl .Values.adapter_open_olt.endpoints.address . }}.{{ .Release.Namespace }}.svc:{{ print .Values.adapter_open_olt.endpoints.port }}"
- "--kafka_cluster_address={{ tpl .Values.services.kafka.cluster.address . }}"
- - "--core_topic={{ tpl .Values.adapter_open_olt.topics.core_topic . }}"
- - "--adapter_topic={{ tpl .Values.adapter_open_olt.topics.adapter_open_olt_topic . }}"
- "--event_topic={{ .Values.adapter_open_olt.topics.event_topic }}"
- "--kv_store_address={{ tpl .Values.services.etcd.address . }}"
- "--kv_store_request_timeout={{ tpl .Values.adapter_open_olt.kv_store_timeout . }}"
- "--heartbeat_check_interval={{ tpl .Values.adapter_open_olt.heartbeat_check_interval . }}"
- "--heartbeat_fail_interval={{ tpl .Values.adapter_open_olt.heartbeat_fail_interval . }}"
+ - "--rpc_timeout={{ tpl .Values.adapter_open_olt.rpc_timeout . }}"
- "--log_level={{ $log_level }}"
- "--current_replica={{ .Values.replicas.current_replica }}"
- "--total_replica={{ .Values.replicas.total_replica }}"
@@ -139,18 +139,21 @@
securityContext:
allowPrivilegeEscalation: false
{{- end }}
+ ports:
+ - containerPort: {{ .Values.adapter_open_olt.endpoints.port }}
+ name: grpc
livenessProbe:
httpGet:
path: /healthz
port: 8080
- initialDelaySeconds: 10
- periodSeconds: 5
+ initialDelaySeconds: {{ .Values.probe.liveness.initial_delay_seconds }}
+ periodSeconds: {{ .Values.probe.liveness.period_seconds }}
readinessProbe:
httpGet:
path: /readz
port: 8080
- initialDelaySeconds: 10
- periodSeconds: 5
+ initialDelaySeconds: {{ .Values.probe.readiness.initial_delay_seconds }}
+ periodSeconds: {{ .Values.probe.readiness.period_seconds }}
resources:
requests:
{{- if .Values.resources.requests.memory }}
diff --git a/voltha-adapter-openolt/templates/openolt-svc.yaml b/voltha-adapter-openolt/templates/openolt-svc.yaml
new file mode 100644
index 0000000..49fe71e
--- /dev/null
+++ b/voltha-adapter-openolt/templates/openolt-svc.yaml
@@ -0,0 +1,28 @@
+# Copyright 2020-present Open Networking Foundation
+#
+# 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.
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: "{{ tpl .Values.adapter_open_olt.endpoints.address . }}"
+ namespace: {{ .Release.Namespace }}
+spec:
+ clusterIP: None
+ ports:
+ - name: grpc
+ port: {{ .Values.adapter_open_olt.endpoints.port }}
+ targetPort: {{ .Values.adapter_open_olt.endpoints.port }}
+ selector:
+ app: adapter-open-olt
+ release: {{ .Release.Name }}
diff --git a/voltha-adapter-openolt/values.yaml b/voltha-adapter-openolt/values.yaml
index b5224b5..8c88b4c 100644
--- a/voltha-adapter-openolt/values.yaml
+++ b/voltha-adapter-openolt/values.yaml
@@ -17,16 +17,20 @@
# Default overrides
global:
+ voltha_release_name: voltha
stack_name: voltha
log_level: "WARN"
image_registry: ""
image_tag: ~
image_org: "voltha/"
image_pullPolicy: "Always"
+ core_endpoint: "{{ .Values.global.voltha_release_name }}-{{ .Values.global.stack_name }}-core.{{ .Release.Namespace }}.svc:55558"
adapter_open_olt:
timeout: "5s"
heartbeat_check_interval: "15s"
heartbeat_fail_interval: "31s"
+ # timeout for RPC request
+ rpc_timeout: "10s"
#enable OMCC encryption
omcc_encryption: false
@@ -43,6 +47,15 @@
tracing:
enabled: true
+# Probe values
+probe:
+ liveness:
+ initial_delay_seconds: 3
+ period_seconds: 3
+ readiness:
+ initial_delay_seconds: 3
+ period_seconds: 3
+
# Default security context under which the containers run
securityContext:
enabled: true
@@ -59,8 +72,6 @@
# Define connectivity to required services
services:
kafka:
- adapter:
- address: kafka:9092
cluster:
address: kafka:9092
@@ -87,9 +98,13 @@
kv_store_data_prefix: 'service/{{ .Values.global.stack_name }}_voltha'
heartbeat_check_interval: '{{ .Values.global.adapter_open_olt.heartbeat_check_interval }}'
heartbeat_fail_interval: '{{ .Values.global.adapter_open_olt.heartbeat_fail_interval }}'
+ rpc_timeout: '{{ .Values.global.adapter_open_olt.rpc_timeout }}'
+ endpoints:
+ # core_endpoint: '{{ .Values.global.adapter_open_olt.core_endpoint }}'
+ # adapter_endpoint: '{{ template "fullname" . }}-api:55560'
+ address: '{{ template "fullname" . }}-api'
+ port: 50060
topics:
- core_topic: "{{ .Values.global.stack_name }}_rwcore"
- adapter_open_olt_topic: "{{ .Values.global.stack_name }}_openolt"
event_topic: "voltha.events"
images:
diff --git a/voltha-adapter-openonu/Chart.yaml b/voltha-adapter-openonu/Chart.yaml
index a089697..258c20a 100644
--- a/voltha-adapter-openonu/Chart.yaml
+++ b/voltha-adapter-openonu/Chart.yaml
@@ -14,7 +14,7 @@
---
apiVersion: "v1"
name: "voltha-adapter-openonu"
-version: "2.9.6"
+version: "2.9.7"
description: "A Helm chart for Voltha OpenONU Adapter"
keywords:
- "onf"
@@ -33,4 +33,4 @@
# appVersion refers to multiple components with potentially different
# container image versions.
-appVersion: "1.3.13"
+appVersion: "2.0.0"
diff --git a/voltha-adapter-openonu/templates/openonu-go-deploy.yaml b/voltha-adapter-openonu/templates/openonu-go-deploy.yaml
index 72c2771..2360d84 100644
--- a/voltha-adapter-openonu/templates/openonu-go-deploy.yaml
+++ b/voltha-adapter-openonu/templates/openonu-go-deploy.yaml
@@ -82,10 +82,9 @@
- "/app/openonu"
- "--banner=true"
- "--kafka_reconnect_retries=-1"
- - "--kafka_adapter_address={{ tpl .Values.services.kafka.adapter.address . }}"
+ - "--core_endpoint={{ tpl .Values.global.core_endpoint . }}"
+ - "--adapter_endpoint={{ tpl .Values.adapter_open_onu.endpoints.address . }}.{{ .Release.Namespace }}.svc:{{ print .Values.adapter_open_onu.endpoints.port }}"
- "--kafka_cluster_address={{ tpl .Values.services.kafka.cluster.address . }}"
- - "--core_topic={{ tpl .Values.adapter_open_onu.topics.core_topic . }}"
- - "--adapter_topic={{ tpl .Values.adapter_open_onu.topics.adapter_open_onu_topic . }}"
- "--event_topic={{ .Values.adapter_open_onu.topics.event_topic }}"
- "--kv_store_address={{ tpl .Values.services.etcd.address . }}"
- "--kv_store_request_timeout={{ tpl .Values.adapter_open_onu.kv_store_timeout . }}"
@@ -95,6 +94,7 @@
- "--max_timeout_interadapter_comm={{ tpl .Values.adapter_open_onu.max_timeout_interadapter_comm . }}"
- "--max_timeout_reconciling={{ tpl .Values.adapter_open_onu.max_timeout_reconciling . }}"
- "--omci_timeout={{ tpl .Values.adapter_open_onu.omci_timeout . }}"
+ - "--rpc_timeout={{ tpl .Values.adapter_open_onu.rpc_timeout . }}"
- "--trace_enabled={{ .Values.global.tracing.enabled }}"
- "--trace_agent_address={{ tpl .Values.services.tracing_agent.address . }}"
- "--log_correlation_enabled={{ .Values.global.log_correlation.enabled }}"
@@ -107,18 +107,21 @@
securityContext:
allowPrivilegeEscalation: false
{{- end }}
+ ports:
+ - containerPort: {{ .Values.adapter_open_onu.endpoints.port }}
+ name: grpc
livenessProbe:
httpGet:
path: /healthz
port: 8080
- initialDelaySeconds: 10
- periodSeconds: 5
+ initialDelaySeconds: {{ .Values.probe.liveness.initial_delay_seconds }}
+ periodSeconds: {{ .Values.probe.liveness.period_seconds }}
readinessProbe:
httpGet:
path: /readz
port: 8080
- initialDelaySeconds: 10
- periodSeconds: 5
+ initialDelaySeconds: {{ .Values.probe.readiness.initial_delay_seconds }}
+ periodSeconds: {{ .Values.probe.readiness.period_seconds }}
resources:
requests:
{{- if .Values.resources.requests.memory }}
diff --git a/voltha-adapter-openonu/templates/openonu-svc.yaml b/voltha-adapter-openonu/templates/openonu-svc.yaml
new file mode 100644
index 0000000..c8cfedd
--- /dev/null
+++ b/voltha-adapter-openonu/templates/openonu-svc.yaml
@@ -0,0 +1,28 @@
+# Copyright 2020-present Open Networking Foundation
+#
+# 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.
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: "{{ tpl .Values.adapter_open_onu.endpoints.address . }}"
+ namespace: {{ .Release.Namespace }}
+spec:
+ clusterIP: None
+ ports:
+ - name: grpc
+ port: {{ .Values.adapter_open_onu.endpoints.port }}
+ targetPort: {{ .Values.adapter_open_onu.endpoints.port }}
+ selector:
+ app: adapter-open-onu
+ release: {{ .Release.Name }}
diff --git a/voltha-adapter-openonu/values.yaml b/voltha-adapter-openonu/values.yaml
index 0d4b7f5..bd30a4c 100644
--- a/voltha-adapter-openonu/values.yaml
+++ b/voltha-adapter-openonu/values.yaml
@@ -18,12 +18,14 @@
# Default overrides
global:
+ voltha_release_name: voltha
stack_name: voltha
log_level: "WARN"
image_registry: ""
image_tag: ~
image_org: "voltha/"
image_pullPolicy: "Always"
+ core_endpoint: "{{ .Values.global.voltha_release_name }}-{{ .Values.global.stack_name }}-core.{{ .Release.Namespace }}.svc:55558"
incremental_evto_update: False
# timeout for deadline for interadapter communication
# should be in format as expected by parseDuration golang.
@@ -32,6 +34,8 @@
max_timeout_reconciling: "10s"
# timeout for OMCI channel
omci_timeout: "1s"
+ # timeout for RPC request
+ rpc_timeout: "10s"
# kv store timeout
adapter_open_onu:
timeout: "5s"
@@ -52,6 +56,14 @@
# configure "0s" to disable omci alarm audit
interval: 300s
+# Probe values
+probe:
+ liveness:
+ initial_delay_seconds: 3
+ period_seconds: 3
+ readiness:
+ initial_delay_seconds: 3
+ period_seconds: 3
# Default security context under which the containers run
securityContext:
@@ -63,8 +75,6 @@
# Define connectivity to required services
services:
kafka:
- adapter:
- address: kafka:9092
cluster:
address: kafka:9092
@@ -109,13 +119,15 @@
max_timeout_interadapter_comm: '{{ .Values.global.max_timeout_interadapter_comm }}'
max_timeout_reconciling: '{{ .Values.global.max_timeout_reconciling }}'
omci_timeout: '{{ .Values.global.omci_timeout }}'
+ rpc_timeout: '{{ .Values.global.rpc_timeout }}'
kv_store_timeout: '{{ .Values.global.adapter_open_onu.timeout }}'
kv_store_data_prefix: 'service/{{ .Values.global.stack_name }}_voltha'
alarm_audit_interval: '{{ .Values.global.alarm_audit.interval }}'
uni_port_mask: "0x0001"
+ endpoints:
+ address: '{{ template "fullname" . }}-api'
+ port: 50060
topics:
- core_topic: "{{ .Values.global.stack_name }}_rwcore"
- adapter_open_onu_topic: "{{ .Values.global.stack_name }}_brcm_openomci_onu"
event_topic: "voltha.events"
images:
diff --git a/voltha-stack/Chart.yaml b/voltha-stack/Chart.yaml
index 0f8f665..be4c336 100644
--- a/voltha-stack/Chart.yaml
+++ b/voltha-stack/Chart.yaml
@@ -28,18 +28,18 @@
name: voltha-stack
appVersion: "2.9-dev"
-version: 2.9.8
+version: 2.9.9
dependencies:
- name: voltha
repository: file://../voltha
- version: 2.10.4
+ version: 2.10.5
condition: voltha.enabled
- name: voltha-adapter-openonu
repository: file://../voltha-adapter-openonu
- version: 2.9.6
+ version: 2.9.7
condition: voltha-adapter-openonu.enabled
- name: voltha-adapter-openolt
repository: file://../voltha-adapter-openolt
- version: 2.10.5
+ version: 2.10.6
condition: voltha-adapter-openolt.enabled
diff --git a/voltha-stack/values.yaml b/voltha-stack/values.yaml
index 0bd6b77..7f69868 100644
--- a/voltha-stack/values.yaml
+++ b/voltha-stack/values.yaml
@@ -18,6 +18,7 @@
log_level: "WARN"
voltha_infra_name: "voltha-infra"
voltha_infra_namespace: "infra"
+ core_endpoint: "{{ .Release.Name }}-{{ .Values.global.stack_name }}-core.{{ .Release.Namespace }}.svc:55558"
log_correlation:
enabled: true
tracing:
@@ -34,12 +35,8 @@
rw_core:
kv_store_data_prefix: 'service/voltha/{{ .Release.Name }}_{{ .Values.global.stack_name }}'
stack_id: "{{ .Values.global.stack_name }}"
- topics:
- core_topic: "{{ .Release.Name }}_{{ .Values.global.stack_name }}_rwcore"
services:
kafka:
- adapter:
- address: "{{ .Values.global.voltha_infra_name }}-kafka.{{ .Values.global.voltha_infra_namespace }}.svc:9092"
cluster:
address: "{{ .Values.global.voltha_infra_name }}-kafka.{{ .Values.global.voltha_infra_namespace }}.svc:9092"
etcd:
@@ -51,13 +48,10 @@
enabled: true
adapter_open_onu:
kv_store_data_prefix: 'service/voltha/{{ .Release.Name }}_{{ .Values.global.stack_name }}'
- topics:
- core_topic: "{{ .Release.Name }}_{{ .Values.global.stack_name }}_rwcore"
- adapter_open_onu_topic: "{{ .Release.Name }}_{{ .Values.global.stack_name }}_brcm_openomci_onu"
+ endpoints:
+ address: '{{ .Release.Name }}-voltha-adapter-openonu-api'
services:
kafka:
- adapter:
- address: "{{ .Values.global.voltha_infra_name }}-kafka.{{ .Values.global.voltha_infra_namespace }}.svc:9092"
cluster:
address: "{{ .Values.global.voltha_infra_name }}-kafka.{{ .Values.global.voltha_infra_namespace }}.svc:9092"
etcd:
@@ -69,13 +63,10 @@
enabled: true
adapter_open_olt:
kv_store_data_prefix: 'service/voltha/{{ .Release.Name }}_{{ .Values.global.stack_name }}'
- topics:
- core_topic: "{{ .Release.Name }}_{{ .Values.global.stack_name }}_rwcore"
- adapter_open_olt_topic: "{{ .Release.Name }}_{{ .Values.global.stack_name }}_openolt"
+ endpoints:
+ address: '{{ .Release.Name }}-voltha-adapter-openolt-api'
services:
kafka:
- adapter:
- address: "{{ .Values.global.voltha_infra_name }}-kafka.{{ .Values.global.voltha_infra_namespace }}.svc:9092"
cluster:
address: "{{ .Values.global.voltha_infra_name }}-kafka.{{ .Values.global.voltha_infra_namespace }}.svc:9092"
etcd:
diff --git a/voltha/Chart.yaml b/voltha/Chart.yaml
index 394da55..791e5fc 100644
--- a/voltha/Chart.yaml
+++ b/voltha/Chart.yaml
@@ -14,7 +14,7 @@
---
apiVersion: "v1"
name: "voltha"
-version: "2.10.4"
+version: "2.10.5"
description: "A Helm chart for Voltha based on K8S resources in Voltha project"
keywords:
- "onf"
@@ -33,4 +33,4 @@
# app version applies to multiple components with potentially different
# container image versions
-appVersion: "2.9.0-dev"
+appVersion: "2.9-dev"
diff --git a/voltha/templates/api-svc.yaml b/voltha/templates/api-svc.yaml
index 7edc0ea..add4aba 100644
--- a/voltha/templates/api-svc.yaml
+++ b/voltha/templates/api-svc.yaml
@@ -19,7 +19,7 @@
namespace: "{{ .Release.Namespace }}"
spec:
ports:
- - name: grpc
+ - name: nbi-grpc
port: 55555
targetPort: 50057
selector:
diff --git a/voltha/templates/core-deploy.yaml b/voltha/templates/core-deploy.yaml
index 84f13e4..fa5731b 100644
--- a/voltha/templates/core-deploy.yaml
+++ b/voltha/templates/core-deploy.yaml
@@ -88,24 +88,27 @@
- "/app/rw_core"
- "--kv_store_type=etcd"
- "--kv_store_address={{ tpl .Values.services.etcd.address . }}"
- - "--grpc_address=0.0.0.0:50057"
+ - "--grpc_nbi_address=0.0.0.0:50057"
+ - "--grpc_sbi_address=0.0.0.0:50058"
- "--banner"
- - "--kafka_adapter_address={{ tpl .Values.services.kafka.adapter.address . }}"
- "--kafka_cluster_address={{ tpl .Values.services.kafka.cluster.address . }}"
- - "--rw_core_topic={{ tpl .Values.rw_core.topics.core_topic . }}"
+ - "--rpc_timeout={{ tpl .Values.rw_core.rpc_timeout . }}"
+ - "--internal_timeout={{ tpl .Values.rw_core.internal_timeout . }}"
- "--event_topic={{ .Values.rw_core.topics.event_topic }}"
- - "--core_timeout={{ tpl .Values.rw_core.core_timeout . }}"
- - "--timeout_long_request={{ tpl .Values.rw_core.timeout_long_request . }}"
- - "--timeout_request={{ tpl .Values.rw_core.timeout_request . }}"
- "--log_level={{ $log_level }}"
- "--probe_address=:8080"
- "--trace_enabled={{ .Values.global.tracing.enabled }}"
- "--trace_agent_address={{ tpl .Values.services.tracing_agent.address . }}"
- "--log_correlation_enabled={{ .Values.global.log_correlation.enabled }}"
- "--stack_id={{ tpl .Values.rw_core.stack_id . }}"
+ - "--backoff_retry_initial_interval={{ .Values.rw_core.backoff_initial_interval }}"
+ - "--backoff_retry_max_interval={{ .Values.rw_core.backoff_max_interval }}"
+ - "--backoff_retry_max_elapsed_time={{ .Values.rw_core.backoff_max_elapsed_time }}"
ports:
- containerPort: 50057
- name: grpc
+ name: nbi-grpc
+ - containerPort: 50058
+ name: core-grpc
{{- if .Values.securityContext.enabled }}
securityContext:
allowPrivilegeEscalation: false
@@ -114,14 +117,14 @@
httpGet:
path: /healthz
port: 8080
- initialDelaySeconds: 3
- periodSeconds: 3
+ initialDelaySeconds: {{ .Values.probe.liveness.initial_delay_seconds }}
+ periodSeconds: {{ .Values.probe.liveness.period_seconds }}
readinessProbe:
httpGet:
path: /readz
port: 8080
- initialDelaySeconds: 3
- periodSeconds: 3
+ initialDelaySeconds: {{ .Values.probe.readiness.initial_delay_seconds }}
+ periodSeconds: {{ .Values.probe.readiness.period_seconds }}
resources:
requests:
{{- if .Values.resources.rw_core.requests.memory }}
diff --git a/voltha/templates/core-svc.yaml b/voltha/templates/core-svc.yaml
new file mode 100644
index 0000000..e5aa343
--- /dev/null
+++ b/voltha/templates/core-svc.yaml
@@ -0,0 +1,27 @@
+# Copyright 2019-present Open Networking Foundation
+#
+# 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.
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: "{{ template "fullname" . }}-core"
+ namespace: "{{ .Release.Namespace }}"
+spec:
+ ports:
+ - name: core-grpc
+ port: 55558
+ targetPort: 50058
+ selector:
+ app: rw-core
+ release: "{{ .Release.Name }}"
diff --git a/voltha/values.yaml b/voltha/values.yaml
index b25670b..f703115 100644
--- a/voltha/values.yaml
+++ b/voltha/values.yaml
@@ -27,7 +27,8 @@
image_tag: ~
image_pullPolicy: "Always"
rw_core:
- timeout: "10s"
+ rpc_timeout: "10s"
+ internal_timeout: "10s"
# Configure Log Correlation
log_correlation:
enabled: true
@@ -35,6 +36,15 @@
tracing:
enabled: true
+# Probe values
+probe:
+ liveness:
+ initial_delay_seconds: 3
+ period_seconds: 3
+ readiness:
+ initial_delay_seconds: 3
+ period_seconds: 3
+
# Default security context under which the containers run
securityContext:
enabled: true
@@ -45,8 +55,6 @@
# Define connectivity to services on which VOLTHA depends
services:
kafka:
- adapter:
- address: kafka:9092
cluster:
address: kafka:9092
@@ -79,14 +87,15 @@
rw_core:
log_level: '{{ .Values.global.log_level }}'
- core_timeout: '{{ .Values.global.rw_core.timeout }}'
- timeout_long_request: '{{ .Values.global.rw_core.timeout }}'
- timeout_request: '{{ .Values.global.rw_core.timeout }}'
+ rpc_timeout: '{{ .Values.global.rw_core.rpc_timeout }}'
+ internal_timeout: '{{ .Values.global.rw_core.internal_timeout }}'
kv_store_data_prefix: 'service/{{ .Values.global.stack_name }}_voltha'
stack_id: "{{ .Values.global.stack_name }}"
topics:
- core_topic: "{{ .Values.global.stack_name }}_rwcore"
event_topic: "voltha.events"
+ backoff_initial_interval: 500ms
+ backoff_max_interval: 5s
+ backoff_max_elapsed_time: 0s
ofagent:
log_level: '{{ .Values.global.log_level }}'
@@ -97,13 +106,13 @@
ofagent:
registry: '{{ .Values.global.image_registry }}'
repository: '{{ .Values.global.image_org }}voltha-ofagent-go'
- tag: '{{- if hasKey .Values.global "image_tag" }}{{- if .Values.global.image_tag }}{{ .Values.global.image_tag }}{{- else }}1.6.5{{- end }}{{- else }}1.6.5{{- end }}'
+ tag: '{{- if hasKey .Values.global "image_tag" }}{{- if .Values.global.image_tag }}{{ .Values.global.image_tag }}{{- else }}2.0.0{{- end }}{{- else }}2.0.0{{- end }}'
pullPolicy: '{{ .Values.global.image_pullPolicy }}'
rw_core:
registry: '{{ .Values.global.image_registry }}'
repository: '{{ .Values.global.image_org }}voltha-rw-core'
- tag: '{{- if hasKey .Values.global "image_tag" }}{{- if .Values.global.image_tag }}{{ .Values.global.image_tag }}{{- else }}2.9.3{{- end }}{{- else }}2.9.3{{- end }}'
+ tag: '{{- if hasKey .Values.global "image_tag" }}{{- if .Values.global.image_tag }}{{ .Values.global.image_tag }}{{- else }}3.0.0{{- end }}{{- else }}3.0.0{{- end }}'
pullPolicy: '{{ .Values.global.image_pullPolicy }}'
ingress: