diff options
Diffstat (limited to 'docs/sections/installation_pnda.rst')
-rw-r--r-- | docs/sections/installation_pnda.rst | 185 |
1 files changed, 185 insertions, 0 deletions
diff --git a/docs/sections/installation_pnda.rst b/docs/sections/installation_pnda.rst new file mode 100644 index 00000000..d1c0a383 --- /dev/null +++ b/docs/sections/installation_pnda.rst @@ -0,0 +1,185 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 + +Installing PNDA During Helm Chart Based DCAE Deployment +======================================================= + +PNDA is integrated into ONAP as a component system of DCAE. It is possible to deploy PNDA as +part of an ONAP OOM deployment on Openstack infrastructure. This is achieved by using a +pnda-bootstrap container in kubernetes to deploy Openstack VMs and then install a PNDA cluster +onto those VMs. + +Requirements +------------ + +PNDA deployment within ONAP requires the following: + +* Openstack based infrastructure. Follow the `PNDA guide <http://pnda.io/pnda-guide/provisioning/openstack/PREPARE.html>`_ + for more information. +* OOM / Helm template based installation of ONAP on Kubernetes. +* Kubernetes and PNDA need to share the same Openstack network subnet. + +The dcae-pnda-bootstrap Helm chart currently deploys a PNDA cluster with the following resource +requirements: + ++--------------------+--------------------+--------------------+--------------------+ +|Node | CPU | RAM GB | Disk GB | ++====================+====================+====================+====================+ +|Gateway | 2 | 4 | 20 | ++--------------------+--------------------+--------------------+--------------------+ +|Edge | 8 | 32 | 50 | ++--------------------+--------------------+--------------------+--------------------+ +|Hadoop Manager | 4 | 16 | 50 | ++--------------------+--------------------+--------------------+--------------------+ +|Hadoop Data x 2 | 4 | 8 | 20 + 45 | ++--------------------+--------------------+--------------------+--------------------+ +|Kafka | 2 | 8 | 50 | ++--------------------+--------------------+--------------------+--------------------+ + +There are several parameters that need to be defined with values from your environment for a +successful PNDA deployment within ONAP. These parameters can be grouped in separate files that +are passed as parameters to helm install. With the following files, the command to install ONAP +with PNDA would then look like this: + +:: + + helm install -f ~/pnda.yaml -f ~/pnda-openstack.yaml -f ~/pnda-pem.yaml local/onap -n dev --namespace onap + + + +``pnda.yaml`` +------------- + +This file contains settings to enable PNDA install and the evironment settings required by PNDA. + +:: + + pnda: + dcae-pnda-bootstrap: + enabled: true + pnda: + osUser: {guest-os-username} # e.g. centos + nameserver: nn.nn.nn.nn # IP address of a reachable nameserver + ntp: nn.nn.nn.nn # IP address of a reachable NTP server + apps: + fsType: local + networkCidr: 192.168.0.0/24 + outboundCidr: 0.0.0.0/0 + +Description +~~~~~~~~~~~ + ++-----------------------------------------+----------+--------------------------------------------------------+ +|pnda.dcae-pnda-bootstrap.enabled |boolean |Deploy PNDA or not. | ++-----------------------------------------+----------+--------------------------------------------------------+ +|pnda.dcae-pnda-bootstrap.pnda.osUser |string |Login used during PNDA installation process to connect | +| | |to newly created Openstack PNDA instances. | ++-----------------------------------------+----------+--------------------------------------------------------+ +|pnda.dcae-pnda-bootstrap.pnda.nameserver |string |IP address of the nameserver that will be used by all | +| | |Openstack PNDA instances. | ++-----------------------------------------+----------+--------------------------------------------------------+ +|pnda.dcae-pnda-bootstrap.pnda.ntp |string |Hostname or IP address of a NTP server. This NTP server | +| | |MUST be reachable from the Openstack PNDA instances. | ++-----------------------------------------+----------+--------------------------------------------------------+ +|pnda.dcae-pnda-bootstrap.pnda.apps.fsType|string |Type of storage used to store PNDA application packages | +| | |(s3, sshfs, local, swift). Set it to local. | ++-----------------------------------------+----------+--------------------------------------------------------+ +|pnda.dcae-pnda-bootstrap.pnda.networkCidr|string |CIDR specifying the address range for the network | +| | |containing all PNDA instances. | ++-----------------------------------------+----------+--------------------------------------------------------+ +|pnda.dcae-pnda-bootstrap.pnda.dataNodes |number |Number of data nodes to deploy. Defaults to 2. | ++-----------------------------------------+----------+--------------------------------------------------------+ +|pnda.dcae-pnda-bootstrap.pnda.kafkaNodes |number |Number of kafka nodes to deploy. Defaults to 1. | ++-----------------------------------------+----------+--------------------------------------------------------+ + + +``pnda-openstack.yaml`` +----------------------- + +This file contains the Openstack connection settings and Openstack entity identifiers. + +:: + + pnda: + dcae-pnda-bootstrap: + openstack: + keystoneUser: {openstack-username} + keystonePassword: {openstack-password} + keystoneTenant: {openstack-tenant-name} + keystoneAuthUrl: {openstack-auth-url} # e.g. http://openstack-host:5000/v2.0/ + keystoneRegion: {openstack-region-name} + useExistingNetwork: true + existingNetworkId: {kubernetes-cluster-network} + existingSubnetId: {kubernetes-cluster-subnet} + imageId: {pnda-vm-image-id} # Openstack imageId to use for PNDA VMs + publicNetworkId: {public-network-id} # Openstack networkId of public facing network + publicSubnetCidr: nn.nn.nn.nn/nn # CIDR address of the public subnet e.g. 10.40.10.0/24 + +Description +~~~~~~~~~~~ + ++-----------------------------------------------------+----------+-----------------------------------------------+ +|pnda.dcae-pnda-bootstrap.openstack.keystoneUser |string |Openstack user. | ++-----------------------------------------------------+----------+-----------------------------------------------+ +|pnda.dcae-pnda-bootstrap.openstack.keystonePassword |string |Openstack password. | ++-----------------------------------------------------+----------+-----------------------------------------------+ +|pnda.dcae-pnda-bootstrap.openstack.keystoneTenant |string |Openstack tenant. | ++-----------------------------------------------------+----------+-----------------------------------------------+ +|pnda.dcae-pnda-bootstrap.openstack.keystoneAuthUrl |string |Openstack authentication url. | ++-----------------------------------------------------+----------+-----------------------------------------------+ +|pnda.dcae-pnda-bootstrap.openstack.keystoneRegion |string |Openstack region. | ++-----------------------------------------------------+----------+-----------------------------------------------+ +|pnda.dcae-pnda-bootstrap.openstack.useExistingNetwork|boolean |Do you want to create a new Openstack network | +| | |or do you want to use an already existing one? | ++-----------------------------------------------------+----------+-----------------------------------------------+ +|pnda.dcae-pnda-bootstrap.openstack.existingNetworkId |string |If you want to use an already existing | +| | |Openstack network, specify its UUID. | ++-----------------------------------------------------+----------+-----------------------------------------------+ +|pnda.dcae-pnda-bootstrap.openstack.existingSubnetId |string |If you want to use an already existing | +| | |Openstack network, specify the UUID of the | +| | |Openstack subnet to use. | ++-----------------------------------------------------+----------+-----------------------------------------------+ +|pnda.dcae-pnda-bootstrap.openstack.imageId |string |Base image to use for the created Openstack | +| | |PNDA instances. | ++-----------------------------------------------------+----------+-----------------------------------------------+ +|pnda.dcae-pnda-bootstrap.openstack.publicNetworkId |string |UUID of the public network in openstack to use.| ++-----------------------------------------------------+----------+-----------------------------------------------+ +|pnda.dcae-pnda-bootstrap.openstack.publicSubnetCidr |string |CIDR specifying the address range for the | +| | |public subnet. | ++-----------------------------------------------------+----------+-----------------------------------------------+ + + +``pnda-pem.yaml`` +----------------- + +This file contains the private secret and Openstack keypair name to use for the guest VMs in Openstack. + +:: + + pnda: + dcae-pnda-bootstrap: + pnda_keypair_name: {keypair-name} # Name of the keypair you have created in Openstack, e.g. pnda-key + pnda_secret: | + -----BEGIN DSA PRIVATE KEY----- + MIIBugIBAAKBgQCLLCmDJdxCxOOmaSGoH0WUyoiGUJiE0JnzEEhXd4SZWmoxo7yn + 9d3iA9z2OiOnbQ4s5tAOWknpFEnIwtFb+L2x3Fzv7yEdHBk0tgC8c91sIxb72SVp + RgJDaseL2C5RRdWqDiKlXnA1iY7H5z/k/bZD61/4eGdAojVxroQX2H6uLQIVAIrG + WVGBudBQmfwKzyP5eO1nevNFAoGAALSGjzP0/yVnEKZ8JO8Vw/eC1YDmTG1IwBdN + Rm8fXqyUjd03ijpmOoPISPM6Jt0TrJTvGNVfqSI1mKVznJ+5B7y5M9qvjzHQW5hL + GkXHL57mN2QkaJE/m4ilKr/p5RzTBk6c/zhvxg/8DEne6klQ3NQhapzY4cL9aLK6 + hrR4T94CgYAhGFZI5buQUk8MtG9nac9hEQuYw+lrdjy+y1F8XIjq8+ZLAdCY5gw/ + ph+4di/R8MyesqG5AtqUqXQY3tibya3YrqyNZ5mTz6kMN1lT26QHwYMBF1IymMWV + lq5wzjpctVovYchCLagrh7KepetNigni0Vrjc0TLPbvXQkoLG5JifgIURmDpblYA + HSNN6un6nlCoGnm07SA= + -----END DSA PRIVATE KEY----- + +Description +~~~~~~~~~~~ + ++------------------------------------------+----------+-------------------------------------------------------+ +|pnda.dcae-pnda-bootstrap.pnda_keypair_name|string |Name of the keypair to use to spawn the Openstack PNDA | +| | |instances.Note that the private key above is a | +| | |generated sample that is unusable. | ++------------------------------------------+----------+-------------------------------------------------------+ +|pnda.dcae-pnda-bootstrap.pnda_secret |string |Secret key of the pnda_keypair_name keypair. | ++------------------------------------------+----------+-------------------------------------------------------+ |