summaryrefslogtreecommitdiffstats
path: root/kubernetes
diff options
context:
space:
mode:
authorMike Elliott <mike.elliott@amdocs.com>2017-09-08 12:46:15 -0400
committerMike Elliott <mike.elliott@amdocs.com>2017-09-12 09:46:53 -0400
commit586f03b6e2249f2da8b1e35b5290b8cc334c204e (patch)
treef33e9c35f6d1a63d8f223364e287b2b7e2ec23b2 /kubernetes
parent340d0bf4867a5890956c752b596372ec2d5d3005 (diff)
Add helm-configured DCAE Gen 1
This is the initial seed of the dcae gen 1 deployment specifications using onap 1.1 component containers. All containers come up, however, there are issues with some of the containers that will be flushed out during integration. Change-Id: I6b74262168ae54bb7859d81de1ade6b59d1c42b1 Issue-Id: OOM-176 Signed-off-by: Mike Elliott <mike.elliott@amdocs.com>
Diffstat (limited to 'kubernetes')
-rw-r--r--kubernetes/dcae/Chart.yaml4
-rw-r--r--kubernetes/dcae/README18
-rwxr-xr-xkubernetes/dcae/cdap/docker/00-provisioning.sh257
-rwxr-xr-xkubernetes/dcae/cdap/docker/01-entrypoint.sh8
-rw-r--r--kubernetes/dcae/cdap/docker/Dockerfile57
-rw-r--r--kubernetes/dcae/cdap/docker/docker-compose.yaml44
-rw-r--r--kubernetes/dcae/cdap/docker/fs/Dockerfile4
-rwxr-xr-xkubernetes/dcae/pgaas/Dockerfile45
-rwxr-xr-xkubernetes/dcae/pgaas/setup.sh437
-rw-r--r--kubernetes/dcae/templates/all-services.yaml117
-rw-r--r--kubernetes/dcae/templates/cdap0-dep.yaml84
-rw-r--r--kubernetes/dcae/templates/cdap1-dep.yaml84
-rw-r--r--kubernetes/dcae/templates/cdap2-dep.yaml84
-rw-r--r--kubernetes/dcae/templates/dcae-collector-common-event.yaml38
-rw-r--r--kubernetes/dcae/templates/dcae-collector-dmaapbc.yaml37
-rw-r--r--kubernetes/dcae/templates/dcae-controller.yaml61
-rw-r--r--kubernetes/dcae/templates/dcae-dmaap.yaml75
-rw-r--r--kubernetes/dcae/templates/dcae-kafka.yaml83
-rw-r--r--kubernetes/dcae/templates/dcae-zookeeper.yaml31
-rw-r--r--kubernetes/dcae/templates/pgaas.yaml47
-rw-r--r--kubernetes/dcae/values.yaml14
-rwxr-xr-xkubernetes/oneclick/dcae.sh18
-rw-r--r--kubernetes/oneclick/setenv.bash2
23 files changed, 1647 insertions, 2 deletions
diff --git a/kubernetes/dcae/Chart.yaml b/kubernetes/dcae/Chart.yaml
new file mode 100644
index 0000000000..168a2148f0
--- /dev/null
+++ b/kubernetes/dcae/Chart.yaml
@@ -0,0 +1,4 @@
+apiVersion: v1
+description: DCAE Gen 1
+name: DCAE
+version: 1.1.0
diff --git a/kubernetes/dcae/README b/kubernetes/dcae/README
new file mode 100644
index 0000000000..c733355682
--- /dev/null
+++ b/kubernetes/dcae/README
@@ -0,0 +1,18 @@
+DCAE Port mapping
+-----------------------------------------------------------------------------------------
+Container name | Connector name | Node port | Target port |
+-----------------------------------------------------------------------------------------
+dcae-collector-common-event | dcae-ce1 | 30236 | 8080 |
+-----------------------------------------------------------------------------------------
+ | dcae-ce2 | 30237 | 8443 |
+-----------------------------------------------------------------------------------------
+ | dcae-ce3 | 30238 | 9999 |
+-----------------------------------------------------------------------------------------
+dcae-collector-dmaapbc | dcae-bc1 | 30239 | 8080 |
+-----------------------------------------------------------------------------------------
+ | dcae-bc2 | 30240 | 8443 |
+-----------------------------------------------------------------------------------------
+dcae-ves-collector | dcae-ves1 | 30241 | 8080 |
+-----------------------------------------------------------------------------------------
+ | dcae-ves2 | 30242 | 9999 |
+-----------------------------------------------------------------------------------------
diff --git a/kubernetes/dcae/cdap/docker/00-provisioning.sh b/kubernetes/dcae/cdap/docker/00-provisioning.sh
new file mode 100755
index 0000000000..98b67c4476
--- /dev/null
+++ b/kubernetes/dcae/cdap/docker/00-provisioning.sh
@@ -0,0 +1,257 @@
+#!/bin/bash
+set -x
+
+export DEBIAN_FRONTEND=noninteractive
+
+##############################################################
+################### File provisioning ########################
+##############################################################
+
+cd /tmp
+
+
+## Adding configuration file: mount_config
+cat > /tmp/dcae-mount.conf << EOF_CONFIG
+osType: ubuntu
+volumes:
+ ephemeral:
+ uuid: ephemeral
+ size: 80
+ filesystems:
+ /opt/tools:
+ size: 80
+ type: ext4
+ mount_opts: ''
+ data:
+ uuid: cinder
+ size: 75
+ filesystems:
+ /opt/data:
+ size: 75
+ type: ext4
+ mount_opts: ''
+EOF_CONFIG
+
+
+## Adding configuration file: ecomp-nexus
+cat > /tmp/ecomp-nexus.crt << EOF_CONFIG
+-----BEGIN CERTIFICATE-----
+MIIFRTCCBC2gAwIBAgIQM/5eM8D0jY3yHTSyN5iO9zANBgkqhkiG9w0BAQsFADCB
+kDELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4G
+A1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxNjA0BgNV
+BAMTLUNPTU9ETyBSU0EgRG9tYWluIFZhbGlkYXRpb24gU2VjdXJlIFNlcnZlciBD
+QTAeFw0xNzAzMjgwMDAwMDBaFw0xODAzMjgyMzU5NTlaMFcxITAfBgNVBAsTGERv
+bWFpbiBDb250cm9sIFZhbGlkYXRlZDEdMBsGA1UECxMUUG9zaXRpdmVTU0wgV2ls
+ZGNhcmQxEzARBgNVBAMMCioub25hcC5vcmcwggEiMA0GCSqGSIb3DQEBAQUAA4IB
+DwAwggEKAoIBAQDIVo+kmG2sGaeIJy5pqP6mzlIwqYUXcFOG2fodsCPg9CEdlsBO
+IECuoPYmCqrJ/MHLfs+F+SjEoBfpJlqyrpLhVj8O/9xCp4Tda/YJ18n59uDJ7Rpq
+omqZlFCj/B4+H6+dkWCFy1FxYBBAIO52iscd4F6YHD1p3xUjJRd9Yf6qnktmSooI
+hbIKzPIpSTsYiN3ArWbrGeucoQUdKX+intRHFLkKay88R7yqoqguPFIEtkXwDoJj
+aV+rC103eZ1RLwtBcS/4UcDXRDfkyQANAYvKGeHiyGuRQqEUyGEmKz2i11m1oyEP
+uD1AK+zPd33wBdOe8iZMr0CxcOGhgcKOWJ7vAgMBAAGjggHRMIIBzTAfBgNVHSME
+GDAWgBSQr2o6lFoL2JDqElZz30O0Oija5zAdBgNVHQ4EFgQUMVkz3DD9qwhzY5WT
+/P1mCVpsauQwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
+FAYIKwYBBQUHAwEGCCsGAQUFBwMCME8GA1UdIARIMEYwOgYLKwYBBAGyMQECAgcw
+KzApBggrBgEFBQcCARYdaHR0cHM6Ly9zZWN1cmUuY29tb2RvLmNvbS9DUFMwCAYG
+Z4EMAQIBMFQGA1UdHwRNMEswSaBHoEWGQ2h0dHA6Ly9jcmwuY29tb2RvY2EuY29t
+L0NPTU9ET1JTQURvbWFpblZhbGlkYXRpb25TZWN1cmVTZXJ2ZXJDQS5jcmwwgYUG
+CCsGAQUFBwEBBHkwdzBPBggrBgEFBQcwAoZDaHR0cDovL2NydC5jb21vZG9jYS5j
+b20vQ09NT0RPUlNBRG9tYWluVmFsaWRhdGlvblNlY3VyZVNlcnZlckNBLmNydDAk
+BggrBgEFBQcwAYYYaHR0cDovL29jc3AuY29tb2RvY2EuY29tMB8GA1UdEQQYMBaC
+Cioub25hcC5vcmeCCG9uYXAub3JnMA0GCSqGSIb3DQEBCwUAA4IBAQAd5mu22sts
+at/bdRlIOz3dbqGwIFOo8XajlAs6ApMpyx/xetcgIKipzvGp9Wc1X8lDZl4boCH6
+KQ1//4tpksYj8RsZSZeac8vQLKggWO107sBa33yFg6Y1Dk2DdgOKZ+lNbvB1iMwK
+hSGtV3HYx1jLyQRoeYby4R7+kTI1lHAiOgT+vn5C9Z3TxqfgWuBf24CFp/95gki6
+vRysJh9Jf7A8JrrMGykC94Tpo6OiUehtQ+f65xtetvwsfNHVp3hsLzR5KwIMDARI
+IgXKyROodILsOXfR9qdA9klcXUSi6qvKF8wAopNuot4Ltyz8chiFKISjxqVrKnY2
+M7En/HyX0s1I
+-----END CERTIFICATE-----
+EOF_CONFIG
+
+
+## Adding configuration file: vm-cdap-cluster-cdap.properties
+cat > /tmp/vm-cdap-cluster-cdap.properties << EOF_CONFIG
+cluster.endpoint= foobar
+cluster.user= foobar
+cluster.password= foobar
+EOF_CONFIG
+
+
+## Adding configuration file: vm-cdap-cluster-console.properties
+cat > /tmp/vm-cdap-cluster-console.properties << EOF_CONFIG
+localhost.endpoint=http://localhost:1999
+localhost.user=console
+localhost.password=NTJhYWU1NzAwMzc3OTk1
+EOF_CONFIG
+
+
+## Adding configuration file: vm-cdap-cluster-gui.properties
+cat > /tmp/vm-cdap-cluster-gui.properties << EOF_CONFIG
+EOF_CONFIG
+
+
+## Adding configuration file: vm-cdap-cluster-log4j.properties
+cat > /tmp/vm-cdap-cluster-log4j.properties << EOF_CONFIG
+#log4j.debug=0
+log4j.rootLogger=warn, file
+log4j.logger.org.openecomp.ncomp=info, file
+log4j.additivity.org.openecomp.ncomp=false
+
+#log4j.logger.org.apache.http.headers=debug, file
+#log4j.logger.org.apache.http.wire=debug, file
+## uploaded logger
+log4j.logger.org.openecomp.ncomp.sirius.manager.uploaded=info, uploaded
+log4j.additivity.org.openecomp.ncomp.sirius.manager.uploaded=false
+## request logging
+log4j.logger.org.openecomp.ncomp.sirius.manager.ManagementServer.requests=info, requests
+log4j.additivity.org.openecomp.ncomp.sirius.manager.ManagementServer.requests=false
+## openstack polling
+log4j.logger.org.openecomp.ncomp.openstack.OpenStackUtil.polling=info, polling
+log4j.additivity.org.openecomp.ncomp.openstack.OpenStackUtil.polling=false
+log4j.appender.file=org.apache.log4j.RollingFileAppender
+log4j.appender.file.File=logs/manager.log
+log4j.appender.file.layout=org.apache.log4j.PatternLayout
+log4j.appender.file.layout.ConversionPattern=%d %5p [%t] %m %C:%L%n
+log4j.appender.file.MaxFileSize=50MB
+log4j.appender.file.MaxBackupIndex=5
+
+log4j.appender.uploaded=org.apache.log4j.RollingFileAppender
+log4j.appender.uploaded.File=logs/manager-uploaded.log
+log4j.appender.uploaded.layout=org.apache.log4j.PatternLayout
+log4j.appender.uploaded.layout.ConversionPattern=%d %5p [%t] %m %C:%L%n
+log4j.appender.uploaded.MaxFileSize=50MB
+log4j.appender.uploaded.MaxBackupIndex=5
+
+log4j.appender.requests=org.apache.log4j.RollingFileAppender
+log4j.appender.requests.File=logs/manager-requests.log
+log4j.appender.requests.layout=org.apache.log4j.PatternLayout
+log4j.appender.requests.layout.ConversionPattern=%d %5p [%t] %m %C:%L%n
+log4j.appender.requests.MaxFileSize=50MB
+log4j.appender.requests.MaxBackupIndex=5
+log4j.appender.polling=org.apache.log4j.RollingFileAppender
+log4j.appender.polling.File=logs/manager-polling.log
+log4j.appender.polling.layout=org.apache.log4j.PatternLayout
+log4j.appender.polling.layout.ConversionPattern=%d %5p [%t] %m %C:%L%n
+log4j.appender.polling.MaxFileSize=50MB
+log4j.appender.polling.MaxBackupIndex=5
+
+### ECOMP Logging
+log4j.logger.org.openecomp.audit=info, audit
+log4j.additivity.org.openecomp.audit=false
+log4j.logger.org.openecomp.metrics=info, metrics
+log4j.additivity.org.openecomp.metrics=false
+log4j.logger.org.openecomp.error=info, error
+log4j.additivity.org.openecomp.error=false
+log4j.logger.com.att.eelf.debug=info, debug
+log4j.additivity.org.openecomp.debug=false
+log4j.appender.audit=org.apache.log4j.RollingFileAppender
+log4j.appender.audit.File=logs/audit.log
+log4j.appender.audit.layout=org.apache.log4j.PatternLayout
+log4j.appender.audit.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%5p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
+log4j.appender.audit.MaxFileSize=50MB
+log4j.appender.audit.MaxBackupIndex=5
+log4j.appender.metrics=org.apache.log4j.RollingFileAppender
+log4j.appender.metrics.File=logs/metrics.log
+log4j.appender.metrics.layout=org.apache.log4j.PatternLayout
+log4j.appender.metrics.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
+log4j.appender.metrics.MaxFileSize=50MB
+log4j.appender.metrics.MaxBackupIndex=5
+log4j.appender.error=org.apache.log4j.RollingFileAppender
+log4j.appender.error.File=logs/error.log
+log4j.appender.error.layout=org.apache.log4j.PatternLayout
+log4j.appender.error.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
+log4j.appender.error.MaxFileSize=50MB
+log4j.appender.error.MaxBackupIndex=5
+log4j.appender.debug=org.apache.log4j.RollingFileAppender
+log4j.appender.debug.File=logs/debug.log
+log4j.appender.debug.layout=org.apache.log4j.PatternLayout
+log4j.appender.debug.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
+log4j.appender.debug.MaxFileSize=50MB
+log4j.appender.debug.MaxBackupIndex=5
+EOF_CONFIG
+
+
+## Adding configuration file: vm-cdap-cluster-manager.properties
+cat > /tmp/vm-cdap-cluster-manager.properties << EOF_CONFIG
+server.dir = data/resources
+metrics.dir = data/metrics
+properties.dir = data/properties
+server.port = 1999
+server.user.console = NTJhYWU1NzAwMzc3OTk1
+server.user.gui = MDlhZWVjZWEwMmFiOTJi
+server.user.client = YmE2OGE1N2U5NzRmMDg1
+EOF_CONFIG
+
+
+## Adding configuration file: vm-cdap-cluster-runtime.properties
+cat > /tmp/vm-cdap-cluster-runtime.properties << EOF_CONFIG
+factory.vm=org.openecomp.dcae.controller.service.servers.vm.DcaeVmFactory
+
+## Adding configuration file: monitoring-agent-gui.properties
+cat > /tmp/monitoring-agent-gui.properties << EOF_CONFIG
+EOF_CONFIG
+
+
+cat > /tmp/certificate.pkcs12.b64code << EOF_CERT
+EOF_CERT
+
+
+##############################################################
+################## Config Provisioning #######################
+##############################################################
+
+mkdir -p ~/.ssh
+touch ~/.ssh/authorized_keys
+echo ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDBn8Ctt5hJGkTQaffuSeINeABV4viBIM4TcP14kaLiWR1LkyNY+TaUnjxODobtZa4YW1lxFtoMCfZt2A5W9ZZPM+shZr4BOj+wU+xIrzn7ezN/CQjH7c4Wh0mWteuPnJrtdpyGQ/qBI2T+xo5G/Tl++SPUvvN2D4H8vl0miEgVPR47/P7Ba6kl7Bmrf9m0VDPdS69Qr2AhgBq5Qi/fTeGZA4sfKDHHRJxkQIXYmS8R5FISRpBD7ta2NTHapRz9dC6Cw8UttEFiWFUBjN6lwF9LUOkj9MiqiTQaElKKQzMIHr0AhlgIkwBLKAJoDrGQD9GKPwKCdW3OmnODMPxJjXc3 > ~/.ssh/authorized_keys
+
+cp /tmp/ecomp-nexus.crt /usr/local/share/ca-certificates/ ; update-ca-certificates
+
+wget https://nexus.onap.org/content/repositories/staging/org/openecomp/dcae/controller/dcae-controller-core-utils/1.1.0/dcae-controller-core-utils-1.1.0-runtime.zip -P /opt/app/dcae-controller-core-utils
+
+cd /opt/app/dcae-controller-core-utils
+unzip -o dcae-controller-core-utils*.zip
+
+chown -R dcae:dcae /opt/app/dcae-controller-core-utils
+
+/opt/app/dcae-controller-core-utils/bin/fs-init.py
+
+wget https://nexus.onap.org/content/repositories/staging/org/openecomp/dcae/controller/dcae-controller-service-cdap-cluster-manager/1.1.0/dcae-controller-service-cdap-cluster-manager-1.1.0-runtime.zip -P /opt/app/dcae-controller-service-cdap-cluster-manager
+
+cd /opt/app/dcae-controller-service-cdap-cluster-manager
+unzip -o dcae-controller-service-cdap-cluster-manager*.zip
+
+chown -R dcae:dcae /opt/app/dcae-controller-service-cdap-cluster-manager
+
+wget https://nexus.onap.org/content/repositories/staging/org/openecomp/dcae/controller/dcae-controller-service-dmaap-drsub/1.1.0/dcae-controller-service-dmaap-drsub-1.1.0.pom -P /opt/app/dcae-controller-service-dmaap-drsub
+
+chown -R dcae:dcae /opt/app/dcae-controller-service-dmaap-drsub
+
+curl -s -k -f -o /tmp/dcae-apod-cdap-small-hadoop_1.1.0.deb https://nexus.onap.org/content/sites/raw/org.openecomp.dcae.apod.cdap/deb-releases/dcae-apod-cdap-small-hadoop_1.1.0.deb
+
+curl -s -k -f -o /tmp/dcae-apod-analytics-tca_1.1.0.deb https://nexus.onap.org/content/sites/raw/org.openecomp.dcae.apod.analytics/deb-releases/dcae-apod-analytics-tca_1.1.0.deb
+
+curl -s -k -f -o /tmp/HelloWorld-3.5.1.jar http://repo1.maven.org/maven2/co/cask/cdap/HelloWorld/3.5.1/HelloWorld-3.5.1.jar
+mkdir -p /opt/app/cask-hello-world/lib
+mv /tmp/HelloWorld-3.5.1.jar /opt/app/cask-hello-world/lib
+
+find /opt -type f -exec sed -i 's/sudo//g' {} \;
+
+apt-key adv --keyserver-options --keyserver keyserver.ubuntu.com --recv 07513CAD
+wget -qO - http://repository.cask.co/ubuntu/precise/amd64/cdap/3.5/pubkey.gpg | apt-key add -
+
+wget https://nexus.onap.org/content/repositories/staging/org/openecomp/dcae/controller/dcae-controller-service-dmaap-drsub-manager/1.1.0/dcae-controller-service-dmaap-drsub-manager-1.1.0-runtime.zip -P /opt/app/dcae-controller-service-dmaap-drsub-manager
+
+cd /opt/app/dcae-controller-service-dmaap-drsub-manager
+unzip -o dcae-controller-service-dmaap-drsub-manager-1.1.0-runtime.zip
+
+chown -R dcae:dcae /opt/app/dcae-controller-service-dmaap-drsub-manager
+
+mkdir /home/dcae/.ssh
+chmod og-rwx /home/dcae/.ssh
+chown -R dcae:dcae /home/dcae/.ssh
+touch /home/dcae/.ssh/authorized_keys
+chmod og-rwx /home/dcae/.ssh/authorized_keys
+chown -R dcae:dcae /home/dcae/.ssh/authorized_keys
+echo ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDBn8Ctt5hJGkTQaffuSeINeABV4viBIM4TcP14kaLiWR1LkyNY+TaUnjxODobtZa4YW1lxFtoMCfZt2A5W9ZZPM+shZr4BOj+wU+xIrzn7ezN/CQjH7c4Wh0mWteuPnJrtdpyGQ/qBI2T+xo5G/Tl++SPUvvN2D4H8vl0miEgVPR47/P7Ba6kl7Bmrf9m0VDPdS69Qr2AhgBq5Qi/fTeGZA4sfKDHHRJxkQIXYmS8R5FISRpBD7ta2NTHapRz9dC6Cw8UttEFiWFUBjN6lwF9LUOkj9MiqiTQaElKKQzMIHr0AhlgIkwBLKAJoDrGQD9GKPwKCdW3OmnODMPxJjXc3 >> /home/dcae/.ssh/authorized_keys
+
+#bash /opt/app/dcae-cdap-small-hadoop/install.sh
diff --git a/kubernetes/dcae/cdap/docker/01-entrypoint.sh b/kubernetes/dcae/cdap/docker/01-entrypoint.sh
new file mode 100755
index 0000000000..952d1d4cc6
--- /dev/null
+++ b/kubernetes/dcae/cdap/docker/01-entrypoint.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+
+dpkg --install /tmp/dcae-apod-cdap-small-hadoop_1.1.0.deb
+dpkg --install /tmp/dcae-apod-analytics-tca_1.1.0.deb
+
+bash /opt/app/dcae-cdap-small-hadoop/install.sh
+su dcae -c "/opt/app/dcae-controller-service-cdap-cluster-manager/bin/manager.sh config"
+su dcae -c "/opt/app/dcae-controller-service-cdap-cluster-manager/bin/manager.sh restart" \ No newline at end of file
diff --git a/kubernetes/dcae/cdap/docker/Dockerfile b/kubernetes/dcae/cdap/docker/Dockerfile
new file mode 100644
index 0000000000..5b8583ee51
--- /dev/null
+++ b/kubernetes/dcae/cdap/docker/Dockerfile
@@ -0,0 +1,57 @@
+FROM ubuntu:16.04
+
+# Setup apt.conf proxy settings
+#RUN echo 'Acquire::http::proxy "http://some.proxy:8084/";' >> /etc/apt/apt.conf
+
+# Setup Corporate proxy
+#ENV no_proxy "localhost,127.0.0.1,localaddress,.localdomain.com,192.168.141.0/24"
+#ENV https_proxy http://some.proxy:8084/
+#ENV http_proxy http://fsome.proxy:8084/
+#ENV HTTP_PROXY http://some.proxy:8084/
+#ENV HTTPS_PROXY http://some.proxy:8084/
+#ENV FTP_PROXY http://some.proxy:8084/
+#ENV NO_PROXY "localhost,127.0.0.1,localaddress,.localdomain.com,192.168.141.0/24"
+
+# Additional packages
+RUN apt-get update -y
+RUN apt-get install -y git wget unzip curl dnsutils sudo
+RUN apt-get install -y maven unzip
+
+# Install python and pip
+RUN apt-get install -y python
+RUN wget https://bootstrap.pypa.io/get-pip.py
+RUN python get-pip.py
+RUN rm get-pip.py
+RUN pip install pyyaml
+
+# Install Groovy
+RUN mkdir -p /opt/app
+RUN (cd /opt/app ; curl -Lo apache-groovy-binary-2.4.6.zip https://dl.bintray.com/groovy/maven/apache-groovy-binary-2.4.6.zip )
+RUN (cd /opt/app ; unzip apache-groovy-binary-2.4.6.zip )
+RUN mkdir -p /opt/app/java/jdk
+RUN ln -s /usr /opt/app/java/jdk/jdk170
+RUN mkdir -p /opt/app/groovy
+RUN ln -s /opt/app/groovy-2.4.6 /opt/app/groovy/246
+ENV JAVA_HOME /opt/app/java/jdk/jdk170
+
+# Create user dcae
+RUN if [ ! -e /home/dcae ]; then useradd -m -s /bin/bash dcae; fi
+
+# Hadoop
+EXPOSE 8020 8025 50070 50075 50010 50020
+
+# Zookeeper
+EXPOSE 3888 2888 2181
+
+VOLUME /opt/tools
+VOLUME /opt/data
+
+# Provisioning
+COPY 00-provisioning.sh /usr/local/bin/00-provisioning.sh
+RUN chmod a+x /usr/local/bin/00-provisioning.sh
+RUN /usr/local/bin/00-provisioning.sh
+
+# define the entrypoint
+COPY 01-entrypoint.sh /usr/local/bin/01-entrypoint.sh
+RUN chmod a+x /usr/local/bin/01-entrypoint.sh
+ENTRYPOINT ["/usr/local/bin/01-entrypoint.sh"]
diff --git a/kubernetes/dcae/cdap/docker/docker-compose.yaml b/kubernetes/dcae/cdap/docker/docker-compose.yaml
new file mode 100644
index 0000000000..8800c10e81
--- /dev/null
+++ b/kubernetes/dcae/cdap/docker/docker-compose.yaml
@@ -0,0 +1,44 @@
+version: '2'
+services:
+ cdap00:
+ build: .
+ hostname: zldcprivatecloudtruecdap00
+ image: cdap
+ ports:
+ - 8020
+ - 50070
+ - 50075
+ - 50010
+ - 50020
+ - 3888
+ - 2888
+ - 2181
+ - 8025
+ cdap01:
+ build: .
+ hostname: zldcprivatecloudtruecdap01
+ image: cdap
+ ports:
+ - 8020
+ - 50070
+ - 50075
+ - 50010
+ - 50020
+ - 3888
+ - 2888
+ - 2181
+ - 8025
+ cdap02:
+ build: .
+ hostname: zldcprivatecloudtruecdap02
+ image: cdap
+ ports:
+ - 8020
+ - 50070
+ - 50075
+ - 50010
+ - 50020
+ - 3888
+ - 2888
+ - 2181
+ - 8025 \ No newline at end of file
diff --git a/kubernetes/dcae/cdap/docker/fs/Dockerfile b/kubernetes/dcae/cdap/docker/fs/Dockerfile
new file mode 100644
index 0000000000..4e458dcd1e
--- /dev/null
+++ b/kubernetes/dcae/cdap/docker/fs/Dockerfile
@@ -0,0 +1,4 @@
+FROM ubuntu:16.04
+
+RUN mkdir -p /cdap
+VOLUME /cdap \ No newline at end of file
diff --git a/kubernetes/dcae/pgaas/Dockerfile b/kubernetes/dcae/pgaas/Dockerfile
new file mode 100755
index 0000000000..e1d147dfa9
--- /dev/null
+++ b/kubernetes/dcae/pgaas/Dockerfile
@@ -0,0 +1,45 @@
+FROM ubuntu:16.04
+
+# Install additional packages
+RUN apt-get update && apt-get -y install maven openjdk-8-jdk unzip python-pip curl dnsutils vim gawk wget openssh-client-ssh1
+RUN pip install pyyaml
+
+RUN apt-get update && apt-get install -y postgresql libpq5 repmgr python-psycopg2 python3-psycopg2 libgetopt-java
+RUN rm -f /usr/sbin/policy-rc.d
+
+# Install Groovy
+RUN mkdir -p /opt/app
+RUN (cd /opt/app ; curl -Lo apache-groovy-binary-2.4.6.zip https://dl.bintray.com/groovy/maven/apache-groovy-binary-2.4.6.zip )
+RUN (cd /opt/app ; unzip apache-groovy-binary-2.4.6.zip )
+RUN mkdir -p /opt/app/java/jdk
+RUN ln -s /usr /opt/app/java/jdk/jdk170
+RUN mkdir -p /opt/app/groovy
+RUN ln -s /opt/app/groovy-2.4.6 /opt/app/groovy/246
+
+# Create user dcae
+RUN if [ ! -e /home/dcae ]; then useradd -m -s /bin/bash dcae; fi
+
+# Download required packages
+RUN curl -s -k -f -o /tmp/org.openecomp.dcae.storage.pgaas-cdf_1.0.0.deb https://nexus.onap.org/content/sites/raw/org.openecomp.dcae.pgaas/deb-releases/org.openecomp.dcae.storage.pgaas-cdf_1.0.0.deb
+RUN curl -s -k -f -o /tmp/org.openecomp.dcae.storage.pgaas-postgresql-prep_1.0.0.deb https://nexus.onap.org/content/sites/raw/org.openecomp.dcae.pgaas/deb-releases/org.openecomp.dcae.storage.pgaas-postgresql-prep_1.0.0.deb
+RUN curl -s -k -f -o /tmp/org.openecomp.dcae.storage.pgaas-postgresql-config_1.0.0.deb https://nexus.onap.org/content/sites/raw/org.openecomp.dcae.pgaas/deb-releases/org.openecomp.dcae.storage.pgaas-postgresql-config_1.0.0.deb
+RUN curl -s -k -f -o /tmp/org.openecomp.dcae.storage.pgaas-pgaas_1.0.0.deb https://nexus.onap.org/content/sites/raw/org.openecomp.dcae.pgaas/deb-releases/org.openecomp.dcae.storage.pgaas-pgaas_1.0.0.deb
+RUN curl -s -k -f -o /tmp/org.openecomp.dcae.storage.pgaas-pgaas-post_1.0.0.deb https://nexus.onap.org/content/sites/raw/org.openecomp.dcae.pgaas/deb-releases/org.openecomp.dcae.storage.pgaas-pgaas-post_1.0.0.deb
+
+RUN apt-get update && apt-get install -y sudo && rm -rf /var/lib/apt/lists/*
+
+RUN mkdir -p /opt/tools
+RUN mkdir -p /dbroot/pgdata
+RUN mkdir -p /dbroot/pglogs
+
+EXPOSE 5432
+
+VOLUME /opt/tools
+VOLUME /dbroot/pgdata
+VOLUME /dbroot/pglogs
+
+# Setup the entrypoint
+COPY setup.sh /usr/local/bin/entrypoint.sh
+RUN chmod a+x /usr/local/bin/entrypoint.sh
+
+ENTRYPOINT ["usr/local/bin/entrypoint.sh"]
diff --git a/kubernetes/dcae/pgaas/setup.sh b/kubernetes/dcae/pgaas/setup.sh
new file mode 100755
index 0000000000..a843995003
--- /dev/null
+++ b/kubernetes/dcae/pgaas/setup.sh
@@ -0,0 +1,437 @@
+#!/bin/bash
+cat > /tmp/dcae_install.sh << EOF_DCAE_INSTALL
+#!/bin/bash
+set -x
+cd /tmp
+
+export DEBIAN_FRONTEND=noninteractive
+
+#### Using special configuration resource: instances/vm-postgresql/iad4.yaml
+## Adding configuration file: main
+cat | cat > /tmp/postgres.conf << EOF_CONFIG
+master: zldciad4vipstg00
+secondmaster: notused
+DRTR_NODE_KSTOREFILE: /opt/app/dcae-certificate/keystore.jks
+DRTR_NODE_KSTOREPASS: "No Certificate"
+DRTR_NODE_PVTKEYPASS: "No Certificate"
+PG_NODES : zldciad4vipstg00
+PG_JAVA_HOME : /opt/app/java/jdk/jdk170
+PG_CLUSTER : site
+EOF_CONFIG
+
+## Adding configuration file: mount_config
+cat | cat > /tmp/dcae-mount.conf << EOF_CONFIG
+osType: ubuntu
+volumes:
+ opt:
+ uuid: ephemeral
+ size: 80
+ filesystems:
+ /opt/tools:
+ size: 80
+ type: ext4
+ mount_opts: ''
+ dbroot:
+ uuid: cinder
+ size: 75
+ filesystems:
+ /dbroot/pgdata:
+ size: 50
+ type: ext4
+ mount_opts: ''
+ /dbroot/pglogs:
+ size: 25
+ type: ext4
+ mount_opts: ''
+
+EOF_CONFIG
+
+## Adding configuration file: ecomp-nexus
+cat > /tmp/ecomp-nexus.crt << EOF_CONFIG
+-----BEGIN CERTIFICATE-----
+MIIDtzCCAp+gAwIBAgIEet16RjANBgkqhkiG9w0BAQsFADB2MQswCQYDVQQGEwJVUzEUMBIGA1UE
+CBMLVW5zcGVjaWZpZWQxFDASBgNVBAcTC1Vuc3BlY2lmaWVkMREwDwYDVQQKEwhTb25hdHlwZTEQ
+MA4GA1UECxMHRXhhbXBsZTEWMBQGA1UEAwwNKi5lY29tcC1uZXh1czAeFw0xNjExMTQxMDE5NDJa
+Fw0zMDA3MjQxMDE5NDJaMHYxCzAJBgNVBAYTAlVTMRQwEgYDVQQIEwtVbnNwZWNpZmllZDEUMBIG
+A1UEBxMLVW5zcGVjaWZpZWQxETAPBgNVBAoTCFNvbmF0eXBlMRAwDgYDVQQLEwdFeGFtcGxlMRYw
+FAYDVQQDDA0qLmVjb21wLW5leHVzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqkDu
+vC91cZxOaRMYGHSyDeuw4hyXjqyD5Etl5L5TNN7+uFKEtvXsRYOxtD62TqWHKozffLE5o6zoRZL4
+8qNTQyAx0LaEfWfR2w0jat+UqtqEtW0xpOD0/O0qRq5Y/XG3Yr8SQ/y84Pr1FIflM7pM4PZTt3kc
+UfqzbaONW5K8t+UG+5jgNXdRk3hln8WMunVZeci0J6TV+tWs9tOeAKBdpI7K7LV+FJBaF8vBAw2x
+8AhlNPXKQUhK+M3DD73c1aLWrZ3mIwJXt2oQUDwgtXGCPR1/Z9f2tTAoDxpzvkwtP/BtH3qvgtpY
+QfDNmWbJVHh6ll39Hapt7V0v4aCRSN21ZQIDAQABo00wSzAMBgNVHRMEBTADAQH/MBwGA1UdEQQV
+MBOCC2Vjb21wLW5leHVzhwQK0MVLMB0GA1UdDgQWBBQxcUlk/lkKkwSz0GuewbXptJxl+zANBgkq
+hkiG9w0BAQsFAAOCAQEAPnNbtdreMZaUSjv+1eqpriLKquwnZhnwWENn1u3sw4hTAWQc+ehhogGg
+eIqPN81Dt3jhr0bYZW+r3gGq7tgrLxdSXso8bTtqHsFLszirgWcQXDlBQGnw9wqp/KBzeDJInJep
+d6aGu3yBXV6459S/mClxZTSvsR+Vz3rRWxx01R3/ft5/myqrRMDnEncqPopTbEamBuUJL3eJDpFO
+xlVqYR3y6AXwwguMaTiHMfFBmDOVaz4K8Qy6AaHH9eoch9fxOJ/7ASvqSwkC9GYTJSnF2vE37rmH
+kPp//Vm4WSnQ2NrBGkH9rUUdYdDdgWJYnTeZ+YFd8J6z9xNiEn9QKQNNcA==
+-----END CERTIFICATE-----
+
+EOF_CONFIG
+## Adding configuration file: vm-postgresql-console.properties
+cat > /tmp/vm-postgresql-console.properties << EOF_CONFIG
+localhost.endpoint=http://localhost:9999
+localhost.user=console
+localhost.password=MDBmMzE0NTgyMDU1NmVj
+EOF_CONFIG
+
+## Adding configuration file: vm-postgresql-gui.properties
+cat > /tmp/vm-postgresql-gui.properties << EOF_CONFIG
+EOF_CONFIG
+
+## Adding configuration file: vm-postgresql-log4j.properties
+cat > /tmp/vm-postgresql-log4j.properties << EOF_CONFIG
+#log4j.debug=0
+log4j.rootLogger=warn, file
+log4j.logger.org.openecomp.ncomp=info, file
+log4j.additivity.org.openecomp.ncomp=false
+
+#log4j.logger.org.apache.http.headers=debug, file
+#log4j.logger.org.apache.http.wire=debug, file
+## uploaded logger
+log4j.logger.org.openecomp.ncomp.sirius.manager.uploaded=info, uploaded
+log4j.additivity.org.openecomp.ncomp.sirius.manager.uploaded=false
+## request logging
+log4j.logger.org.openecomp.ncomp.sirius.manager.ManagementServer.requests=info, requests
+log4j.additivity.org.openecomp.ncomp.sirius.manager.ManagementServer.requests=false
+## openstack polling
+log4j.logger.org.openecomp.ncomp.openstack.OpenStackUtil.polling=info, polling
+log4j.additivity.org.openecomp.ncomp.openstack.OpenStackUtil.polling=false
+log4j.appender.file=org.apache.log4j.RollingFileAppender
+log4j.appender.file.File=logs/manager.log
+log4j.appender.file.layout=org.apache.log4j.PatternLayout
+log4j.appender.file.layout.ConversionPattern=%d %5p [%t] %m %C:%L%n
+log4j.appender.file.MaxFileSize=50MB
+log4j.appender.file.MaxBackupIndex=5
+
+log4j.appender.uploaded=org.apache.log4j.RollingFileAppender
+log4j.appender.uploaded.File=logs/manager-uploaded.log
+log4j.appender.uploaded.layout=org.apache.log4j.PatternLayout
+log4j.appender.uploaded.layout.ConversionPattern=%d %5p [%t] %m %C:%L%n
+log4j.appender.uploaded.MaxFileSize=50MB
+log4j.appender.uploaded.MaxBackupIndex=5
+
+log4j.appender.requests=org.apache.log4j.RollingFileAppender
+log4j.appender.requests.File=logs/manager-requests.log
+log4j.appender.requests.layout=org.apache.log4j.PatternLayout
+log4j.appender.requests.layout.ConversionPattern=%d %5p [%t] %m %C:%L%n
+log4j.appender.requests.MaxFileSize=50MB
+log4j.appender.requests.MaxBackupIndex=5
+log4j.appender.polling=org.apache.log4j.RollingFileAppender
+log4j.appender.polling.File=logs/manager-polling.log
+log4j.appender.polling.layout=org.apache.log4j.PatternLayout
+log4j.appender.polling.layout.ConversionPattern=%d %5p [%t] %m %C:%L%n
+log4j.appender.polling.MaxFileSize=50MB
+log4j.appender.polling.MaxBackupIndex=5
+
+### ECOMP Logging
+log4j.logger.org.openecomp.audit=info, audit
+log4j.additivity.org.openecomp.audit=false
+log4j.logger.org.openecomp.metrics=info, metrics
+log4j.additivity.org.openecomp.metrics=false
+log4j.logger.org.openecomp.error=info, error
+log4j.additivity.org.openecomp.error=false
+log4j.logger.com.att.eelf.debug=info, debug
+log4j.additivity.org.openecomp.debug=false
+log4j.appender.audit=org.apache.log4j.RollingFileAppender
+log4j.appender.audit.File=logs/audit.log
+log4j.appender.audit.layout=org.apache.log4j.PatternLayout
+log4j.appender.audit.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%5p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
+log4j.appender.audit.MaxFileSize=50MB
+log4j.appender.audit.MaxBackupIndex=5
+log4j.appender.metrics=org.apache.log4j.RollingFileAppender
+log4j.appender.metrics.File=logs/metrics.log
+log4j.appender.metrics.layout=org.apache.log4j.PatternLayout
+log4j.appender.metrics.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
+log4j.appender.metrics.MaxFileSize=50MB
+log4j.appender.metrics.MaxBackupIndex=5
+log4j.appender.error=org.apache.log4j.RollingFileAppender
+log4j.appender.error.File=logs/error.log
+log4j.appender.error.layout=org.apache.log4j.PatternLayout
+log4j.appender.error.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
+log4j.appender.error.MaxFileSize=50MB
+log4j.appender.error.MaxBackupIndex=5
+log4j.appender.debug=org.apache.log4j.RollingFileAppender
+log4j.appender.debug.File=logs/debug.log
+log4j.appender.debug.layout=org.apache.log4j.PatternLayout
+log4j.appender.debug.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
+log4j.appender.debug.MaxFileSize=50MB
+log4j.appender.debug.MaxBackupIndex=5
+EOF_CONFIG
+
+## Adding configuration file: vm-postgresql-manager.properties
+cat > /tmp/vm-postgresql-manager.properties << EOF_CONFIG
+server.dir = data/resources
+metrics.dir = data/metrics
+properties.dir = data/properties
+server.port = 9999
+server.user.console = MDBmMzE0NTgyMDU1NmVj
+server.user.gui = M2NiOTg1YzNiYTI2NTJh
+server.user.client = OTNmMmFkYzkxMzYzNTk0
+EOF_CONFIG
+
+## Adding configuration file: vm-postgresql-runtime.properties
+cat > /tmp/vm-postgresql-runtime.properties << EOF_CONFIG
+factory.vm=org.openecomp.dcae.controller.service.servers.vm.DcaeVmFactory
+factory.postgres=org.openecomp.dcae.controller.service.storage.postgres.service.impl.ServicePackageImpl
+EOF_CONFIG
+
+## Adding configuration file: vm-postgresql-hosts
+cat > /tmp/vm-postgresql-hosts << EOF_CONFIG
+EOF_CONFIG
+
+## Adding configuration file: monitoring-agent-gui.properties
+cat > /tmp/monitoring-agent-gui.properties << EOF_CONFIG
+EOF_CONFIG
+
+cat >> /etc/hosts << HOSTS_EOF
+HOSTS_EOF
+
+cat > /tmp/certificate.pkcs12.b64code << EOF_CERT
+EOF_CERT
+
+##############################################################
+##################### CLOUDINIT ##############################
+##############################################################
+
+## need to fix cloudinit in Centos.
+
+CLOUDHOSTCFG=/etc/cloud/cloud.cfg.d/99_hostname.cfg
+if [ -f /etc/redhat-release ]; then
+ # CentOS/RHEL
+ ( echo "hostname: \$(hostname)"; echo "fqdn: \$(hostname -f)" ) > \$CLOUDHOSTCFG
+fi
+
+mkdir -p ~/.ssh
+touch ~/.ssh/authorized_keys
+
+echo ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCYz++VKcW3Sw0Sh7fFyTIjXED6NUUNYbje7awcnvaHHAC0rUxs7boX6hmWDViXoGZA5xw4Xhk5kIEs+zxMCDlF1q/9rbyq5ndonlBz3aPx7+SBqVR5sPalbSr8dJhGPwpj/0Df+FzqjGVL2p2d4VV7SeT/kKrNcSY6SmYHln6osoGFAHsOZC0d+fiba4zfCI9EI6zHdyCujwayjQ5W5UgA50XQ0KXpI5WtF6MOwO6jPL3SNNDlWobG/nsCAMxTQ04dALpYSoamM12Ps72MfxEwaKkoAcsH6WsFbuvoUSXwNcosmyxYrxNynsUz4C2Tz+PZqelGvm8Y8MtNuhN7oqAD root@ecomp-jumpbox >> /home/ubuntu/.ssh/authorized_keys
+
+######### step-1
+
+cp /tmp/ecomp-nexus.crt /usr/local/share/ca-certificates/ ; update-ca-certificates
+
+######### step-2
+
+echo 162.242.254.138 ecomp-nexus >> /etc/hosts
+
+######### step-3
+
+if [ ! -e /home/dcae ]; then useradd -m -s /bin/bash dcae; fi
+
+case runtime in
+ %*)
+ A1=org.openecomp.dcae.controller:dcae-controller-core-utils:1.0.0:zip
+ ;;
+ *)
+ A1=org.openecomp.dcae.controller:dcae-controller-core-utils:1.0.0:zip:runtime
+ ;;
+esac
+
+wget https://nexus.onap.org/content/repositories/staging/org/openecomp/dcae/controller/dcae-controller-core-utils/1.0.0/dcae-controller-core-utils-1.0.0-runtime.zip -P /opt/app/dcae-controller-core-utils
+
+case zip in
+ jar)
+ mkdir /opt/app/dcae-controller-core-utils/lib
+ mv /opt/app/dcae-controller-core-utils/*.jar /opt/app/dcae-controller-core-utils/lib
+ ;;
+ zip)
+ ( cd /opt/app/dcae-controller-core-utils ; unzip -o dcae-controller-core-utils*.zip )
+ ;;
+esac
+
+chown -R dcae:dcae /opt/app/dcae-controller-core-utils
+
+######### step-4
+
+/opt/app/dcae-controller-core-utils/bin/fs-init.py
+
+######### step-5
+
+if [ ! -e /home/dcae ]; then useradd -m -s /bin/bash dcae; fi
+
+case runtime in
+ %*)
+ A1=org.openecomp.dcae.controller:dcae-controller-service-common-vm-manager:1.0.0:zip
+ ;;
+ *)
+ A1=org.openecomp.dcae.controller:dcae-controller-service-common-vm-manager:1.0.0:zip:runtime
+ ;;
+esac
+
+wget https://nexus.onap.org/content/repositories/staging/org/openecomp/dcae/controller/dcae-controller-service-common-vm-manager/1.0.0/dcae-controller-service-common-vm-manager-1.0.0-runtime.zip -P /opt/app/dcae-controller-service-common-vm-manager
+
+case zip in
+ jar)
+ mkdir /opt/app/dcae-controller-service-common-vm-manager/lib
+ mv /opt/app/dcae-controller-service-common-vm-manager/*.jar /opt/app/dcae-controller-service-common-vm-manager/lib
+ ;;
+ zip)
+ ( cd /opt/app/dcae-controller-service-common-vm-manager ; unzip -o dcae-controller-service-common-vm-manager*.zip )
+ ;;
+esac
+
+chown -R dcae:dcae /opt/app/dcae-controller-service-common-vm-manager
+
+######### step-6
+
+if [ ! -e /home/dcae ]; then useradd -m -s /bin/bash dcae; fi
+
+case %{assemblyId} in
+ %*)
+ A1=org.openecomp.dcae.controller:dcae-controller-service-storage-postgres-model:1.0.0:jar
+ ;;
+ *)
+ A1=org.openecomp.dcae.controller:dcae-controller-service-storage-postgres-model:1.0.0:jar:%{assemblyId}
+ ;;
+esac
+
+wget https://nexus.onap.org/content/repositories/staging/org/openecomp/dcae/controller/dcae-controller-service-storage-postgres-model/1.0.0/dcae-controller-service-storage-postgres-model-1.0.0.jar -P /opt/app/dcae-controller-service-storage-postgres-model
+
+case jar in
+ jar)
+ mkdir /opt/app/dcae-controller-service-storage-postgres-model/lib
+ mv /opt/app/dcae-controller-service-storage-postgres-model/*.jar /opt/app/dcae-controller-service-storage-postgres-model/lib
+ ;;
+ zip)
+ ( cd /opt/app/dcae-controller-service-storage-postgres-model ; unzip -o dcae-controller-service-storage-postgres-model*.zip )
+ ;;
+esac
+
+chown -R dcae:dcae /opt/app/dcae-controller-service-storage-postgres-model
+
+######### step-7
+
+if [ ! -e /home/dcae ]; then useradd -m -s /bin/bash dcae; fi
+
+OUT=/tmp/`basename https://nexus.onap.org/content/sites/raw/org.openecomp.dcae.pgaas/deb-releases/org.openecomp.dcae.storage.pgaas-cdf_1.0.0.deb`
+
+case deb in
+ deb)
+ dpkg --install \$OUT
+ ;;
+ jar)
+ mkdir -p /opt/app/%{artifactId}/lib
+ mv \$OUT /opt/app/%{artifactId}/lib
+ chown -R dcae:dcae /opt/app/%{artifactId}
+ ;;
+ zip)
+ mkdir -p /opt/app/%{artifactId}/lib
+ ( cd /opt/app/%{artifactId} ; cp -p \$OUT . ; unzip -o \$OUT )
+ chown -R dcae:dcae /opt/app/%{artifactId}
+ ;;
+esac
+
+######### step-8
+
+if [ ! -e /home/dcae ]; then useradd -m -s /bin/bash dcae; fi
+
+OUT=/tmp/`basename https://nexus.onap.org/content/sites/raw/org.openecomp.dcae.pgaas/deb-releases/org.openecomp.dcae.storage.pgaas-postgresql-prep_1.0.0.deb`
+
+case deb in
+ deb)
+ dpkg --install \$OUT
+ ;;
+ jar)
+ mkdir -p /opt/app/%{artifactId}/lib
+ mv \$OUT /opt/app/%{artifactId}/lib
+ chown -R dcae:dcae /opt/app/%{artifactId}
+ ;;
+ zip)
+ mkdir -p /opt/app/%{artifactId}/lib
+ ( cd /opt/app/%{artifactId} ; cp -p \$OUT . ; unzip -o \$OUT )
+ chown -R dcae:dcae /opt/app/%{artifactId}
+ ;;
+esac
+
+######### step-9
+
+if [ ! -e /home/dcae ]; then useradd -m -s /bin/bash dcae; fi
+
+OUT=/tmp/`basename https://nexus.onap.org/content/sites/raw/org.openecomp.dcae.pgaas/deb-releases/org.openecomp.dcae.storage.pgaas-postgresql-config_1.0.0.deb`
+
+case deb in
+ deb)
+ dpkg --install \$OUT
+ ;;
+ jar)
+ mkdir -p /opt/app/%{artifactId}/lib
+ mv \$OUT /opt/app/%{artifactId}/lib
+ chown -R dcae:dcae /opt/app/%{artifactId}
+ ;;
+ zip)
+ mkdir -p /opt/app/%{artifactId}/lib
+ ( cd /opt/app/%{artifactId} ; cp -p \$OUT . ; unzip -o \$OUT )
+ chown -R dcae:dcae /opt/app/%{artifactId}
+ ;;
+esac
+
+######### step-10
+
+if [ ! -e /home/dcae ]; then useradd -m -s /bin/bash dcae; fi
+
+OUT=/tmp/`basename https://nexus.onap.org/content/sites/raw/org.openecomp.dcae.pgaas/deb-releases/org.openecomp.dcae.storage.pgaas-pgaas_1.0.0.deb`
+
+case deb in
+ deb)
+ dpkg --install \$OUT
+ ;;
+ jar)
+ mkdir -p /opt/app/%{artifactId}/lib
+ mv \$OUT /opt/app/%{artifactId}/lib
+ chown -R dcae:dcae /opt/app/%{artifactId}
+ ;;
+ zip)
+ mkdir -p /opt/app/%{artifactId}/lib
+ ( cd /opt/app/%{artifactId} ; cp -p \$OUT . ; unzip -o \$OUT )
+ chown -R dcae:dcae /opt/app/%{artifactId}
+ ;;
+esac
+
+touch /etc/sudoers.d/dcae-postgres
+echo "dcae ALL=(postgres) NOPASSWD: ALL" > /etc/sudoers.d/dcae-postgres
+
+/opt/app/postgresql-prep/bin/iDNS-responder.py &
+
+/etc/init.d/cron restart
+
+######### step-11
+
+if [ ! -e /home/dcae ]; then useradd -m -s /bin/bash dcae; fi
+
+OUT=/tmp/`basename https://nexus.onap.org/content/sites/raw/org.openecomp.dcae.pgaas/deb-releases/org.openecomp.dcae.storage.pgaas-pgaas-post_1.0.0.deb`
+case deb in
+ deb)
+ dpkg --install \$OUT
+ ;;
+ jar)
+ mkdir -p /opt/app/%{artifactId}/lib
+ mv \$OUT /opt/app/%{artifactId}/lib
+ chown -R dcae:dcae /opt/app/%{artifactId}
+ ;;
+ zip)
+ mkdir -p /opt/app/%{artifactId}/lib
+ ( cd /opt/app/%{artifactId} ; cp -p \$OUT . ; unzip -o \$OUT )
+ chown -R dcae:dcae /opt/app/%{artifactId}
+ ;;
+esac
+
+######### step-12
+
+find /opt -type f -exec sed -i 's/sudo//g' {} \;
+su dcae -c "/opt/app/dcae-controller-service-common-vm-manager/bin/manager.sh config"
+su dcae -c "/opt/app/dcae-controller-service-common-vm-manager/bin/manager.sh restart"
+
+mkdir /home/dcae/.ssh
+chmod og-rwx /home/dcae/.ssh
+chown -R dcae:dcae /home/dcae/.ssh
+touch /home/dcae/.ssh/authorized_keys
+chmod og-rwx /home/dcae/.ssh/authorized_keys
+chown -R dcae:dcae /home/dcae/.ssh/authorized_keys
+echo ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCYz++VKcW3Sw0Sh7fFyTIjXED6NUUNYbje7awcnvaHHAC0rUxs7boX6hmWDViXoGZA5xw4Xhk5kIEs+zxMCDlF1q/9rbyq5ndonlBz3aPx7+SBqVR5sPalbSr8dJhGPwpj/0Df+FzqjGVL2p2d4VV7SeT/kKrNcSY6SmYHln6osoGFAHsOZC0d+fiba4zfCI9EI6zHdyCujwayjQ5W5UgA50XQ0KXpI5WtF6MOwO6jPL3SNNDlWobG/nsCAMxTQ04dALpYSoamM12Ps72MfxEwaKkoAcsH6WsFbuvoUSXwNcosmyxYrxNynsUz4C2Tz+PZqelGvm8Y8MtNuhN7oqAD root@ecomp-jumpbox >> /home/dcae/.ssh/authorized_keys
+#no final script: vm-postgresql.userdata
+EOF_DCAE_INSTALL
+echo null > /tmp/.password
+chmod u+x /tmp/dcae_install.sh
+/tmp/dcae_install.sh 2>&1 | tee /tmp/dcae_install.log
diff --git a/kubernetes/dcae/templates/all-services.yaml b/kubernetes/dcae/templates/all-services.yaml
new file mode 100644
index 0000000000..45d22dba21
--- /dev/null
+++ b/kubernetes/dcae/templates/all-services.yaml
@@ -0,0 +1,117 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: zookeeper
+ namespace: "{{ .Values.nsPrefix }}-dcae"
+ labels:
+ app: zookeeper
+spec:
+ ports:
+ - name: zookeeper1
+ port: 2181
+ selector:
+ app: zookeeper
+ clusterIP: None
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: kafka
+ namespace: "{{ .Values.nsPrefix }}-dcae"
+ labels:
+ app: kafka
+spec:
+ ports:
+ - name: kafka1
+ port: 9092
+ selector:
+ app: kafka
+ clusterIP: None
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: dmaap
+ namespace: "{{ .Values.nsPrefix }}-dcae"
+ labels:
+ app: dmaap
+ version: 1.1.0
+spec:
+ ports:
+ - name: mr1
+ port: 3904
+ #nodePort: {{ .Values.nodePortPrefix }}27
+ - name: mr2
+ port: 3905
+ #nodePort: {{ .Values.nodePortPrefix }}26
+ selector:
+ app: dmaap
+ #type: NodePort
+ clusterIP: None
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: zldciad4vipstg00
+ namespace: "{{ .Values.nsPrefix }}-dcae"
+ labels:
+ app: dcae-pgaas
+spec:
+ selector:
+ app: dcae-pgaas
+ ports:
+ - port: 5432
+ protocol: TCP
+ targetPort: 5432
+ nodePort: {{ .Values.nodePortPrefix }}45
+ type: NodePort
+---
+apiVersion: v1
+kind: Service
+metadata:
+ labels:
+ app: dcae-collector-common-event
+ version: latest
+ name: dcae-collector-common-event
+ namespace: "{{ .Values.nsPrefix }}-dcae"
+spec:
+ ports:
+ - name: dcae-ce1
+ port: 8080
+ protocol: TCP
+ nodePort: {{ .Values.nodePortPrefix }}36
+ - name: dcae-ce2
+ port: 8443
+ protocol: TCP
+ nodePort: {{ .Values.nodePortPrefix }}37
+ - name: dcae-ce3
+ port: 9999
+ protocol: TCP
+ nodePort: {{ .Values.nodePortPrefix }}38
+ selector:
+ app: dcae-collector-common-event
+ type: NodePort
+---
+apiVersion: v1
+kind: Service
+metadata:
+ labels:
+ app: dcae-collector-dmaapbc
+ version: latest
+ name: dcae-collector-dmaapbc
+ namespace: "{{ .Values.nsPrefix }}-dcae"
+spec:
+ ports:
+ - name: dcae-bc1
+ port: 8080
+ protocol: TCP
+ targetPort: 8080
+ nodePort: {{ .Values.nodePortPrefix }}39
+ - name: dcae-bc2
+ port: 8443
+ protocol: TCP
+ targetPort: 8443
+ nodePort: {{ .Values.nodePortPrefix }}40
+ selector:
+ app: dcae-collector-dmaapbc
+ type: NodePort
diff --git a/kubernetes/dcae/templates/cdap0-dep.yaml b/kubernetes/dcae/templates/cdap0-dep.yaml
new file mode 100644
index 0000000000..d438ab9477
--- /dev/null
+++ b/kubernetes/dcae/templates/cdap0-dep.yaml
@@ -0,0 +1,84 @@
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ annotations:
+ deployment.kubernetes.io/revision: "1"
+ labels:
+ app: cdap0
+ name: cdap0
+ namespace: "{{ .Values.nsPrefix }}-dcae"
+spec:
+ selector:
+ matchLabels:
+ app: cdap0
+ strategy:
+ rollingUpdate:
+ maxSurge: 1
+ maxUnavailable: 1
+ type: RollingUpdate
+ template:
+ metadata:
+ labels:
+ app: cdap0
+ name: cdap0
+ annotations:
+ pod.beta.kubernetes.io/init-containers: '[
+ {
+ "name": "create-fs",
+ "image": "{{ .Values.image.cdapfs }}",
+ "imagePullPolicy": "{{ .Values.pullPolicy }}",
+ "command": ["/bin/bash", "-c", "mkdir -p /cdap/{cdap0-opt-tools,cdap0-opt-data,pod-ip}; grep `hostname` /etc/hosts > /cdap/pod-ip/`hostname`_ip.txt; while [`ls /cdap/pod-ip | wc -l` < 3]; do sleep 1; done"],
+ "volumeMounts": [
+ {
+ "mountPath": "/cdap",
+ "name": "cdap-root"
+ }
+ ]
+ }
+ ]'
+ spec:
+ hostname: zldcprivatecloudtruecdap00
+ containers:
+ - image: {{ .Values.image.cdap }}
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ command: ["/bin/bash"]
+ args: ["-c", "cat /cdap/pod-ip/* >> /etc/hosts; /usr/local/bin/01-entrypoint.sh; sleep infinity;"]
+ name: cdap0
+ ports:
+ - containerPort: 8020
+ protocol: TCP
+ - containerPort: 8025
+ protocol: TCP
+ - containerPort: 50070
+ protocol: TCP
+ - containerPort: 50075
+ protocol: TCP
+ - containerPort: 50010
+ protocol: TCP
+ - containerPort: 50020
+ protocol: TCP
+ - containerPort: 3888
+ protocol: TCP
+ - containerPort: 2888
+ protocol: TCP
+ - containerPort: 2181
+ protocol: TCP
+ volumeMounts:
+ - mountPath: /cdap
+ name: cdap-root
+ - mountPath: /opt/tools
+ name: dcae-cdap0-opt-tools
+ - mountPath: /opt/data
+ name: dcae-cdap0-opt-data
+ volumes:
+ - name: cdap-root
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/cdap
+ - name: dcae-cdap0-opt-tools
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/cdap/cdap0-opt-tools
+ - name: dcae-cdap0-opt-data
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/cdap/cdap0-opt-data
+ imagePullSecrets:
+ - name: "{{ .Values.nsPrefix }}-docker-registry-key"
diff --git a/kubernetes/dcae/templates/cdap1-dep.yaml b/kubernetes/dcae/templates/cdap1-dep.yaml
new file mode 100644
index 0000000000..efc64da203
--- /dev/null
+++ b/kubernetes/dcae/templates/cdap1-dep.yaml
@@ -0,0 +1,84 @@
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ annotations:
+ deployment.kubernetes.io/revision: "1"
+ labels:
+ app: cdap1
+ name: cdap1
+ namespace: "{{ .Values.nsPrefix }}-dcae"
+spec:
+ selector:
+ matchLabels:
+ app: cdap1
+ strategy:
+ rollingUpdate:
+ maxSurge: 1
+ maxUnavailable: 1
+ type: RollingUpdate
+ template:
+ metadata:
+ labels:
+ app: cdap1
+ name: cdap1
+ annotations:
+ pod.beta.kubernetes.io/init-containers: '[
+ {
+ "name": "create-fs",
+ "image": "{{ .Values.image.cdapfs }}",
+ "imagePullPolicy": "{{ .Values.pullPolicy }}",
+ "command": ["/bin/bash", "-c", "mkdir -p /cdap/{cdap1-opt-tools,cdap1-opt-data}; grep `hostname` /etc/hosts > /cdap/pod-ip/`hostname`_ip.txt; while [`ls /cdap/pod-ip | wc -l` < 3]; do sleep 1; done"],
+ "volumeMounts": [
+ {
+ "mountPath": "/cdap",
+ "name": "cdap-root"
+ }
+ ]
+ }
+ ]'
+ spec:
+ hostname: zldcprivatecloudtruecdap01
+ containers:
+ - image: {{ .Values.image.cdap }}
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ command: ["/bin/bash"]
+ args: ["-c", "cat /cdap/pod-ip/* >> /etc/hosts; /usr/local/bin/01-entrypoint.sh; sleep infinity;"]
+ name: cdap1
+ ports:
+ - containerPort: 8020
+ protocol: TCP
+ - containerPort: 8025
+ protocol: TCP
+ - containerPort: 50070
+ protocol: TCP
+ - containerPort: 50075
+ protocol: TCP
+ - containerPort: 50010
+ protocol: TCP
+ - containerPort: 50020
+ protocol: TCP
+ - containerPort: 3888
+ protocol: TCP
+ - containerPort: 2888
+ protocol: TCP
+ - containerPort: 2181
+ protocol: TCP
+ volumeMounts:
+ - mountPath: /cdap
+ name: cdap-root
+ - mountPath: /opt/tools
+ name: dcae-cdap1-opt-tools
+ - mountPath: /opt/data
+ name: dcae-cdap1-opt-data
+ volumes:
+ - name: cdap-root
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/cdap
+ - name: dcae-cdap1-opt-tools
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/cdap/cdap1-opt-tools
+ - name: dcae-cdap1-opt-data
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/cdap/cdap1-opt-data
+ imagePullSecrets:
+ - name: "{{ .Values.nsPrefix }}-docker-registry-key"
diff --git a/kubernetes/dcae/templates/cdap2-dep.yaml b/kubernetes/dcae/templates/cdap2-dep.yaml
new file mode 100644
index 0000000000..64f8e300b7
--- /dev/null
+++ b/kubernetes/dcae/templates/cdap2-dep.yaml
@@ -0,0 +1,84 @@
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ annotations:
+ deployment.kubernetes.io/revision: "1"
+ labels:
+ app: cdap2
+ name: cdap2
+ namespace: "{{ .Values.nsPrefix }}-dcae"
+spec:
+ selector:
+ matchLabels:
+ app: cdap2
+ strategy:
+ rollingUpdate:
+ maxSurge: 1
+ maxUnavailable: 1
+ type: RollingUpdate
+ template:
+ metadata:
+ labels:
+ app: cdap2
+ name: cdap2
+ annotations:
+ pod.beta.kubernetes.io/init-containers: '[
+ {
+ "name": "create-fs",
+ "image": "{{ .Values.image.cdapfs }}",
+ "imagePullPolicy": "{{ .Values.pullPolicy }}",
+ "command": ["/bin/bash", "-c", "mkdir -p /cdap/{cdap2-opt-tools,cdap2-opt-data}; grep `hostname` /etc/hosts > /cdap/pod-ip/`hostname`_ip.txt; while [`ls /cdap/pod-ip | wc -l` < 3]; do sleep 1; done"],
+ "volumeMounts": [
+ {
+ "mountPath": "/cdap",
+ "name": "cdap-root"
+ }
+ ]
+ }
+ ]'
+ spec:
+ hostname: zldcprivatecloudtruecdap02
+ containers:
+ - image: {{ .Values.image.cdap }}
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ command: ["/bin/bash"]
+ args: ["-c", "cat /cdap/pod-ip/* >> /etc/hosts; /usr/local/bin/01-entrypoint.sh; sleep infinity;"]
+ name: cdap2
+ ports:
+ - containerPort: 8020
+ protocol: TCP
+ - containerPort: 8025
+ protocol: TCP
+ - containerPort: 50070
+ protocol: TCP
+ - containerPort: 50075
+ protocol: TCP
+ - containerPort: 50010
+ protocol: TCP
+ - containerPort: 50020
+ protocol: TCP
+ - containerPort: 3888
+ protocol: TCP
+ - containerPort: 2888
+ protocol: TCP
+ - containerPort: 2181
+ protocol: TCP
+ volumeMounts:
+ - mountPath: /cdap
+ name: cdap-root
+ - mountPath: /opt/tools
+ name: dcae-cdap2-opt-tools
+ - mountPath: /opt/data
+ name: dcae-cdap2-opt-data
+ volumes:
+ - name: cdap-root
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/cdap
+ - name: dcae-cdap2-opt-tools
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/cdap/cdap2-opt-tools
+ - name: dcae-cdap2-opt-data
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/cdap/cdap2-opt-data
+ imagePullSecrets:
+ - name: "{{ .Values.nsPrefix }}-docker-registry-key"
diff --git a/kubernetes/dcae/templates/dcae-collector-common-event.yaml b/kubernetes/dcae/templates/dcae-collector-common-event.yaml
new file mode 100644
index 0000000000..c77e5a4d96
--- /dev/null
+++ b/kubernetes/dcae/templates/dcae-collector-common-event.yaml
@@ -0,0 +1,38 @@
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: dcae-collector-common-event
+ namespace: "{{ .Values.nsPrefix }}-dcae"
+spec:
+ selector:
+ matchLabels:
+ app: dcae-collector-common-event
+ template:
+ metadata:
+ labels:
+ app: dcae-collector-common-event
+ name: dcae-collector-common-event
+ spec:
+ containers:
+ - image: {{ .Values.image.commonevent }}
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ name: dcae-collector-common-event
+ ports:
+ - containerPort: 8080
+ - containerPort: 8443
+ - containerPort: 9999
+ env:
+# - name: KAFKA_ZOOKEEPER_CONNECT
+# value: "zookeeper:2181"
+# command:
+# - start-kafka.sh
+ volumeMounts:
+ - mountPath: /opt/app/manager/config
+ name: dcae-collector-common-event-config
+ restartPolicy: Always
+ volumes:
+ - name: dcae-collector-common-event-config
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/common-event/config
+ imagePullSecrets:
+ - name: "{{ .Values.nsPrefix }}-docker-registry-key"
diff --git a/kubernetes/dcae/templates/dcae-collector-dmaapbc.yaml b/kubernetes/dcae/templates/dcae-collector-dmaapbc.yaml
new file mode 100644
index 0000000000..a36d5061f2
--- /dev/null
+++ b/kubernetes/dcae/templates/dcae-collector-dmaapbc.yaml
@@ -0,0 +1,37 @@
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: dcae-collector-dmaapbc
+ namespace: "{{ .Values.nsPrefix }}-dcae"
+spec:
+ selector:
+ matchLabels:
+ app: dcae-collector-dmaapbc
+ template:
+ metadata:
+ labels:
+ app: dcae-collector-dmaapbc
+ name: dcae-collector-dmaapbc
+ spec:
+ containers:
+ - image: {{ .Values.image.dmaapbc }}
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ name: dcae-collector-dmaapbc
+ ports:
+ - containerPort: 18080
+ - containerPort: 18443
+ env:
+# - name: KAFKA_ZOOKEEPER_CONNECT
+# value: "zookeeper:2181"
+# command:
+# - start-kafka.sh
+ volumeMounts:
+ - mountPath: /opt/app/config
+ name: dcae-collector-dmaapbc-config
+ restartPolicy: Always
+ volumes:
+ - name: dcae-collector-dmaapbc-config
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/dmaapbc/config
+ imagePullSecrets:
+ - name: "{{ .Values.nsPrefix }}-docker-registry-key"
diff --git a/kubernetes/dcae/templates/dcae-controller.yaml b/kubernetes/dcae/templates/dcae-controller.yaml
new file mode 100644
index 0000000000..459e81e8b3
--- /dev/null
+++ b/kubernetes/dcae/templates/dcae-controller.yaml
@@ -0,0 +1,61 @@
+apiVersion: v1
+kind: Service
+metadata:
+ labels:
+ app: dcae-controller
+ version: latest
+ name: dcae-controller
+ namespace: "{{ .Values.nsPrefix }}-dcae"
+spec:
+ ports:
+ - name: dcae-con1
+ port: 8000
+ protocol: TCP
+ targetPort: 8000
+ nodePort: {{ .Values.nodePortPrefix }}34
+ - name: dcae-con2
+ port: 9998
+ protocol: TCP
+ targetPort: 9998
+ nodePort: {{ .Values.nodePortPrefix }}35
+ selector:
+ app: dcae-controller
+ type: NodePort
+---
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: dcae-controller
+ namespace: "{{ .Values.nsPrefix }}-dcae"
+spec:
+ selector:
+ matchLabels:
+ app: dcae-controller
+ template:
+ metadata:
+ labels:
+ app: dcae-controller
+ name: dcae-controller
+ spec:
+ containers:
+ - image: {{ .Values.image.controller }}
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ name: dcae-controller
+ ports:
+ - containerPort: 8000
+ - containerPort: 9998
+ env:
+# - name: KAFKA_ZOOKEEPER_CONNECT
+# value: "zookeeper:2181"
+# command:
+# - start-kafka.sh
+ volumeMounts:
+ - mountPath: /opt/app/config
+ name: dcae-controller-config
+ restartPolicy: Always
+ volumes:
+ - name: dcae-controller-config
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/dcae-controller/config
+ imagePullSecrets:
+ - name: "{{ .Values.nsPrefix }}-docker-registry-key"
diff --git a/kubernetes/dcae/templates/dcae-dmaap.yaml b/kubernetes/dcae/templates/dcae-dmaap.yaml
new file mode 100644
index 0000000000..e1f61e5135
--- /dev/null
+++ b/kubernetes/dcae/templates/dcae-dmaap.yaml
@@ -0,0 +1,75 @@
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: dmaap
+ namespace: "{{ .Values.nsPrefix }}-dcae"
+spec:
+ selector:
+ matchLabels:
+ app: dmaap
+ template:
+ metadata:
+ labels:
+ app: dmaap
+ name: dmaap
+ annotations:
+ pod.beta.kubernetes.io/init-containers: '[
+ {
+ "args": [
+ "--container-name",
+ "kafka",
+ "--container-name",
+ "zookeeper"
+ ],
+ "command": [
+ "/root/ready.py"
+ ],
+ "env": [
+ {
+ "name": "NAMESPACE",
+ "valueFrom": {
+ "fieldRef": {
+ "apiVersion": "v1",
+ "fieldPath": "metadata.namespace"
+ }
+ }
+ }
+ ],
+ "image": "{{ .Values.image.readiness }}",
+ "imagePullPolicy": "{{ .Values.pullPolicy }}",
+ "name": "dmaap-readiness"
+ }
+ ]'
+ spec:
+ containers:
+ - image: {{ .Values.image.dmaap }}
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ name: dmaap
+ ports:
+ - containerPort: 3904
+ - containerPort: 3905
+ readinessProbe:
+ tcpSocket:
+ port: 3904
+ initialDelaySeconds: 5
+ periodSeconds: 10
+ volumeMounts:
+ - mountPath: /appl/dmaapMR1/bundleconfig/etc/appprops/MsgRtrApi.properties
+ name: appprops
+ - mountPath: /appl/dmaapMR1/etc/cadi.properties
+ name: cadi
+ - mountPath: /appl/dmaapMR1/etc/keyfile
+ name: mykey
+ restartPolicy: Always
+ volumes:
+ - name: appprops
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/message-router/dmaap/MsgRtrApi.properties
+ - name: cadi
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/message-router/dmaap/cadi.properties
+ - name: mykey
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/message-router/dmaap/mykey
+ imagePullSecrets:
+ - name: "{{ .Values.nsPrefix }}-docker-registry-key"
diff --git a/kubernetes/dcae/templates/dcae-kafka.yaml b/kubernetes/dcae/templates/dcae-kafka.yaml
new file mode 100644
index 0000000000..9a092264f9
--- /dev/null
+++ b/kubernetes/dcae/templates/dcae-kafka.yaml
@@ -0,0 +1,83 @@
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: kafka
+ namespace: "{{ .Values.nsPrefix }}-dcae"
+spec:
+ selector:
+ matchLabels:
+ app: kafka
+ template:
+ metadata:
+ labels:
+ app: kafka
+ name: kafka
+ annotations:
+ pod.beta.kubernetes.io/init-containers: '[
+ {
+ "args": [
+ "--container-name",
+ "zookeeper"
+ ],
+ "command": [
+ "/root/ready.py"
+ ],
+ "env": [
+ {
+ "name": "NAMESPACE",
+ "valueFrom": {
+ "fieldRef": {
+ "apiVersion": "v1",
+ "fieldPath": "metadata.namespace"
+ }
+ }
+ }
+ ],
+ "image": "{{ .Values.image.readiness }}",
+ "imagePullPolicy": "{{ .Values.pullPolicy }}",
+ "name": "kafka-readiness"
+ }
+ ]'
+ spec:
+ containers:
+ - image: {{ .Values.image.kafka }}
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ name: kafka
+ ports:
+ - containerPort: 9092
+ readinessProbe:
+ tcpSocket:
+ port: 9092
+ initialDelaySeconds: 5
+ periodSeconds: 10
+ env:
+ - name: KAFKA_ZOOKEEPER_CONNECT
+ value: "zookeeper.{{ .Values.nsPrefix }}-dcae:2181"
+ - name: KAFKA_ADVERTISED_HOST_NAME
+ value: "kafka"
+ - name: KAFKA_BROKER_ID
+ value: "1"
+ - name: KAFKA_ADVERTISED_PORT
+ value: "9092"
+ - name: KAFKA_PORT
+ value: "9092"
+ volumeMounts:
+ - mountPath: /var/run/docker.sock
+ name: docker-socket
+ - mountPath: /kafka
+ name: kafka-data
+ - mountPath: /start-kafka.sh
+ name: start-kafka
+ restartPolicy: Always
+ volumes:
+ - name: docker-socket
+ hostPath:
+ path: /var/run/docker.sock
+ - name: kafka-data
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/
+ - name: start-kafka
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/message-router/dcae-startup-vm-message-router/docker_files/start-kafka.sh
+ imagePullSecrets:
+ - name: "{{ .Values.nsPrefix }}-docker-registry-key"
diff --git a/kubernetes/dcae/templates/dcae-zookeeper.yaml b/kubernetes/dcae/templates/dcae-zookeeper.yaml
new file mode 100644
index 0000000000..8d03c9d985
--- /dev/null
+++ b/kubernetes/dcae/templates/dcae-zookeeper.yaml
@@ -0,0 +1,31 @@
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: zookeeper
+ namespace: "{{ .Values.nsPrefix }}-dcae"
+spec:
+ selector:
+ matchLabels:
+ app: zookeeper
+ template:
+ metadata:
+ labels:
+ app: zookeeper
+ name: zookeeper
+ spec:
+ containers:
+ - image: {{ .Values.image.zookeeper }}
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ name: zookeeper
+ ports:
+ - containerPort: 2181
+ volumeMounts:
+ - mountPath: /opt/zookeeper-3.4.9/data
+ name: zookeeper-data
+ restartPolicy: Always
+ volumes:
+ - name: zookeeper-data
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper
+ imagePullSecrets:
+ - name: "{{ .Values.nsPrefix }}-docker-registry-key"
diff --git a/kubernetes/dcae/templates/pgaas.yaml b/kubernetes/dcae/templates/pgaas.yaml
new file mode 100644
index 0000000000..de62be501a
--- /dev/null
+++ b/kubernetes/dcae/templates/pgaas.yaml
@@ -0,0 +1,47 @@
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ annotations:
+ deployment.kubernetes.io/revision: "1"
+ labels:
+ app: dcae-pgaas
+ name: dcae-pgaas
+ namespace: "{{ .Values.nsPrefix }}-dcae"
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app: dcae-pgaas
+ template:
+ metadata:
+ labels:
+ app: dcae-pgaas
+ spec:
+ hostname: zldciad4vipstg00
+ containers:
+ - image: {{ .Values.image.pgaas }}
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ command: ["/bin/bash"]
+ args: ["-c", "/usr/local/bin/entrypoint.sh; sleep infinity;"]
+ name: dcae-pgaas
+ ports:
+ - containerPort: 5432
+ volumeMounts:
+ - mountPath: /dbroot/pgdata
+ name: dcae-pgaas-pgdata
+ - mountPath: /dbroot/pglogs
+ name: dcae-pgaas-pglogs
+ - mountPath: /opt/tools
+ name: dcae-pgaas-tools
+ volumes:
+ - name: dcae-pgaas-pgdata
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/pgaas/pgdata
+ - name: dcae-pgaas-pglogs
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/pgaas/pglogs
+ - name: dcae-pgaas-tools
+ hostPath:
+ path: /dockerdata-nfs/{{ .Values.nsPrefix }}/dcae/pgaas/tools
+ imagePullSecrets:
+ - name: "{{ .Values.nsPrefix }}-docker-registry-key"
diff --git a/kubernetes/dcae/values.yaml b/kubernetes/dcae/values.yaml
new file mode 100644
index 0000000000..ae41f83248
--- /dev/null
+++ b/kubernetes/dcae/values.yaml
@@ -0,0 +1,14 @@
+nsPrefix: onap
+pullPolicy: Always
+nodePortPrefix: 302
+image:
+ readiness: oomk8s/readiness-check:1.0.0
+ pgaas: oomk8s/pgaas:1
+ cdapfs: oomk8s/cdap-fs:1.0.0
+ cdap: oomk8s/cdap:1.0.7
+ dmaap: attos/dmaap:latest
+ kafka: wurstmeister/kafka:latest
+ zookeeper: wurstmeister/zookeeper:latest
+ dmaapbc: nexus3.onap.org:10001/openecomp/dcae-dmaapbc:1.1-STAGING-latest
+ commonevent: nexus3.onap.org:10001/openecomp/dcae-collector-common-event:1.1-STAGING-latest
+ controller: nexus3.onap.org:10001/openecomp/dcae-controller:1.1-STAGING-latest
diff --git a/kubernetes/oneclick/dcae.sh b/kubernetes/oneclick/dcae.sh
index 8a95e0bfff..5dd1a2f071 100755
--- a/kubernetes/oneclick/dcae.sh
+++ b/kubernetes/oneclick/dcae.sh
@@ -1,2 +1,18 @@
#!/bin/bash
-echo "DCAE under construction"
+# manual deployment order is mentioned - but we need to specify dependencies in the service
+KUBECTL_CMD="kubectl --namespace $1-$2 $3 -f ../$2"
+
+printf "dcae....\n"
+$KUBECTL_CMD/message-router/dcae-zookeeper.yaml
+$KUBECTL_CMD/message-router/dcae-kafka.yaml
+$KUBECTL_CMD/message-router/dcae-dmaap.yaml
+
+$KUBECTL_CMD/pgaas/pgaas.yaml
+
+$KUBECTL_CMD/dcae-collector-common-event.yaml
+$KUBECTL_CMD/dcae-collector-dmaapbc.yaml
+$KUBECTL_CMD/dcae-collector-pvs.yaml
+
+$KUBECTL_CMD/cdap/cdap0-dep.yaml
+$KUBECTL_CMD/cdap/cdap1-dep.yaml
+$KUBECTL_CMD/cdap/cdap2-dep.yaml
diff --git a/kubernetes/oneclick/setenv.bash b/kubernetes/oneclick/setenv.bash
index 8fd8cd4d3c..4b0d9403ca 100644
--- a/kubernetes/oneclick/setenv.bash
+++ b/kubernetes/oneclick/setenv.bash
@@ -1,6 +1,6 @@
#!/bin/bash
-HELM_APPS=('mso' 'message-router' 'sdnc' 'vid' 'robot' 'portal' 'policy' 'appc' 'aai' 'sdc')
+HELM_APPS=('mso' 'message-router' 'sdnc' 'vid' 'robot' 'portal' 'policy' 'appc' 'aai' 'sdc' 'dcae')
ONAP_DOCKER_REGISTRY=${ONAP_DOCKER_REGISTRY:-nexus3.onap.org:10001}
ONAP_DOCKER_USER=${ONAP_DOCKER_USER:-docker}
ONAP_DOCKER_PASS=${ONAP_DOCKER_PASS:-docker}