summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--kubernetes/aai/charts/aai-hbase/.helmignore21
-rw-r--r--kubernetes/aai/charts/aai-hbase/Chart.yaml4
-rw-r--r--kubernetes/aai/charts/aai-hbase/templates/deployment.yaml72
-rw-r--r--kubernetes/aai/charts/aai-hbase/templates/service.yaml55
-rw-r--r--kubernetes/aai/charts/aai-hbase/values.yaml91
-rw-r--r--kubernetes/aai/charts/aai-resources/resources/config/aaiconfig.properties14
-rw-r--r--kubernetes/aai/charts/aai-traversal/resources/config/aaiconfig.properties14
-rw-r--r--kubernetes/aai/resources/config/aai-data/chef-config/dev/.knife/solo.rb9
-rw-r--r--kubernetes/aai/resources/config/aai-data/environments/README.md8
-rw-r--r--kubernetes/aai/resources/config/aai-data/environments/simpledemo.json124
-rw-r--r--kubernetes/aai/resources/config/aai-data/environments/solo.json123
-rw-r--r--kubernetes/aai/values.yaml2
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/aai-hbase-health.json21
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/aai-tabular-backend-health.json14
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/tabular-db-availability.sh20
-rw-r--r--kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/Chart.yaml18
-rw-r--r--kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/requirements.yaml18
-rw-r--r--kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/resources/config/application.properties62
-rw-r--r--kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/resources/config/logback.xml236
-rw-r--r--kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/configmap.yaml30
-rw-r--r--kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/deployment.yaml112
-rw-r--r--kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/service.yaml41
-rw-r--r--kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/values.yaml118
23 files changed, 635 insertions, 592 deletions
diff --git a/kubernetes/aai/charts/aai-hbase/.helmignore b/kubernetes/aai/charts/aai-hbase/.helmignore
deleted file mode 100644
index f0c1319444..0000000000
--- a/kubernetes/aai/charts/aai-hbase/.helmignore
+++ /dev/null
@@ -1,21 +0,0 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
diff --git a/kubernetes/aai/charts/aai-hbase/Chart.yaml b/kubernetes/aai/charts/aai-hbase/Chart.yaml
deleted file mode 100644
index eaf6bbdb74..0000000000
--- a/kubernetes/aai/charts/aai-hbase/Chart.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-description: ONAP AAI hbase
-name: aai-hbase
-version: 2.0.0
diff --git a/kubernetes/aai/charts/aai-hbase/templates/deployment.yaml b/kubernetes/aai/charts/aai-hbase/templates/deployment.yaml
deleted file mode 100644
index 5308fa0362..0000000000
--- a/kubernetes/aai/charts/aai-hbase/templates/deployment.yaml
+++ /dev/null
@@ -1,72 +0,0 @@
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: {{ include "common.fullname" . }}
- namespace: {{ include "common.namespace" . }}
- labels:
- app: {{ include "common.name" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-spec:
- replicas: {{ .Values.replicaCount }}
- template:
- metadata:
- labels:
- app: {{ include "common.name" . }}
- release: {{ .Release.Name }}
- name: {{ include "common.name" . }}
- spec:
- hostname: aai-hbase
- containers:
- - name: {{ include "common.name" . }}
- image: {{ .Values.global.dockerhubRepository | default .Values.dockerhubRepository }}/{{ .Values.image }}
- imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- ports:
- - containerPort: {{ .Values.service.internalPort }}
- - containerPort: {{ .Values.service.internalPort2 }}
- - containerPort: {{ .Values.service.internalPort3 }}
- - containerPort: {{ .Values.service.internalPort4 }}
- - containerPort: {{ .Values.service.internalPort5 }}
- - containerPort: {{ .Values.service.internalPort6 }}
- - containerPort: {{ .Values.service.internalPort7 }}
- # disable liveness probe when breakpoints set in debugger
- # so K8s doesn't restart unresponsive container
- {{- if eq .Values.liveness.enabled true }}
- livenessProbe:
- tcpSocket:
- port: {{ .Values.service.internalPort }}
- initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.liveness.periodSeconds }}
- {{ end -}}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.service.internalPort }}
- initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
- periodSeconds: {{ .Values.readiness.periodSeconds }}
- volumeMounts:
- - name: hbase-data
- mountPath: /tmp
- - name: localtime
- mountPath: /etc/localtime
- readOnly: true
- resources:
-{{ toYaml .Values.resources | indent 10 }}
- {{- if .Values.nodeSelector }}
- nodeSelector:
-{{ toYaml .Values.nodeSelector | indent 8 }}
- {{- end -}}
- {{- if .Values.affinity }}
- affinity:
-{{ toYaml .Values.affinity | indent 8 }}
- {{- end }}
-
- volumes:
- - name: hbase-data
- hostPath:
- path: {{ .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
- - name: localtime
- hostPath:
- path: /etc/localtime
- imagePullSecrets:
- - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aai/charts/aai-hbase/templates/service.yaml b/kubernetes/aai/charts/aai-hbase/templates/service.yaml
deleted file mode 100644
index 53c5e5f979..0000000000
--- a/kubernetes/aai/charts/aai-hbase/templates/service.yaml
+++ /dev/null
@@ -1,55 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: {{ include "common.servicename" . }}
- namespace: {{ include "common.namespace" . }}
- labels:
- app: {{ include "common.name" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-spec:
- type: {{ .Values.service.type }}
- ports:
- {{if eq .Values.service.type "NodePort" -}}
- - port: {{ .Values.service.internalPort }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
- name: {{ .Values.service.name }}
- - port: {{ .Values.service.internalPort2 }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
- name: {{ .Values.service.name }}2
- - port: {{ .Values.service.internalPor3t }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
- name: {{ .Values.service.name }}3
- - port: {{ .Values.service.internalPort4 }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort4 }}
- name: {{ .Values.service.name }}4
- - port: {{ .Values.service.internalPort5 }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort5 }}
- name: {{ .Values.service.name }}5
- - port: {{ .Values.service.internalPort6 }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort6 }}
- name: {{ .Values.service.name }}6
- - port: {{ .Values.service.internalPort7 }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort7 }}
- name: {{ .Values.service.name }}7
- {{- else -}}
- - port: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
- - port: {{ .Values.service.internalPort2 }}
- name: {{ .Values.service.name }}2
- - port: {{ .Values.service.internalPort3 }}
- name: {{ .Values.service.name }}3
- - port: {{ .Values.service.internalPort4 }}
- name: {{ .Values.service.name }}4
- - port: {{ .Values.service.internalPort5 }}
- name: {{ .Values.service.name }}5
- - port: {{ .Values.service.internalPort6 }}
- name: {{ .Values.service.name }}6
- - port: {{ .Values.service.internalPort7 }}
- name: {{ .Values.service.name }}7
- {{- end}}
- selector:
- app: {{ include "common.name" . }}
- release: {{ .Release.Name }}
- clusterIP: None
diff --git a/kubernetes/aai/charts/aai-hbase/values.yaml b/kubernetes/aai/charts/aai-hbase/values.yaml
deleted file mode 100644
index bda1270889..0000000000
--- a/kubernetes/aai/charts/aai-hbase/values.yaml
+++ /dev/null
@@ -1,91 +0,0 @@
-# Default values for hbase.
-# This is a YAML-formatted file.
-# Declare variables to be passed into your templates.
-global: # global defaults
- nodePortPrefix: 302
-
-
-# application image
-dockerhubRepository: registry.hub.docker.com
-image: aaionap/hbase:1.2.0
-pullPolicy: Always
-
-# application configuration
-config: {}
-
-
-# default number of instances
-replicaCount: 1
-
-nodeSelector: {}
-
-affinity: {}
-
-# probe configuration parameters
-liveness:
- initialDelaySeconds: 10
- periodSeconds: 10
- # necessary to disable liveness probe when setting breakpoints
- # in debugger so K8s doesn't restart unresponsive container
- enabled: true
-
-readiness:
- initialDelaySeconds: 10
- periodSeconds: 10
-
-service:
- type: ClusterIP
- name: aai-hbase
- internalPort: 2181
- internalPort2: 8080
- internalPort3: 8085
- internalPort4: 9090
- internalPort5: 16000
- internalPort6: 16010
- internalPort7: 16201
-
-
-ingress:
- enabled: false
-
-persistence:
- enabled: true
-
- ## A manually managed Persistent Volume and Claim
- ## Requires persistence.enabled: true
- ## If defined, PVC must be created manually before volume will be bound
- # existingClaim:
- volumeReclaimPolicy: Retain
-
- ## database data Persistent Volume Storage Class
- ## If defined, storageClassName: <storageClass>
- ## If set to "-", storageClassName: "", which disables dynamic provisioning
- ## If undefined (the default) or set to null, no storageClassName spec is
- ## set, choosing the default provisioner. (gp2 on AWS, standard on
- ## GKE, AWS & OpenStack)
- ##
- ## storageClass: "-"
- accessMode: ReadWriteMany
- size: 2Gi
- mountPath: /dockerdata-nfs
- mountSubPath: aai/hbase
-
-
-resources: {}
- # We usually recommend not to specify default resources and to leave this as a conscious
- # choice for the user. This also increases chances charts run on environments with little
- # resources, such as Minikube. If you do want to specify resources, uncomment the following
- # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
- #
- # Example:
- # Configure resource requests and limits
- # ref: http://kubernetes.io/docs/user-guide/compute-resources/
- # Minimum memory for development is 2 CPU cores and 4GB memory
- # Minimum memory for production is 4 CPU cores and 8GB memory
-#resources:
-# limits:
-# cpu: 2
-# memory: 4Gi
-# requests:
-# cpu: 2
-# memory: 4Gi
diff --git a/kubernetes/aai/charts/aai-resources/resources/config/aaiconfig.properties b/kubernetes/aai/charts/aai-resources/resources/config/aaiconfig.properties
index 1763a8eda9..d0e322d2d8 100644
--- a/kubernetes/aai/charts/aai-resources/resources/config/aaiconfig.properties
+++ b/kubernetes/aai/charts/aai-resources/resources/config/aaiconfig.properties
@@ -81,20 +81,6 @@ aai.grooming.default.sleep.minutes=7
aai.model.proc.max.levels=50
aai.edgeTag.proc.max.levels=50
-# for transaction log
-aai.logging.hbase.interceptor=true
-aai.logging.hbase.enabled=true
-aai.logging.hbase.logrequest=true
-aai.logging.hbase.logresponse=true
-
-# for gremlin server
-aai.server.rebind=g
-hbase.table.name=aailogging.dev
-hbase.table.timestamp.format=YYYYMMdd-HH:mm:ss:SSS
-hbase.zookeeper.quorum=localhost
-hbase.zookeeper.property.clientPort=2181
-hbase.zookeeper.znode.parent=/hbase
-
aai.logging.trace.enabled=true
aai.logging.trace.logrequest=false
aai.logging.trace.logresponse=false
diff --git a/kubernetes/aai/charts/aai-traversal/resources/config/aaiconfig.properties b/kubernetes/aai/charts/aai-traversal/resources/config/aaiconfig.properties
index 735609b424..32225553dc 100644
--- a/kubernetes/aai/charts/aai-traversal/resources/config/aaiconfig.properties
+++ b/kubernetes/aai/charts/aai-traversal/resources/config/aaiconfig.properties
@@ -81,20 +81,6 @@ aai.grooming.default.sleep.minutes=7
aai.model.proc.max.levels=50
aai.edgeTag.proc.max.levels=50
-# for transaction log
-aai.logging.hbase.interceptor=true
-aai.logging.hbase.enabled=true
-aai.logging.hbase.logrequest=true
-aai.logging.hbase.logresponse=true
-
-# for gremlin server
-aai.server.rebind=g
-hbase.table.name=aailogging.dev
-hbase.table.timestamp.format=YYYYMMdd-HH:mm:ss:SSS
-hbase.zookeeper.quorum=localhost
-hbase.zookeeper.property.clientPort=2181
-hbase.zookeeper.znode.parent=/hbase
-
aai.logging.trace.enabled=true
aai.logging.trace.logrequest=false
aai.logging.trace.logresponse=false
diff --git a/kubernetes/aai/resources/config/aai-data/chef-config/dev/.knife/solo.rb b/kubernetes/aai/resources/config/aai-data/chef-config/dev/.knife/solo.rb
deleted file mode 100644
index 3d903adcc5..0000000000
--- a/kubernetes/aai/resources/config/aai-data/chef-config/dev/.knife/solo.rb
+++ /dev/null
@@ -1,9 +0,0 @@
-current_dir = File.dirname(__FILE__)
-org = ENV['CHEF_ORG'] || "aai-dev"
-env = ENV['AAI_CHEF_ENV'] || "dev"
-env_path = ENV['AAI_CHEF_LOC'] || ""
-node_name "chef-node"
-cookbook_path [ "/var/chef/aai-config/cookbooks" ]
-environment_path "#{env_path}"
-log_level :info
-log_location STDOUT \ No newline at end of file
diff --git a/kubernetes/aai/resources/config/aai-data/environments/README.md b/kubernetes/aai/resources/config/aai-data/environments/README.md
deleted file mode 100644
index 3fa254d25a..0000000000
--- a/kubernetes/aai/resources/config/aai-data/environments/README.md
+++ /dev/null
@@ -1,8 +0,0 @@
-Requires Chef 0.10.0+.
-
-This directory is for Ruby DSL and JSON files for environments.
-It will contain the A&AI environment files.
-For more information see "About Environments" in the Chef documentation:
-
-http://docs.chef.io/environments.html
-
diff --git a/kubernetes/aai/resources/config/aai-data/environments/simpledemo.json b/kubernetes/aai/resources/config/aai-data/environments/simpledemo.json
deleted file mode 100644
index 598a3ba1c4..0000000000
--- a/kubernetes/aai/resources/config/aai-data/environments/simpledemo.json
+++ /dev/null
@@ -1,124 +0,0 @@
-{
- "name": "simpledemo",
- "description": "Development Environment",
- "cookbook_versions": {
- "aai-traversal-auth" : "= 1.0.0",
- "aai-traversal-config" : "= 1.0.0",
- "aai-traversal-process" : "= 1.0.0",
-
- "aai-resources-auth" : "= 1.0.0",
- "aai-resources-config" : "= 1.0.0",
- "aai-resources-process" : "= 1.0.0"
- },
- "json_class": "Chef::Environment",
- "chef_type": "environment",
- "default_attributes": {
- "aai-traversal-config": {
- "SERVICE_API_VERSION": "1.0.1",
- "SOA_CLOUD_NAMESPACE": "org.openecomp.aai",
- "AJSC_SERVICE_NAMESPACE": "traversal",
- "AFTSWM_ACTION_ARTIFACT_NAME": "traversal",
- "AJSC_JETTY_ThreadCount_MAX": "500",
- "AJSC_JETTY_ThreadCount_MIN": "10",
- "AJSC_SSL_PORT": "8446",
- "AJSC_SVC_PORT": "8083",
- "KEY_MANAGER_PASSWORD": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
- "KEY_STORE_PASSWORD": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
- "MAX_HEAP_SIZE": "2056m",
- "MAX_PERM_SIZE": "512M",
- "MIN_HEAP_SIZE": "2056m",
- "PERM_SIZE": "512M",
- "PRE_JVM_ARGS": "-XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 -XX:+ScavengeBeforeFullGC -XX:+CMSScavengeBeforeRemark -XX:-HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps",
- "AAIENV": "dev",
- "PROJECT_HOME": "/opt/app/aai-traversal",
- "LOGROOT": "/opt/aai/logroot",
- "JAVA_HOME": "/usr/lib/jvm/java-8-openjdk-amd64",
- "AAI_SERVER_URL_BASE": "https:/aai.{{.Release.Namespace}}:8443/aai/",
- "AAI_SERVER_URL": "https:/aai.{{.Release.Namespace}}:8443/aai/v11/",
- "AAI_GLOBAL_CALLBACK_URL": "https:/aai.{{.Release.Namespace}}:8443/aai/",
- "AAI_TRUSTSTORE_FILENAME": "aai_keystore",
- "AAI_TRUSTSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
- "AAI_KEYSTORE_FILENAME": "aai_keystore",
- "AAI_KEYSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
- "APPLICATION_SERVERS": "aai.{{.Release.Namespace}}",
- "AAI_DMAAP_PROTOCOL": "http",
- "AAI_DMAAP_HOST_PORT": "message-router.{{.Release.Namespace}}:3904",
- "AAI_DMAAP_TOPIC_NAME": "AAI-EVENT",
- "AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_STATUS": "UNPROCESSED",
- "AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_TYPE": "AAI-EVENT",
- "AAI_NOTIFICATION_EVENT_DEFAULT_DOMAIN": "dev",
- "AAI_NOTIFICATION_EVENT_DEFAULT_SOURCE_NAME": "aai",
- "AAI_NOTIFICATION_EVENT_DEFAULT_SEQUENCE_NUMBER": "0",
- "AAI_NOTIFICATION_EVENT_DEFAULT_SEVERITY": "NORMAL",
- "AAI_NOTIFICATION_EVENT_DEFAULT_VERSION": "v11",
- "AAI_NOTIFICATION_CURRENT_VERSION": "v11",
- "RESOURCE_VERSION_ENABLE_FLAG": "true",
- "TXN_HBASE_TABLE_NAME": "aailogging.dev",
- "TXN_ZOOKEEPER_QUORUM": "aai-hbase.{{.Release.Namespace}}",
- "TXN_ZOOKEEPER_PROPERTY_CLIENTPORT": "2181",
- "TXN_HBASE_ZOOKEEPER_ZNODE_PARENT": "/hbase",
- "AAI_WORKLOAD_PREFERRED_ROUTE_KEY": "MR1",
- "STORAGE_HOSTNAME": "aai-hbase.{{.Release.Namespace}}",
- "STORAGE_HBASE_TABLE": "aaigraph.dev",
- "STORAGE_HBASE_ZOOKEEPER_ZNODE_PARENT": "/hbase",
- "DB_CACHE_CLEAN_WAIT": "20",
- "DB_CACHE_TIME": "180000",
- "DB_CACHE_SIZE": "0.3",
- "AAI_DEFAULT_API_VERSION": "v11"
- },
- "aai-resources-config": {
- "SERVICE_API_VERSION": "1.0.1",
- "AJSC_SERVICE_NAMESPACE": "aai-resources",
- "AFTSWM_ACTION_ARTIFACT_NAME": "aai-resources",
- "AJSC_JETTY_ThreadCount_MAX": "500",
- "AJSC_JETTY_ThreadCount_MIN": "10",
- "AJSC_SSL_PORT": "8447",
- "AJSC_SVC_PORT": "8087",
- "KEY_MANAGER_PASSWORD": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
- "KEY_STORE_PASSWORD": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
- "MAX_HEAP_SIZE": "2056m",
- "MAX_PERM_SIZE": "512M",
- "MIN_HEAP_SIZE": "2056m",
- "PERM_SIZE": "512M",
- "PRE_JVM_ARGS": "-XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 -XX:+ScavengeBeforeFullGC -XX:+CMSScavengeBeforeRemark -XX:-HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps",
- "AAIENV": "dev",
- "PROJECT_HOME": "/opt/app/aai-resources",
- "LOGROOT": "/opt/aai/logroot",
- "JAVA_HOME": "/usr/lib/jvm/java-8-openjdk-amd64",
- "AAI_SERVER_URL_BASE": "https:/aai.{{.Release.Namespace}}:8443/aai/",
- "AAI_SERVER_URL": "https:/aai.{{.Release.Namespace}}:8443/aai/v11/",
- "AAI_GLOBAL_CALLBACK_URL": "https:/aai.{{.Release.Namespace}}:8443/aai/",
- "AAI_TRUSTSTORE_FILENAME": "aai_keystore",
- "AAI_TRUSTSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
- "AAI_KEYSTORE_FILENAME": "aai_keystore",
- "AAI_KEYSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
- "APPLICATION_SERVERS": "aai.{{.Release.Namespace}}",
- "AAI_DMAAP_PROTOCOL": "http",
- "AAI_DMAAP_HOST_PORT": "message-router.{{.Release.Namespace}}:3904",
- "AAI_DMAAP_TOPIC_NAME": "AAI-EVENT",
- "AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_STATUS": "UNPROCESSED",
- "AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_TYPE": "AAI-EVENT",
- "AAI_NOTIFICATION_EVENT_DEFAULT_DOMAIN": "dev",
- "AAI_NOTIFICATION_EVENT_DEFAULT_SOURCE_NAME": "aai",
- "AAI_NOTIFICATION_EVENT_DEFAULT_SEQUENCE_NUMBER": "0",
- "AAI_NOTIFICATION_EVENT_DEFAULT_SEVERITY": "NORMAL",
- "AAI_NOTIFICATION_EVENT_DEFAULT_VERSION": "v11",
- "AAI_NOTIFICATION_CURRENT_VERSION": "v11",
- "RESOURCE_VERSION_ENABLE_FLAG": "true",
- "TXN_HBASE_TABLE_NAME": "aailogging.dev",
- "TXN_ZOOKEEPER_QUORUM": "aai-hbase.{{.Release.Namespace}}",
- "TXN_ZOOKEEPER_PROPERTY_CLIENTPORT": "2181",
- "TXN_HBASE_ZOOKEEPER_ZNODE_PARENT": "/hbase",
- "AAI_WORKLOAD_PREFERRED_ROUTE_KEY": "MR1",
- "STORAGE_HOSTNAME": "aai-hbase.{{.Release.Namespace}}",
- "STORAGE_HBASE_TABLE": "aaigraph.dev",
- "STORAGE_HBASE_ZOOKEEPER_ZNODE_PARENT": "/hbase",
- "DB_CACHE_CLEAN_WAIT": "20",
- "DB_CACHE_TIME": "180000",
- "DB_CACHE_SIZE": "0.3",
- "AAI_DEFAULT_API_VERSION": "v11"
- }
- },
- "override_attributes": {
- }
-}
diff --git a/kubernetes/aai/resources/config/aai-data/environments/solo.json b/kubernetes/aai/resources/config/aai-data/environments/solo.json
deleted file mode 100644
index ac83173908..0000000000
--- a/kubernetes/aai/resources/config/aai-data/environments/solo.json
+++ /dev/null
@@ -1,123 +0,0 @@
-{
- "name": "local",
- "description": "Development Environment",
- "cookbook_versions": {
- "aai-traversal-auth" : "= 1.0.0",
- "aai-traversal-config" : "= 1.0.0",
- "aai-traversal-process" : "= 1.0.0",
-
- "aai-resources-auth" : "= 1.0.0",
- "aai-resources-config" : "= 1.0.0",
- "aai-resources-process" : "= 1.0.0"
- },
- "json_class": "Chef::Environment",
- "chef_type": "environment",
- "default_attributes": {
- "aai-traversal-config": {
- "SERVICE_API_VERSION": "1.0.1",
- "AJSC_SERVICE_NAMESPACE": "traversal",
- "AFTSWM_ACTION_ARTIFACT_NAME": "traversal",
- "AJSC_JETTY_ThreadCount_MAX": "500",
- "AJSC_JETTY_ThreadCount_MIN": "10",
- "AJSC_SSL_PORT": "8446",
- "AJSC_SVC_PORT": "8083",
- "KEY_MANAGER_PASSWORD": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
- "KEY_STORE_PASSWORD": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
- "MAX_HEAP_SIZE": "2056m",
- "MAX_PERM_SIZE": "512M",
- "MIN_HEAP_SIZE": "2056m",
- "PERM_SIZE": "512M",
- "PRE_JVM_ARGS": "-XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 -XX:+ScavengeBeforeFullGC -XX:+CMSScavengeBeforeRemark -XX:-HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps",
- "AAIENV": "dev",
- "PROJECT_HOME": "/opt/app/aai-traversal",
- "LOGROOT": "/opt/aai/logroot",
- "JAVA_HOME": "/usr/lib/jvm/java-8-openjdk-amd64",
- "AAI_SERVER_URL_BASE": "https://localhost:8443/aai/",
- "AAI_SERVER_URL": "https://localhost:8443/aai/v11/",
- "AAI_GLOBAL_CALLBACK_URL": "https://localhost:8443/aai/",
- "AAI_TRUSTSTORE_FILENAME": "aai_keystore",
- "AAI_TRUSTSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
- "AAI_KEYSTORE_FILENAME": "aai_keystore",
- "AAI_KEYSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
- "APPLICATION_SERVERS": "localhost",
- "AAI_DMAAP_PROTOCOL": "http",
- "AAI_DMAAP_HOST_PORT": "localhost:3904",
- "AAI_DMAAP_TOPIC_NAME": "AAI-EVENT",
- "AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_STATUS": "UNPROCESSED",
- "AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_TYPE": "AAI-EVENT",
- "AAI_NOTIFICATION_EVENT_DEFAULT_DOMAIN": "dev",
- "AAI_NOTIFICATION_EVENT_DEFAULT_SOURCE_NAME": "aai",
- "AAI_NOTIFICATION_EVENT_DEFAULT_SEQUENCE_NUMBER": "0",
- "AAI_NOTIFICATION_EVENT_DEFAULT_SEVERITY": "NORMAL",
- "AAI_NOTIFICATION_EVENT_DEFAULT_VERSION": "v11",
- "AAI_NOTIFICATION_CURRENT_VERSION": "v11",
- "RESOURCE_VERSION_ENABLE_FLAG": "true",
- "TXN_HBASE_TABLE_NAME": "aailogging.dev",
- "TXN_ZOOKEEPER_QUORUM": "localhost",
- "TXN_ZOOKEEPER_PROPERTY_CLIENTPORT": "2181",
- "TXN_HBASE_ZOOKEEPER_ZNODE_PARENT": "/hbase",
- "AAI_WORKLOAD_PREFERRED_ROUTE_KEY": "MR1",
- "STORAGE_HOSTNAME": "localhost",
- "STORAGE_HBASE_TABLE": "aaigraph.dev",
- "STORAGE_HBASE_ZOOKEEPER_ZNODE_PARENT": "/hbase",
- "DB_CACHE_CLEAN_WAIT": "20",
- "DB_CACHE_TIME": "180000",
- "DB_CACHE_SIZE": "0.3",
- "AAI_DEFAULT_API_VERSION": "v11"
- },
- "aai-resources-config": {
- "SERVICE_API_VERSION": "1.0.1",
- "AJSC_SERVICE_NAMESPACE": "aai-resources",
- "AFTSWM_ACTION_ARTIFACT_NAME": "aai-resources",
- "AJSC_JETTY_ThreadCount_MAX": "500",
- "AJSC_JETTY_ThreadCount_MIN": "10",
- "AJSC_SSL_PORT": "8447",
- "AJSC_SVC_PORT": "8087",
- "KEY_MANAGER_PASSWORD": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
- "KEY_STORE_PASSWORD": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
- "MAX_HEAP_SIZE": "2056m",
- "MAX_PERM_SIZE": "512M",
- "MIN_HEAP_SIZE": "2056m",
- "PERM_SIZE": "512M",
- "PRE_JVM_ARGS": "-XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 -XX:+ScavengeBeforeFullGC -XX:+CMSScavengeBeforeRemark -XX:-HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps",
- "AAIENV": "dev",
- "PROJECT_HOME": "/opt/app/aai-resources",
- "LOGROOT": "/opt/aai/logroot",
- "JAVA_HOME": "/usr/lib/jvm/java-8-openjdk-amd64",
- "AAI_SERVER_URL_BASE": "https://localhost:8443/aai/",
- "AAI_SERVER_URL": "https://localhost:8443/aai/v11/",
- "AAI_GLOBAL_CALLBACK_URL": "https://localhost:8443/aai/",
- "AAI_TRUSTSTORE_FILENAME": "aai_keystore",
- "AAI_TRUSTSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
- "AAI_KEYSTORE_FILENAME": "aai_keystore",
- "AAI_KEYSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
- "APPLICATION_SERVERS": "localhost",
- "AAI_DMAAP_PROTOCOL": "http",
- "AAI_DMAAP_HOST_PORT": "localhost:3904",
- "AAI_DMAAP_TOPIC_NAME": "AAI-EVENT",
- "AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_STATUS": "UNPROCESSED",
- "AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_TYPE": "AAI-EVENT",
- "AAI_NOTIFICATION_EVENT_DEFAULT_DOMAIN": "dev",
- "AAI_NOTIFICATION_EVENT_DEFAULT_SOURCE_NAME": "aai",
- "AAI_NOTIFICATION_EVENT_DEFAULT_SEQUENCE_NUMBER": "0",
- "AAI_NOTIFICATION_EVENT_DEFAULT_SEVERITY": "NORMAL",
- "AAI_NOTIFICATION_EVENT_DEFAULT_VERSION": "v11",
- "AAI_NOTIFICATION_CURRENT_VERSION": "v11",
- "RESOURCE_VERSION_ENABLE_FLAG": "true",
- "TXN_HBASE_TABLE_NAME": "aailogging.dev",
- "TXN_ZOOKEEPER_QUORUM": "localhost",
- "TXN_ZOOKEEPER_PROPERTY_CLIENTPORT": "2181",
- "TXN_HBASE_ZOOKEEPER_ZNODE_PARENT": "/hbase",
- "AAI_WORKLOAD_PREFERRED_ROUTE_KEY": "MR1",
- "STORAGE_HOSTNAME": "localhost",
- "STORAGE_HBASE_TABLE": "aaigraph.dev",
- "STORAGE_HBASE_ZOOKEEPER_ZNODE_PARENT": "/hbase",
- "DB_CACHE_CLEAN_WAIT": "20",
- "DB_CACHE_TIME": "180000",
- "DB_CACHE_SIZE": "0.3",
- "AAI_DEFAULT_API_VERSION": "v11"
- }
- },
- "override_attributes": {
- }
-}
diff --git a/kubernetes/aai/values.yaml b/kubernetes/aai/values.yaml
index b07048e134..a68d2402bf 100644
--- a/kubernetes/aai/values.yaml
+++ b/kubernetes/aai/values.yaml
@@ -36,8 +36,6 @@ global: # global defaults
serviceName: aai-champ
aaiElasticsearch:
serviceName: aai-elasticsearch
- hbase:
- serviceName: aai-hbase
resources:
serviceName: aai-resources
sparkyBe:
diff --git a/kubernetes/consul/resources/config/consul-agent-config/aai-hbase-health.json b/kubernetes/consul/resources/config/consul-agent-config/aai-hbase-health.json
deleted file mode 100644
index 4260035616..0000000000
--- a/kubernetes/consul/resources/config/consul-agent-config/aai-hbase-health.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "service": {
- "name": "A&AI HBase Health Check",
- "checks": [
- {
- "id": "hbase-aai",
- "name": "HBase Health Check",
- "http": "http://aai-hbase:8080/status/cluster",
- "method": "GET",
- "header": {
- "Cache-Control": ["no-cache"],
- "Content-Type": ["application/json"],
- "Accept": ["application/json"]
- },
- "tls_skip_verify": true,
- "interval": "15s",
- "timeout": "1s"
- }
- ]
- }
-}
diff --git a/kubernetes/consul/resources/config/consul-agent-config/aai-tabular-backend-health.json b/kubernetes/consul/resources/config/consul-agent-config/aai-tabular-backend-health.json
deleted file mode 100644
index c7fc19b2ee..0000000000
--- a/kubernetes/consul/resources/config/consul-agent-config/aai-tabular-backend-health.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "service": {
- "name": "A&AI Tabular Data Store",
- "checks": [
- {
- "id": "tabular-backend",
- "name": "Tabular Data Store Operational Test",
- "script": "/consul/scripts/tabular-db-availability.sh",
- "interval": "15s",
- "timeout": "1s"
- }
- ]
- }
-}
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/tabular-db-availability.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/tabular-db-availability.sh
deleted file mode 100755
index f2c7c587ff..0000000000
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/tabular-db-availability.sh
+++ /dev/null
@@ -1,20 +0,0 @@
-
-# Query the Hbase service for the cluster status.
-GET_CLUSTER_STATUS_RESPONSE=$(curl -si -X GET -H "Accept: text/xml" http://aai-hbase:8080/status/cluster)
-
-if [ -z "$GET_CLUSTER_STATUS_RESPONSE" ]; then
- echo "Tabular store is unreachable."
- return 2
-fi
-
-# Check the resulting status JSON to see if there is a 'DeadNodes' stanza with
-# entries.
-DEAD_NODES=$(echo $GET_CLUSTER_STATUS_RESPONSE | grep "<DeadNodes/>")
-
-if [ -n "$DEAD_NODES" ]; then
- echo "Tabular store is up and accessible."
- return 0
-else
- echo "Tabular store is up but is reporting dead nodes - cluster may be in degraded state."
- return 1
-fi
diff --git a/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/Chart.yaml b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/Chart.yaml
new file mode 100644
index 0000000000..12449e8c1f
--- /dev/null
+++ b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/Chart.yaml
@@ -0,0 +1,18 @@
+# Copyright © 2018 Amdocs
+#
+# 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
+description: ONAP POMBA Network Discovery Context Builder
+name: pomba-networkdiscoveryctxbuilder
+version: 2.0.0
diff --git a/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/requirements.yaml b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/requirements.yaml
new file mode 100644
index 0000000000..37545fe2e0
--- /dev/null
+++ b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/requirements.yaml
@@ -0,0 +1,18 @@
+# Copyright © 2018 Amdocs
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
diff --git a/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/resources/config/application.properties b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/resources/config/application.properties
new file mode 100644
index 0000000000..c41c487879
--- /dev/null
+++ b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/resources/config/application.properties
@@ -0,0 +1,62 @@
+# Copyright © 2018 Amdocs
+#
+# 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
+
+spring.jersey.type=filter
+spring.mvc.urls=swagger,docs,prometheus,auditevents,info,heapdump,autoconfig,beans,loggers,dump,env,trace,health,configprops,mappings,metrics,webjars
+
+
+server.contextPath=/network-discovery
+spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration,org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
+
+#This property is used to set the Tomcat connector attributes.developers can define multiple attributes separated by comma
+#tomcat.connector.attributes=allowTrace-true
+#The max number of active threads in this pool
+server.tomcat.max-threads=200
+#The minimum number of threads always kept alive
+server.tomcat.min-Spare-Threads=25
+#The number of milliseconds before an idle thread shutsdown, unless the number of active threads are less or equal to minSpareThreads
+server.tomcat.max-idle-time=60000
+
+
+# Network Discovery Context Builder REST Service
+networkDiscoveryCtxBuilder.httpProtocol={{ .Values.config.networkDiscoveryCtxBuilderHttpProtocol }}
+networkDiscoveryCtxBuilder.port={{ .Values.config.networkDiscoveryCtxBuilderPort }}
+# Basic Authorization credentials for Network Discovery Context Builder REST Service
+networkDiscoveryCtxBuilder.userId={{ .Values.config.networkDiscoveryCtxBuilderUserId }}
+networkDiscoveryCtxBuilder.password={{ .Values.config.networkDiscoveryCtxBuilderPassword }}
+networkDiscoveryCtxBuilder.resourceList={{ .Values.config.networkDiscoveryCtxBuilderResourceList }}
+
+# Service Decomposition REST Client Configuration
+serviceDecomposition.httpProtocol={{ .Values.config.serviceDecompositionHttpProtocol }}
+serviceDecomposition.host={{ .Values.config.serviceDecompositionServiceName }}.{{.Release.Namespace}}
+serviceDecomposition.port={{ .Values.config.serviceDecompositionPort }}
+serviceDecomposition.serviceInstancePath={{ .Values.config.serviceDecompositionInstancePath }}
+#Basic Authorization Client credentials for Service Decomposition REST service
+serviceDecomposition.userId={{ .Values.config.serviceDecompositionUserId }}
+serviceDecomposition.password={{ .Values.config.serviceDecompositionPassword }}
+
+# Network Discovery Micro Service REST Client Configuration
+
+networkDiscoveryMicroService.host={{ .Values.config.networkDiscoveryServiceName }}.{{.Release.Namespace}}
+networkDiscoveryMicroService.port={{ .Values.config.networkDiscoveryPort }}
+networkDiscoveryMicroService.httpProtocol={{ .Values.config.networkDiscoveryHttpProtocol }}
+networkDiscoveryMicroService.networkDiscoveryPath={{ .Values.config.networkDiscoveryPath }}
+# Wait for Network Discovery MicroService response in milliseconds
+networkDiscoveryMicroService.responseTimeOutInMilliseconds = {{ .Values.config.networkDiscoveryTimeOutInMilliseconds }}
+# Basic Authorization credentials for Network Discovery Micro Service Rest Service
+networkDiscoveryMicroService.userId={{ .Values.config.networkDiscoveryUserId }}
+networkDiscoveryMicroService.password={{ .Values.config.networkDiscoveryPassword }}
+
+#Servlet context parameters
+server.context_parameters.p-name=value
diff --git a/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/resources/config/logback.xml b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/resources/config/logback.xml
new file mode 100644
index 0000000000..b33093054a
--- /dev/null
+++ b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/resources/config/logback.xml
@@ -0,0 +1,236 @@
+<configuration scan="true" scanPeriod="10 seconds" debug="false">
+ <jmxConfigurator />
+ <property resource="application.properties" />
+ <property name="logDirectory" value="/var/log/onap/pomba-networkdiscoveryctxbuilder" />
+ <!-- Example evaluator filter applied against console appender -->
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+ <!-- filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>ERROR</level>
+ <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter -->
+ <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>INFO</level>
+ </filter>
+ <encoder>
+ <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n
+ </pattern>
+ </encoder>
+ </appender>
+
+ <appender name="ERROR"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>INFO</level>
+ </filter>
+ <file>${logDirectory}/error.log</file>
+ <append>true</append>
+ <encoder>
+ <pattern>%date{"yyyy-MM-dd'T'HH:mm:ss,SSSXXX", UTC}|%X{RequestId}|%.20thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDescription}|%msg%n</pattern>
+ </encoder>
+ <rollingPolicy
+ class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <maxIndex>10</maxIndex>
+ <FileNamePattern>${logDirectory}/error.%i.log.zip
+ </FileNamePattern>
+ </rollingPolicy>
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>10MB</maxFileSize>
+ </triggeringPolicy>
+ </appender>
+
+ <appender name="DEBUG"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/debug.log</file>
+ <append>true</append>
+ <encoder>
+ <pattern>%date{"yyyy-MM-dd'T'HH:mm:ss,SSSXXX",UTC}|%X{RequestId}|%.20thread|%.-5level|%logger{36}|%msg%n</pattern>
+ </encoder>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/debug.%d{yyyy-MM-dd}.%i.log.zip</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>10MB</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>5</maxHistory>
+ </rollingPolicy>
+ </appender>
+
+ <appender name="AUDIT"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/audit.log</file>
+ <append>true</append>
+ <encoder>
+ <pattern>%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%.20thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|%msg%n
+ </pattern>
+ </encoder>
+ <rollingPolicy
+ class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <maxIndex>10</maxIndex>
+ <FileNamePattern>${logDirectory}/audit.%i.log.zip
+ </FileNamePattern>
+ </rollingPolicy>
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>10MB</maxFileSize>
+ </triggeringPolicy>
+ </appender>
+ <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize>
+ <appender-ref ref="AUDIT" />
+ </appender>
+
+ <appender name="METRIC"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/metric.log</file>
+ <append>true</append>
+ <encoder>
+ <pattern>%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%.20thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{TargetVirtualEntity}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|
+ %msg%n</pattern>
+ </encoder>
+ <rollingPolicy
+ class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <maxIndex>10</maxIndex>
+ <FileNamePattern>${logDirectory}/metric.%i.log.zip
+ </FileNamePattern>
+ </rollingPolicy>
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>10MB</maxFileSize>
+ </triggeringPolicy>
+ </appender>
+ <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize>
+ <appender-ref ref="METRIC" />
+ </appender>
+
+ <!-- SECURITY related loggers -->
+ <appender name="SECURITY"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/security.log</file>
+ <append>true</append>
+ <encoder>
+ <pattern>%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%.20thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|%msg%n
+ </pattern>
+ </encoder>
+ <rollingPolicy
+ class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <maxIndex>10</maxIndex>
+ <FileNamePattern>${logDirectory}/security.%i.log.zip
+ </FileNamePattern>
+ </rollingPolicy>
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>10MB</maxFileSize>
+ </triggeringPolicy>
+ </appender>
+ <appender name="asyncEELFSecurity" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize>
+ <appender-ref ref="SECURITY" />
+ </appender>
+
+ <!-- CLDS related loggers -->
+ <logger name="org.onap.pomba.clds" level="INFO" additivity="true">
+ <appender-ref ref="ERROR" />
+ </logger>
+
+ <!-- CLDS related loggers -->
+ <logger name="com.att.eelf.error" level="OFF" additivity="true">
+ <appender-ref ref="ERROR" />
+ </logger>
+ <!-- EELF related loggers -->
+ <logger name="com.att.eelf.audit" level="INFO" additivity="false">
+ <appender-ref ref="asyncEELFAudit" />
+ </logger>
+ <logger name="com.att.eelf.metrics" level="DEBUG" additivity="false">
+ <appender-ref ref="asyncEELFMetrics" />
+ </logger>
+ <logger name="com.att.eelf.security" level="DEBUG" additivity="false">
+ <appender-ref ref="asyncEELFSecurity" />
+ </logger>
+
+
+ <!-- Spring related loggers -->
+ <logger name="org.springframework" level="WARN" />
+ <logger name="org.springframework.beans" level="WARN" />
+ <logger name="org.springframework.web" level="WARN" />
+ <logger name="com.blog.spring.jms" level="WARN" />
+
+ <!-- Other Loggers that may help troubleshoot -->
+ <logger name="net.sf" level="WARN" />
+ <logger name="org.apache.commons.httpclient" level="WARN" />
+ <logger name="org.apache.commons" level="WARN" />
+ <logger name="org.apache.coyote" level="WARN" />
+ <logger name="org.apache.jasper" level="WARN" />
+
+ <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging.
+ May aid in troubleshooting) -->
+ <logger name="org.apache.camel" level="WARN" />
+ <logger name="org.apache.cxf" level="WARN" />
+ <logger name="org.apache.camel.processor.interceptor" level="WARN" />
+ <logger name="org.apache.cxf.jaxrs.interceptor" level="WARN" />
+ <logger name="org.apache.cxf.service" level="WARN" />
+ <logger name="org.restlet" level="DEBUG" />
+ <logger name="org.apache.camel.component.restlet" level="DEBUG" />
+
+ <!-- logback internals logging -->
+ <logger name="ch.qos.logback.classic" level="INFO" />
+ <logger name="ch.qos.logback.core" level="INFO" />
+
+ <!-- logback jms appenders & loggers definition starts here -->
+ <!-- logback jms appenders & loggers definition starts here -->
+ <appender name="auditLogs"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ </filter>
+ <file>${logDirectory}/Audit.log</file>
+ <rollingPolicy
+ class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDirectory}/Audit.%i.log.zip
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>9</maxIndex>
+ </rollingPolicy>
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>5MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
+ </encoder>
+ </appender>
+ <appender name="perfLogs"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ </filter>
+ <file>${logDirectory}/Perform.log</file>
+ <rollingPolicy
+ class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDirectory}/Perform.%i.log.zip
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>9</maxIndex>
+ </rollingPolicy>
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>5MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
+ </encoder>
+ </appender>
+ <logger name="AuditRecord" level="INFO" additivity="FALSE">
+ <appender-ref ref="auditLogs" />
+ </logger>
+ <logger name="AuditRecord_DirectCall" level="INFO" additivity="FALSE">
+ <appender-ref ref="auditLogs" />
+ </logger>
+ <logger name="PerfTrackerRecord" level="INFO" additivity="FALSE">
+ <appender-ref ref="perfLogs" />
+ </logger>
+ <!-- logback jms appenders & loggers definition ends here -->
+
+ <root level="WARN">
+ <appender-ref ref="DEBUG" />
+ <appender-ref ref="STDOUT" />
+ </root>
+
+</configuration>
diff --git a/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/configmap.yaml b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/configmap.yaml
new file mode 100644
index 0000000000..7c47fea02c
--- /dev/null
+++ b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/configmap.yaml
@@ -0,0 +1,30 @@
+# Copyright © 2018 Amdocs
+#
+# 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: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-log
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logback.xml").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/application.properties").AsConfig . | indent 2 }}
diff --git a/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/deployment.yaml b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/deployment.yaml
new file mode 100644
index 0000000000..2b53154e57
--- /dev/null
+++ b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/deployment.yaml
@@ -0,0 +1,112 @@
+# Copyright © 2018 Amdocs
+#
+# 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: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - mountPath: /opt/app/config/logback.xml
+ name: {{ include "common.fullname" . }}-log-conf
+ subPath: logback.xml
+ - mountPath: /opt/app/config/application.properties
+ name: {{ include "common.fullname" . }}-config
+ readOnly: true
+ subPath: application.properties
+
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # Filebeat sidecar container
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ - name: {{ include "common.fullname" . }}-log-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-log
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-pomba-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+
+
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/service.yaml b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/service.yaml
new file mode 100644
index 0000000000..defd063d2f
--- /dev/null
+++ b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/service.yaml
@@ -0,0 +1,41 @@
+# Copyright © 2018 Amdocs
+#
+# 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: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ #Example internal target port if required
+ #targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName | default "http" }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName | default "http" }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/values.yaml b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/values.yaml
new file mode 100644
index 0000000000..2b9d290502
--- /dev/null
+++ b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/values.yaml
@@ -0,0 +1,118 @@
+# Copyright © 2018 Amdocs
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repository: nexus3.onap.org:10001
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/pomba-network-discovery-context-builder:latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+config:
+ # Network Discovery Context Builder REST Service
+ networkDiscoveryCtxBuilderHttpProtocol: http
+ networkDiscoveryCtxBuilderPort: 8080
+ networkDiscoveryCtxBuilderUserId: admin
+ networkDiscoveryCtxBuilderPassword: OBF:1u2a1toa1w8v1tok1u30
+ networkDiscoveryCtxBuilderResourceList: vnfcs,vservers,l3-networks
+
+ # Service Decomposition REST Client Configuration
+ serviceDecompositionHttpProtocol: http
+ serviceDecompositionServiceName: pomba-servicedecomposition
+ serviceDecompositionPort: 8080
+ serviceDecompositionInstancePath: /service-decomposition/service/context
+ #Basic Authorization Client credentials for Service Decomposition REST service
+ serviceDecompositionUserId: admin
+ serviceDecompositionPassword: OBF:1u2a1toa1w8v1tok1u30
+
+ # Network Discovery Micro Service REST Client Configuration
+ networkDiscoveryServiceName: pomba-networkdiscovery
+ networkDiscoveryPort: 8080
+ networkDiscoveryHttpProtocol: http
+ networkDiscoveryPath: /network-discovery/v1/network/resource
+ # Wait for Network Discovery MicroService response in milliseconds
+ networkDiscoveryTimeOutInMilliseconds: 60000
+ # Basic Authorization credentials for Network Discovery Micro Service Rest Service
+ networkDiscoveryUserId: admin
+ networkDiscoveryPassword: OBF:1u2a1toa1w8v1tok1u30
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+#Example service definition with external, internal and node ports.
+service:
+ # The default service name (exposed in the service.yaml) will be the same
+ # name as the chart. If the service name needs to be overriden (such as
+ # when a subchart is shared), uncomment the value below.
+ #name: <service-name-override>
+
+ #Services may use any combination of ports depending on the 'type' of
+ #service being defined.
+ type: ClusterIP
+ externalPort: 9530
+ internalPort: 8080
+# nodePort: <replace with unused node port suffix eg. 23>
+ # optional port name override - default can be defined in service.yaml
+ #portName: http
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi