diff options
Diffstat (limited to 'kubernetes/sdnc')
-rwxr-xr-x | kubernetes/sdnc/resources/config/conf/aaiclient.properties | 249 | ||||
-rwxr-xr-x | kubernetes/sdnc/resources/config/conf/admportal.json | 68 | ||||
-rw-r--r-- | kubernetes/sdnc/resources/config/log/filebeat/log4j/filebeat.yml | 49 | ||||
-rw-r--r-- | kubernetes/sdnc/resources/config/log/org.ops4j.pax.logging.cfg | 57 | ||||
-rw-r--r-- | kubernetes/sdnc/templates/dmaap-deployment.yaml | 60 | ||||
-rw-r--r-- | kubernetes/sdnc/templates/sdnc-conf-configmap.yaml | 9 | ||||
-rw-r--r-- | kubernetes/sdnc/templates/sdnc-log-configmap.yaml | 17 | ||||
-rw-r--r-- | kubernetes/sdnc/templates/sdnc-statefulset.yaml | 38 | ||||
-rw-r--r-- | kubernetes/sdnc/templates/ueb-deployment.yaml | 60 | ||||
-rw-r--r-- | kubernetes/sdnc/templates/web-deployment.yaml | 15 | ||||
-rw-r--r-- | kubernetes/sdnc/values.yaml | 7 |
11 files changed, 599 insertions, 30 deletions
diff --git a/kubernetes/sdnc/resources/config/conf/aaiclient.properties b/kubernetes/sdnc/resources/config/conf/aaiclient.properties new file mode 100755 index 0000000000..4f66294c42 --- /dev/null +++ b/kubernetes/sdnc/resources/config/conf/aaiclient.properties @@ -0,0 +1,249 @@ +### +# ============LICENSE_START======================================================= +# openECOMP : SDN-C +# ================================================================================ +# Copyright (C) 2017 ONAP Intellectual Property. All rights +# reserved. +# ================================================================================ +# 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. +# ============LICENSE_END========================================================= +### + +# +# Configuration file for A&AI Client +# + +# +# Certificate keystore and truststore +# +org.onap.ccsdk.sli.adaptors.aai.ssl.trust=/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks +org.onap.ccsdk.sli.adaptors.aai.ssl.trust.psswd=adminadmin +org.onap.ccsdk.sli.adaptors.aai.host.certificate.ignore=true + +org.onap.ccsdk.sli.adaptors.aai.client.name=AAI +org.onap.ccsdk.sli.adaptors.aai.client.psswd=AAI + +org.onap.ccsdk.sli.adaptors.aai.application=openECOMP +#connection.timeout=1000 +#read.timeout=2000 + +# +# Configuration file for A&AI Client +# +org.onap.ccsdk.sli.adaptors.aai.uri=https://aai-service.onap-aai:8443 + + +# query +org.onap.ccsdk.sli.adaptors.aai.path.query=/aai/v11/search/sdn-zone-query +org.onap.ccsdk.sli.adaptors.aai.query.nodes=/aai/v11/search/nodes-query?search-node-type={node-type}&filter={entity-identifier}:EQUALS:{entity-name} +org.onap.ccsdk.sli.adaptors.aai.query.generic=/aai/v11/search/generic-query?key={identifier}:{value}&start-node-type={start-node-type}&include=complex&depth=3 + +# named query +org.onap.ccsdk.sli.adaptors.aai.query.named=/aai/search/named-query + + +#update +org.onap.ccsdk.sli.adaptors.aai.update=/aai/v11/actions/update + +# vce +org.onap.ccsdk.sli.adaptors.aai.path.vce =/aai/v11/network/vces/vce/ +org.onap.ccsdk.sli.adaptors.aai.path.vces=/aai/v11/network/vces/ + +# vpe +org.onap.ccsdk.sli.adaptors.aai.path.vpe =/aai/v11/network/vpes/vpe/ +org.onap.ccsdk.sli.adaptors.aai.path.vpes=/aai/v11/network/vpes/ + +# customer +org.onap.ccsdk.sli.adaptors.aai.path.customer=/aai/v11/business/customers/customer/{customer-id} + +# service subscription +org.onap.ccsdk.sli.adaptors.aai.path.service.subscription=/aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type} + +# service instance +org.onap.ccsdk.sli.adaptors.aai.path.svcinst=/aai/v11/business/customers/customer/{customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances +org.onap.ccsdk.sli.adaptors.aai.path.svcinst.query=/aai/v11/search/generic-query?key=service-instance.service-instance-id:{svc-instance-id}&start-node-type=service-instance&include=service-instance +org.onap.ccsdk.sli.adaptors.aai.path.service.instance=/aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id} + +# complex +org.onap.ccsdk.sli.adaptors.aai.path.complexes=/aai/v11/cloud-infrastructure/complexes +org.onap.ccsdk.sli.adaptors.aai.path.complex=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id} + +# tenant +org.onap.ccsdk.sli.adaptors.aai.path.tenant=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id} +org.onap.ccsdk.sli.adaptors.aai.path.tenant.query=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant?tenant-name={tenant-name} + +# vservers +org.onap.ccsdk.sli.adaptors.aai.path.vservers=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/ +org.onap.ccsdk.sli.adaptors.aai.path.vserver=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id} + +# vpls-pe +org.onap.ccsdk.sli.adaptors.aai.path.vpls.pes=/aai/v11/network/vpls-pes/ +org.onap.ccsdk.sli.adaptors.aai.path.vpls.pe =/aai/v11/network/vpls-pes/vpls-pe/ + +# ctag-pool +org.onap.ccsdk.sli.adaptors.aai.path.ctag.pools=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools +org.onap.ccsdk.sli.adaptors.aai.path.ctag.pool=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools/ctag-pool/{target-pe}/{availability-zone-name} + +# +#-------------- 1510 ---------------------- +# + +# pservers +org.onap.ccsdk.sli.adaptors.aai.path.pservers=/aai/v11/cloud-infrastructure/pservers +org.onap.ccsdk.sli.adaptors.aai.path.pserver=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname} + +# generic-vnf +org.onap.ccsdk.sli.adaptors.aai.path.generic.vnfs=/aai/v11/network/generic-vnfs +org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id} + +# dvs-switch +org.onap.ccsdk.sli.adaptors.aai.path.dvsswitches=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches +org.onap.ccsdk.sli.adaptors.aai.path.dvsswitch=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches/dvs-switch/{switch-name} + +# L3 Networks +org.onap.ccsdk.sli.adaptors.aai.path.l3networks=/aai/v11/network/l3-networks +org.onap.ccsdk.sli.adaptors.aai.path.l3network=/aai/v11/network/l3-networks/l3-network/{network-id} +org.onap.ccsdk.sli.adaptors.aai.path.l3network.query.name=/aai/v11/network/l3-networks/l3-network?network-name={network-name} + +# P-Interfaces +org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterfaces=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces +org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name} + +# Physical Link +org.onap.ccsdk.sli.adaptors.aai.path.physical.links=/aai/v11/network/physical-links +org.onap.ccsdk.sli.adaptors.aai.path.physical.link=/aai/v11/network/physical-links/physical-link/{link-name} + +# VPN Bindings +org.onap.ccsdk.sli.adaptors.aai.path.vpn.bindings=/aai/v11/network/vpn-bindings/ +org.onap.ccsdk.sli.adaptors.aai.path.vpn.binding=/aai/v11/network/vpn-bindings/vpn-binding/{vpn-id} + +# VNF IMAGES +org.onap.ccsdk.sli.adaptors.aai.path.vnf.images=/aai/v11/service-design-and-creation/vnf-images +org.onap.ccsdk.sli.adaptors.aai.path.vnf.image=/aai/v11/service-design-and-creation/vnf-images/vnf-image/{att-uuid} +org.onap.ccsdk.sli.adaptors.aai.path.vnf.image.query=/aai/v11/service-design-and-creation/vnf-images/vnf-image?application={application_model}&application-vendor={application_vendor} + +# UBB Notify +org.onap.ccsdk.sli.adaptors.aai.path.notify=/aai/v11/actions/notify +org.onap.ccsdk.sli.adaptors.aai.notify.selflink.fqdn=https://aai-service.onap-aai:8443/restconf/config/L3SDN-API:services/layer3-service-list/{service-instance-id} +org.onap.ccsdk.sli.adaptors.aai.notify.selflink.avpn=https://aai-service.onap-aai:8543/restconf/config/L3AVPN-EVC-API:services/service-list/{service-instance-id}/service-data/avpn-logicalchannel-information + +# Service +org.onap.ccsdk.sli.adaptors.aai.path.service=/aai/v11/service-design-and-creation/services/service/{service-id} +org.onap.ccsdk.sli.adaptors.aai.path.services=/aai/v11/service-design-and-creation/services + + +# +#-------------- 1604 ---------------------- +# + +# VNFC +org.onap.ccsdk.sli.adaptors.aai.path.vnfc=/aai/v11/network/vnfcs/vnfc/{vnfc-name} + +# class-of-service +org.onap.ccsdk.sli.adaptors.aai.path.class.of.service=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}/classes-of-service/class-of-service/{cos-id} + +# site-pair +org.onap.ccsdk.sli.adaptors.aai.path.site.pair=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id} + +# routing-instance +org.onap.ccsdk.sli.adaptors.aai.path.routing.instance=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id} + +# site-pair-set +org.onap.ccsdk.sli.adaptors.aai.path.site.pair.set=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id} + +# license key resource +org.onap.ccsdk.sli.adaptors.aai.path.license.acquire=/aai/v11/actions/assignment/license-management/assignment-group-uuid/{assignment-group-uuid} +org.onap.ccsdk.sli.adaptors.aai.path.license=/aai/v11/license-management/license-key-resources/license-key-resource/{att-uuid} + +# logical-link +org.onap.ccsdk.sli.adaptors.aai.path.logical.link =/aai/v11/network/logical-links/logical-link/{link-name} + +# virtual-data-center +org.onap.ccsdk.sli.adaptors.aai.path.virtual.data.center=/aai/v11/cloud-infrastructure/virtual-data-centers/virtual-data-center/{vdc-id} + +# wan-connector +org.onap.ccsdk.sli.adaptors.aai.path.wan.connector=/aai/v11/business/connectors/connector/{resource-instance-id} + +# l-interface +org.onap.ccsdk.sli.adaptors.aai.path.lag.interface.l.interface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name} +org.onap.ccsdk.sli.adaptors.aai.path.p.interface.l.interface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name} + +# l-interface pnf +org.onap.ccsdk.sli.adaptors.aai.path.lag.interface.l.interface.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name} +org.onap.ccsdk.sli.adaptors.aai.path.p.interface.l.interface.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name} + +# subinterface +org.onap.ccsdk.sli.adaptors.aai.path.pnf.lag.interface.subinterface=/aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name} +org.onap.ccsdk.sli.adaptors.aai.path.pnf.p.interface.l.interface=/aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name} + +# vlans +org.onap.ccsdk.sli.adaptors.aai.path.vlan=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface} +org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf.vlan=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface} + +# l3-interface-ipv4-address-list +org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address} +org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address} + +# l3-interface-ipv6-address-list +org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address} +org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address} + +# ipsec-configuration +org.onap.ccsdk.sli.adaptors.aai.path.ipsec.configuration=/aai/v11/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id} + +# vig server +org.onap.ccsdk.sli.adaptors.aai.path.vig.server=/aai/v11/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}/vig-servers/vig-server/{vig-address-type} + +# l3-network +org.onap.ccsdk.sli.adaptors.aai.path.l3.network=/aai/v11/network/l3-networks/l3-network/{network-id} + +# subnet +org.onap.ccsdk.sli.adaptors.aai.path.subnet=/aai/v11/network/l3-networks/l3-network/{network-id}/subnets/subnet/{subnet-id} + +# multicast-configuration +org.onap.ccsdk.sli.adaptors.aai.path.multicast.configuration=/aai/v11/network/multicast-configurations/multicast-configuration/{multicast-configuration-id} + +# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.ipv4.address.list +org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address} + +# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.vlan.ipv4.address.list +org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.vlan.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address} + +# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.ipv6.address.list +org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address} + +# volume.group +org.onap.ccsdk.sli.adaptors.aai.path.volume.group=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/volume-groups/volume-group/{volume-group-id} + +#cloud region +org.onap.ccsdk.sli.adaptors.aai.path.cloud.region=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id} + +# vf-module +org.onap.ccsdk.sli.adaptors.aai.path.vf.module=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/vf-modules/vf-module/{vf-module-id} + +# l-interface through generic-vnf +org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf.linterface=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name} + +# network-policy +org.onap.ccsdk.sli.adaptors.aai.path.network.policy=/aai/v11/network/network-policies/network-policy/{network-policy-id} + +# pnf +org.onap.ccsdk.sli.adaptors.aai.path.pnf=/aai/v11/network/pnfs/pnf/{pnf-name} + +# +# Formatting +# +org.onap.ccsdk.sli.adaptors.aai.param.format=filter=%s:%s +org.onap.ccsdk.sli.adaptors.aai.param.vnf_type=vnf-type +org.onap.ccsdk.sli.adaptors.aai.param.physical.location.id=physical-location-id +org.onap.ccsdk.sli.adaptors.aai.param.service.type=service-type diff --git a/kubernetes/sdnc/resources/config/conf/admportal.json b/kubernetes/sdnc/resources/config/conf/admportal.json new file mode 100755 index 0000000000..f6f59ae797 --- /dev/null +++ b/kubernetes/sdnc/resources/config/conf/admportal.json @@ -0,0 +1,68 @@ +{ + "MainMenu": "gamma", + "dbConnLimit": "100", + "home": "/opt/admportal", + "sslEnabled": "false", + "nonSslPort": "8843", + "ConexusNetworkPort": "8443", + "AppNetworkPort": "8543", + "clusterPort": "8443", + "serviceHomingServiceType": "SDN-ETHERNET-INTERNET", + "passwordKey": "QtfJMKggVk", + "preloadImportDirectory": "C:/data/csv", + "clusterPrefixURL": "/jolokia/read/org.opendaylight.controller:Category=Shards,name=member-", + "clusterMidURL": "-shard-", + "clusterSuffixURL": "-config,type=DistributedConfigDatastore", + "shards": [ + "default", + "inventory", + "topology" + ], + "dbFabric": "false", + "ip-addresses": { + "lo": "127.0.0.1", + "eth0": "127.0.0.1", + "docker0": "172.17.0.1", + "virbr0": "192.168.122.1" + }, + "svclogicPropertiesDb01": "/opt/onap/sdnc/data/properties/svclogic.properties.sdnctldb01", + "databases": [ + "dbhost|sdnctldb01" + ], + "dbFabricServer": "localhost", + "dbFabricPort": "32275", + "dbFabricGroupId": "hagroup1", + "dbFabricUser": "admin", + "dbFabricPassword": "admin", + "dbFabricDB": "mysql", + "dbUser": "sdnctl", + "dbPassword": "gamma", + "dbName": "sdnctl", + "odlProtocol": "http", + "odlHost": "sdnhost.onap-sdnc", + "odlConexusHost": "sdnhost.onap-sdnc", + "odlPort": "8181", + "odlConexusPort": "8181", + "odlUser": "admin", + "odlPasswd": "admin", + "ConexusNetwork_sslCert": "", + "ConexusNetwork_sslKey": "", + "AppNetwork_sslCert": "", + "AppNetwork_sslKey": "", + "hostnameList": [ + { + "hname": "localhost" + } + ], + "shard_list": [ + { + "shard_name": "default" + }, + { + "shard_name": "inventory" + }, + { + "shard_name": "topology" + } + ] +} diff --git a/kubernetes/sdnc/resources/config/log/filebeat/log4j/filebeat.yml b/kubernetes/sdnc/resources/config/log/filebeat/log4j/filebeat.yml new file mode 100644 index 0000000000..79c9a08a79 --- /dev/null +++ b/kubernetes/sdnc/resources/config/log/filebeat/log4j/filebeat.yml @@ -0,0 +1,49 @@ +filebeat.prospectors: +#it is mandatory, in our case it's log +- input_type: log + #This is the canolical path as mentioned in logback.xml, *.* means it will monitor all files in the directory. + paths: + - /var/log/onap/*/*/*/*.log + - /var/log/onap/*/*/*.log + - /var/log/onap/*/*.log + + # The below commented properties are for time-based rolling policy. But as the log4j 1.2x does not support time-based rolling these properties are not set + #Files older than this should be ignored.In our case it will be 48 hours i.e. 2 days. It is a helping flag for clean_inactive + #ignore_older: 48h + # Remove the registry entry for a file that is more than the specified time. In our case it will be 96 hours, i.e. 4 days. It will help to keep registry records with in limit + #clean_inactive: 96h + + #Multiline properties for log4j xml log events + multiline.pattern: '</log4j:event>' + multiline.negate: true + multiline.match: before + #multiline.max_lines: 500 + #multiline.timeout: 5s + +# Name of the registry file. If a relative path is used, it is considered relative to the +# data path. Else full qualified file name. +#filebeat.registry_file: ${path.data}/registry + + +output.logstash: + #List of logstash server ip addresses with port number. + #But, in our case, this will be the loadbalancer IP address. + #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately. + hosts: ["logstash.onap-log:5044"] + #If enable will do load balancing among availabe Logstash, automatically. + loadbalance: true + + #The list of root certificates for server verifications. + #If certificate_authorities is empty or not set, the trusted + #certificate authorities of the host system are used. + #ssl.certificate_authorities: $ssl.certificate_authorities + + #The path to the certificate for SSL client authentication. If the certificate is not specified, + #client authentication is not available. + #ssl.certificate: $ssl.certificate + + #The client certificate key used for client authentication. + #ssl.key: $ssl.key + + #The passphrase used to decrypt an encrypted key stored in the configured key file + #ssl.key_passphrase: $ssl.key_passphrase diff --git a/kubernetes/sdnc/resources/config/log/org.ops4j.pax.logging.cfg b/kubernetes/sdnc/resources/config/log/org.ops4j.pax.logging.cfg new file mode 100644 index 0000000000..50818a3d18 --- /dev/null +++ b/kubernetes/sdnc/resources/config/log/org.ops4j.pax.logging.cfg @@ -0,0 +1,57 @@ +################################################################################
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+#
+################################################################################
+
+# Root logger
+log4j.rootLogger=INFO, async, osgi:*
+log4j.throwableRenderer=org.apache.log4j.OsgiThrowableRenderer
+
+# Log Directory
+logDir=/var/log/onap
+componentName=sdnc
+logDirectory=${logDir}/${componentName}
+maxFileSize=100MB
+maxBackupIndex=20
+
+# CONSOLE appender not used by default
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd'T'HH:mm:ss.SSS}\t%-16.16t\t%-5.5p\t%c{36}\t%X{bundle.id} - %X{bundle.name} - %X{bundle.version}\t%m%n
+
+# Async appender forwarding to file appender
+log4j.appender.async=org.apache.log4j.AsyncAppender
+log4j.appender.async.appenders=out
+
+# File appender
+log4j.appender.out=org.apache.log4j.RollingFileAppender
+log4j.appender.out.layout=org.apache.log4j.xml.XMLLayout
+log4j.appender.out.layout.Properties=true
+log4j.appender.out.file=${logDirectory}/karaf.log
+log4j.appender.out.append=true
+log4j.appender.out.maxFileSize=${maxFileSize}
+log4j.appender.out.maxBackupIndex=${maxBackupIndex}
+
+# Sift appender
+log4j.appender.sift=org.apache.log4j.sift.MDCSiftingAppender
+log4j.appender.sift.key=bundle.name
+log4j.appender.sift.default=karaf
+log4j.appender.sift.appender=org.apache.log4j.RollingFileAppender
+log4j.appender.sift.appender.layout=org.apache.log4j.xml.XMLLayout
+log4j.appender.sift.appender.layout.Properties=true
+log4j.appender.sift.appender.file=${logDirectory}/$\\{bundle.name\\}.log
+log4j.appender.sift.appender.append=true
diff --git a/kubernetes/sdnc/templates/dmaap-deployment.yaml b/kubernetes/sdnc/templates/dmaap-deployment.yaml new file mode 100644 index 0000000000..b0f0a7b7b5 --- /dev/null +++ b/kubernetes/sdnc/templates/dmaap-deployment.yaml @@ -0,0 +1,60 @@ +#{{ if not .Values.disableSdncDmaap }} +apiVersion: extensions/v1beta1 +kind: Deployment +metadata: + name: dmaap-listener + namespace: "{{ .Values.nsPrefix }}-sdnc" +spec: + selector: + matchLabels: + app: dmaap-listener + template: + metadata: + labels: + app: dmaap-listener + name: dmaap-listener + spec: + initContainers: + - command: + - /root/ready.py + args: + - --container-name + - sdnc-db-container + - --container-name + - sdnc-controller-container + env: + - name: NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + image: {{ .Values.image.readiness }} + imagePullPolicy: {{ .Values.pullPolicy }} + name: sdnc-dmaap-readiness + containers: + - command: + - /opt/onap/sdnc/dmaap-listener/bin/start-dmaap-listener.sh + env: + - name: PROPERTY_DIR + value: /opt/onap/sdnc/data/properties + - name: SDNC_CONFIG_DIR + value: /opt/onap/sdnc/data/properties + image: {{ .Values.image.dmaaplistener }} + imagePullPolicy: {{ .Values.pullPolicy }} + name: dmaapp-listener-container + volumeMounts: + - mountPath: /etc/localtime + name: localtime + readOnly: true + - mountPath: /opt/onap/sdnc/data/properties/dhcpalert.properties + name: dmaap-dhcapalert-config + volumes: + - name: localtime + hostPath: + path: /etc/localtime + - name: dmaap-dhcapalert-config + hostPath: + path: /dockerdata-nfs/{{ .Values.nsPrefix }}/sdnc/dmaap/dhcpalert.properties + imagePullSecrets: + - name: "{{ .Values.nsPrefix }}-docker-registry-key" +#{{ end }}
\ No newline at end of file diff --git a/kubernetes/sdnc/templates/sdnc-conf-configmap.yaml b/kubernetes/sdnc/templates/sdnc-conf-configmap.yaml new file mode 100644 index 0000000000..e7cde3b69f --- /dev/null +++ b/kubernetes/sdnc/templates/sdnc-conf-configmap.yaml @@ -0,0 +1,9 @@ +#{{ if not .Values.disableSdncSdnc }} +apiVersion: v1 +kind: ConfigMap +metadata: + name: sdnc-conf-configmap + namespace: {{ .Values.nsPrefix }}-sdnc +data: +{{ tpl (.Files.Glob "resources/config/conf/*").AsConfig . | indent 2 }} +#{{ end }} diff --git a/kubernetes/sdnc/templates/sdnc-log-configmap.yaml b/kubernetes/sdnc/templates/sdnc-log-configmap.yaml new file mode 100644 index 0000000000..d13daacb89 --- /dev/null +++ b/kubernetes/sdnc/templates/sdnc-log-configmap.yaml @@ -0,0 +1,17 @@ +#{{ if not .Values.disableSdncSdnc }} +apiVersion: v1 +kind: ConfigMap +metadata: + name: sdnc-log-configmap + namespace: {{ .Values.nsPrefix }}-sdnc +data: +{{ tpl (.Files.Glob "resources/config/log/filebeat/log4j/*").AsConfig . | indent 2 }} +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: sdnc-logging-cfg-configmap + namespace: {{ .Values.nsPrefix }}-sdnc +data: +{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }} +#{{ end }} diff --git a/kubernetes/sdnc/templates/sdnc-statefulset.yaml b/kubernetes/sdnc/templates/sdnc-statefulset.yaml index 3ba37af197..02950ba4c6 100644 --- a/kubernetes/sdnc/templates/sdnc-statefulset.yaml +++ b/kubernetes/sdnc/templates/sdnc-statefulset.yaml @@ -56,14 +56,17 @@ spec: - mountPath: /etc/localtime name: localtime readOnly: true - - mountPath: /opt/onap/sdnc/data/properties/aaiclient.properties - name: sdnc-aaiclient-properties - mountPath: /opt/onap/sdnc/data/properties/admportal.json - name: sdnc-admportal-json + name: sdnc-conf + subPath: admportal.json + - mountPath: /opt/onap/sdnc/data/properties/aaiclient.properties + name: sdnc-conf + subPath: aaiclient.properties - mountPath: /var/log/onap name: sdnc-logs - mountPath: /opt/opendaylight/current/etc/org.ops4j.pax.logging.cfg - name: sdnc-log-config + name: sdnc-logging-cfg-config + subPath: org.ops4j.pax.logging.cfg ports: - containerPort: 8181 - containerPort: 8101 @@ -80,6 +83,7 @@ spec: volumeMounts: - mountPath: /usr/share/filebeat/filebeat.yml name: filebeat-conf + subPath: filebeat.yml - mountPath: /var/log/onap name: sdnc-logs - mountPath: /usr/share/filebeat/data @@ -89,21 +93,25 @@ spec: hostPath: path: /etc/localtime - name: filebeat-conf - hostPath: - path: /dockerdata-nfs/{{ .Values.nsPrefix }}/log/filebeat/log4j/filebeat.yml - - name: sdnc-log-config - hostPath: - path: /dockerdata-nfs/{{ .Values.nsPrefix }}/log/sdnc/org.ops4j.pax.logging.cfg + configMap: + name: sdnc-log-configmap + - name: sdnc-logging-cfg-config + configMap: + name: sdnc-logging-cfg-configmap - name: sdnc-logs emptyDir: {} - name: sdnc-data-filebeat emptyDir: {} - - name: sdnc-aaiclient-properties - hostPath: - path: /dockerdata-nfs/{{ .Values.nsPrefix }}/sdnc/conf/aaiclient.properties - - name: sdnc-admportal-json - hostPath: - path: /dockerdata-nfs/{{ .Values.nsPrefix }}/sdnc/conf/admportal.json + - name: sdnc-conf + configMap: + name: sdnc-conf-configmap + items: + - key: admportal.json + path: admportal.json + mode: 0755 + - key: aaiclient.properties + path: aaiclient.properties + mode: 0755 imagePullSecrets: - name: "{{ .Values.nsPrefix }}-docker-registry-key" #{{ end }} diff --git a/kubernetes/sdnc/templates/ueb-deployment.yaml b/kubernetes/sdnc/templates/ueb-deployment.yaml new file mode 100644 index 0000000000..324e0e1724 --- /dev/null +++ b/kubernetes/sdnc/templates/ueb-deployment.yaml @@ -0,0 +1,60 @@ +#{{ if not .Values.disableSdncUeb }} +apiVersion: extensions/v1beta1 +kind: Deployment +metadata: + name: ueb-listener + namespace: "{{ .Values.nsPrefix }}-sdnc" +spec: + selector: + matchLabels: + app: ueb-listener + template: + metadata: + labels: + app: ueb-listener + name: ueb-listener + spec: + initContainers: + - command: + - /root/ready.py + args: + - --container-name + - sdnc-db-container + - --container-name + - sdnc-controller-container + env: + - name: NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + image: {{ .Values.image.readiness }} + imagePullPolicy: {{ .Values.pullPolicy }} + name: sdnc-ueb-readiness + containers: + - command: + - /opt/onap/sdnc/ueb-listener/bin/start-ueb-listener.sh + env: + - name: PROPERTY_DIR + value: /opt/onap/sdnc/data/properties + - name: SDNC_CONFIG_DIR + value: /opt/onap/sdnc/data/properties + image: {{ .Values.image.ueblistener }} + imagePullPolicy: {{ .Values.pullPolicy }} + name: ueb-listener-container + volumeMounts: + - mountPath: /etc/localtime + name: localtime + readOnly: true + - mountPath: /opt/onap/sdnc/data/properties/ueb-listener.properties + name: ueb-config + volumes: + - name: localtime + hostPath: + path: /etc/localtime + - name: ueb-config + hostPath: + path: /dockerdata-nfs/{{ .Values.nsPrefix }}/sdnc/ueb/ueb-listener.properties + imagePullSecrets: + - name: "{{ .Values.nsPrefix }}-docker-registry-key" +#{{ end }}
\ No newline at end of file diff --git a/kubernetes/sdnc/templates/web-deployment.yaml b/kubernetes/sdnc/templates/web-deployment.yaml index fcd82a40c0..7e8b59c1eb 100644 --- a/kubernetes/sdnc/templates/web-deployment.yaml +++ b/kubernetes/sdnc/templates/web-deployment.yaml @@ -50,10 +50,8 @@ spec: - name: localtime mountPath: /etc/localtime readOnly: true - - mountPath: /opt/onap/sdnc/data/properties/aaiclient.properties - name: sdnc-aaiclient-properties - - mountPath: /opt/onap/sdnc/data/properties/admportal.json - name: sdnc-admportal-json + - mountPath: /opt/onap/sdnc/data/properties/ + name: sdnc-conf readinessProbe: tcpSocket: port: 8843 @@ -64,12 +62,9 @@ spec: - name: localtime hostPath: path: /etc/localtime - - name: sdnc-aaiclient-properties - hostPath: - path: /dockerdata-nfs/{{ .Values.nsPrefix }}/sdnc/conf/aaiclient.properties - - name: sdnc-admportal-json - hostPath: - path: /dockerdata-nfs/{{ .Values.nsPrefix }}/sdnc/conf/admportal.json + - name: sdnc-conf + configMap: + name: sdnc-conf-configmap imagePullSecrets: - name: "{{ .Values.nsPrefix }}-docker-registry-key" #{{ end }} diff --git a/kubernetes/sdnc/values.yaml b/kubernetes/sdnc/values.yaml index 5272b653b9..395970957a 100644 --- a/kubernetes/sdnc/values.yaml +++ b/kubernetes/sdnc/values.yaml @@ -8,14 +8,11 @@ image: dgbuilderSdnc: nexus3.onap.org:10001/onap/ccsdk-dgbuilder-image:v0.1.0 sdnc: nexus3.onap.org:10001/onap/sdnc-image:v1.2.1 admportalSdnc: nexus3.onap.org:10001/onap/admportal-sdnc-image:v1.2.1 + ueblistener: nexus3.onap.org:10001/onap/sdnc-ueb-listener-image:v1.2.1 + dmaaplistener: nexus3.onap.org:10001/onap/sdnc-dmaap-listener-image:v1.2.1 filebeat: docker.elastic.co/beats/filebeat:5.5.0 enableODLCluster: false numberOfODLReplicas: 1 numberOfDbReplicas: 1 disableSdncSdncDgbuilder: false disableSdncSdncPortal: false - -# FIXME -# Missing the following deps -# nexus3.onap.org:10001/onap/sdnc-dmaap-listener-image:v1.2.1 -# nexus3.onap.org:10001/onap/sdnc-ueb-listener-image:v1.2.1 |