Deploying Black Duck in Pivotal Container Services (VMware Tanzu)

Table of Contents


Overview

This document describes how to install Black Duck in Pivotal Container Services (PKS). PKS provides an enterprise-grade Kubernetes (K8s) environment in which to deploy clusters.

Note: Pivotal currently disables IPv6 in PKS. To successfully run Black Duck in clusters with IPv6 disabled, some configuration items must be configured for Black Duck to bind only to the IPv4 protocol. These configuration items are described below, and are required for PKS.

Prerequisites

Refer to the Pivotal documentation (or speak with your Pivotal support representative) to set up PKS. To ensure there are enough resources for the provisioning of Black Duck, refer to the hardware requirements section in the Black Duck Installation Guide for Kubernetes guide when creating the cluster for the Black Duck server.

Deploying Black Duck

When your Pivotal cluster is set up and sized appropriately, follow the instructions in the Black Duck Installation Guide for Kubernetes to install Black Duck.

Important note: At the time of this writing, IPv6 is not supported by PKS. In order for Black Duck to function properly in this environment, click here to follow the specific instructions to disable IPv6 (search for Disabling IPv6).

Post-Installation Steps

If the variable replacement and initial command to deploy Black Duck was successful, the following command yields the specific output for your Black Duck namespace:

$ kubectl get blackducks

NAME       AGE

hub-test   13s

After some time has elapsed, you should see all the pods started and stable.

$ kubectl get pods -n $BLACKDUCK_NAMESPACE

NAME                       READY     STATUS    RESTARTS   AGE

cfssl-wwjzg                1/1       Running   0          2m

documentation-nph9l        1/1       Running   0          2m

hub-authentication-8mhh7   1/1       Running   0          2m

hub-scan-lsfzz             1/1       Running   0          2m

jobrunner-2gh84            1/1       Running   0          2m

postgres-9629d             1/1       Running   0          3m

registration-jvfj9         1/1       Running   0          2m

solr-9wmcn                 1/1       Running   0          2m

webapp-logstash-vlkd4      2/2       Running   0          2m

webserver-pw5hs            1/1       Running   0          2m

zookeeper-scsj9            1/1       Running   0          2m

The IP address to connect to the Black Duck instance is listed as an external IP address.

$ kubectl -n $BLACKDUCK_NAMESPACE get services

NAME             TYPE           CLUSTER-IP       EXTERNAL-IP      PORT(S)         AGE

authentication   ClusterIP      10.100.200.198   <none>           8443/TCP        1h

cfssl            ClusterIP      10.100.200.19    <none>           8888/TCP        1h

documentation    ClusterIP      10.100.200.61    <none>           8443/TCP        1h

logstash         ClusterIP      10.100.200.168   <none>           5044/TCP        1h

postgres         ClusterIP      10.100.200.25    <none>           5432/TCP        1h

registration     ClusterIP      10.100.200.71    <none>           8443/TCP        1h

scan             ClusterIP      10.100.200.112   <none>           8443/TCP        1h

solr             ClusterIP      10.100.200.177   <none>           8983/TCP        1h

webapp           ClusterIP      10.100.200.138   <none>           8443/TCP        1h

webserver        ClusterIP      10.100.200.58    <none>           443/TCP         1h

webserver-lb     LoadBalancer   10.100.200.136   35.192.157.248   443:30607/TCP   1h

webserver-np     NodePort       10.100.200.197   <none>           443:31458/TCP   1h

zookeeper        ClusterIP      10.100.200.20    <none>           2181/TCP        1h