NSX Application Platform Part 4: Deploying the Application Platform

Completing the NSX Application Platform (NAPP) Deployment

You can download the the latest bundle from here.

The OVF will be deployed to the designated cluster.

Generating a kubeconfig File

8. If everything was configured correctly, your deployment should succeed.

  1. Log into the jumpbox, if you missed the configuration of the jumpbox, you can find it here.
  2. Issue the command below to log into the guest Tanzu Guest cluster created in part 3.
2. Once all checks pass, you will be able to activate the feature. I have seen this process take up to 30 minutes, the timeframe will vary depending on your environment.

kubectl vsphere login --server 172.51.0.2 -u [email protected] --tanzu-kubernetes-cluster-name impactorlab --tanzu-kubernetes-cluster-namespace impactor --insecure-skip-tls-verify

You should still be logged into the Tanzu cluster on your jumpbox from earlier, if not issue the command below.

kubectl create serviceaccount napp-admin -n kube-system
kubectl create clusterrolebinding napp-admin --serviceaccount=kube-system:napp-admin --clusterrole=cluster-admin

NSX Application Platform Part 2: Harbor Image Registry

root@jump:~# kubectl describe pod <podName> -n projectcontour ### or any namespace you are troubleshooting.
The image below displays all the VIPs that were created during the deployment of NAPP.

Deploy NSX Application Platform

You should now be logged in and see a prompt similar to image below.

  1. Once logged in, navigate to System -> NSX Application Platform. Refer to the image below.
deploy nsx application platform

I have recently put together a video that provides clear guidance on deploying NAPP, it can be seen here.

root@jump:~# kubectl get events -n nsxi-platform --sort-by='.lastTimestamp' -w

Platform Deployment Error

3. On the next screen you are taken to the “Prepare to Deploy” page. This is where you enter your Harbor repository details.

We can now check to see if the service fqdn and IP were assigned correctly. Issue the command below.

SECRET=$(kubectl get serviceaccount napp-admin -n kube-system -ojsonpath='{.secrets[].name}')
TOKEN=$(kubectl get secret $SECRET -n kube-system -ojsonpath='{.data.token}' | base64 -d)
kubectl get secrets $SECRET -n kube-system -o jsonpath='{.data.ca.crt}' | base64 -d > ./ca.crt

nsx application platform create token

4. Click on “Go to NSX Intelligence”, doing so will redirect you to the “Plan & Troubleshoot” page.

deploy nsx application platform docker

Note: I will not walk through configuration of NDR in this article.

root@jump:~# kubectl get pods -n nsxi-platform
NAME READY STATUS RESTARTS AGE
cloud-connector-register-q5ssm 0/2 Completed 0 11m
cloud-connector-proxy-84fd8f998d-h6ng6 2/2 Running 0 10m
cloud-connector-check-license-status-7d8c8c9c7b-sxph8 2/2 Running 0 10m
cloud-connector-update-license-status-7bbbc7cf7d-wlh4r 2/2 Running 0 10m
nsx-ndr-setup-kafka-qmtp7 0/1 Completed 0 10m
nsx-ndr-enable-ids-zcq8z 0/1 Completed 0 9m36s
nsx-ndr-upload-config-9f968f76c-2nb2c 2/2 Running 0 9m29s
nsx-ndr-worker-monitored-host-uploader-5858b5c97c-qhrc8 2/2 Running 0 9m29s
nsx-ndr-feature-switch-watcher-notifier-ndr-7d48fb9bd-v4ffj 1/1 Running 0 9m29s
nsx-ndr-worker-monitored-host-processor-77cfc98b7c-8mwjs 2/2 Running 0 9m29s
nsx-ndr-worker-file-event-uploader-d5589d79d-qkxnh 2/2 Running 0 9m29s
nsx-ndr-worker-ids-event-processor-6c667bc695-zthcv 2/2 Running 0 9m29s
nsx-ndr-worker-ndr-event-processor-586d468ddd-bm4jf 2/2 Running 0 9m29s
nsx-ndr-worker-file-event-processor-848c8c48cb-6fxct 2/2 Running 1 9m29s
nsx-ndr-worker-nta-event-processor-5647bc47fc-7x9v5 2/2 Running 0 9m28s
nsx-ndr-worker-ndr-event-uploader-c7ddb468b-gv54g 2/2 Running 0 9m28s
processing-pod-cleaner-1641516600-78jqs 0/1 Completed 0 5m5s
druid-rule-monitor-1641516600-kwt8m 0/1 Completed 0 5m5s
processing-pod-cleaner-1641516900-m6ssw 0/1 Completed 0 3s

2. The cloud region will already be configured, as the same one that was selected for NDR will be used for Malware prevention. Run the prechecks and make sure everything passes.

3. In “IDS/IPS & Malware Prevention Setup” I have left everything enabled, feel free to chose the features you want enabled. Click Next, when you are ready.

deploy nsx application platform token

This section demonstrates the process to enable distributed malware prevention, for this, each hypervisor in the cluster will require the NSX Malware Prevention Service Virtual Machine (SVM). The OVA can be downloaded here.

deploy nsx application platform kube tools

This section will highlight the process to get NSX Intelligence activated.

From the image below, I can see that contour has successfully deployed.

deploy nsx application platform upload latest tools

After applying the license, you will see all tiles enabled.

deploy nsx application platform advanced deployment

This section will highlight the process to activate “NSX Network Detection and Response”.

You must have a license that is fit for purpose, if you do not have an adequate license, you cannot enable the NAPP features. You will see the message below if you do not have an appropriate license.

deploy nsx application platform prechecks complete

This completes the deployment of NSX Malware Prevention.

The node was low on resource: ephemeral-storage
Disk Pressure

curl --location --request POST 'https://impactor.shank.com/napp/api/v1/malware-prevention/svm-spec/'
--header 'Authorization: Basic YWRtaW46UEBzc3cwcmQxMjMh'
--header 'Content-Type: application/json'
--header 'Cookie: JSESSIONID=C24BD6B0380738197DBD57F0F018C9D9'
--data-raw '{
"ovf_url" : "http://192.168.63.113/nsx/nsx-svm-appliance-3.2.0.0.0.19058371.ovf",
"deployment_spec_name" : "Dist_Malware",
"svm_version" : "3.2"
}'