Table of Contents
In this article, we will see the steps to install Black Duck Using Synopsysctl on Kubernetes Cluster. When it comes to managing security and code risks in your applications and containers then there is no better solution than using Black duck for comprehensively scanning and managing all vulnerabilities. Black duck is a complete open source management solution which can be used to set and enforce open source policies and integrate open source management solution into your DevOps environment. It can easily map components to known vulnerabilities, and identify license and component quality risks.
It is an ideal solution to be used in Kubernetes and Red Hat OpenShift cluster environments. In general black duck can be installed by multiple ways but it is generally preferred to install Black duck using synopsysctl utility in kubernetes cluster environment. Here we will see the steps to install in detail with a real world example.
Features and Usage
- Scans and identifies open source software throughout your code base.
- Maps vulnerabilities to your open source software.
- Triages vulnerability results and tracks remediation.
- Monitors for newly disclosed vulnerabilities in your open source code.
- Finds and fixes open source vulnerabilities in applications and containers.
How to Install Black Duck using Synopsysctl on Kubernetes Cluster
Also Read: How to Install Synopsysctl on Linux Using 5 Easy Steps
Step 1: Prerequisites
a) You should have a working Kubernetes Cluster.
b) You should have sudo
or root
access to run privileged commands.
c) You should have kubectl
utility available in your Server.
d) You should have openssl
and synopsysctl
utility available in your Server.
e) You should have PostgreSQL
running as a container in your Cluster.
Step 2: Create Black Duck Namespace
First we will create a separate namespace called blduckns
in kubernetes cluster by using kubectl
utility as shown below.
cyberithub@ubuntu:~$ kubectl create namespace blduckns namespace/blduckns created
Step 3: Setting Variables
You have to mandatorily set certain variables that we are going to use for black duck deployment in kubernetes cluster. First you have to set a 32 character key called seal key
(which will be used for encryption of master key) using SEAL_KEY
variable as shown below.
cyberithub@ubuntu:~$ SEAL_KEY=01234567890123456789012345678901
Then set postgresql black duck password using ADMIN_PASSWORD
variable as shown below.
cyberithub@ubuntu:~$ ADMIN_PASSWORD=admin123
Next, set postgresql black duck user password using USER_PASSWORD
variable just like below.
cyberithub@ubuntu:~$ USER_PASSWORD=cyberithub123
Finally, set black duck namespace using NS
variable just like below.
cyberithub@ubuntu:~$ NS=blduckns
Step 4: Create a Certificate
You should also have to generate a TLS Black Duck Nginx certificate. This can be done by using openssl utility. For example, here we are generating a TLS certificate for demo.cyberithub.com
domain using openssl req -x509 -sha256 -days 356 -nodes -newkey rsa:2048 -subj "/CN=demo.cyberithub.com/C=US/L=San Fransisco" -keyout tls.key -out tls.crt
command as shown below.
You can change different options used with openssl utility to generate certificate according to your own requirements. To know more about generating certificate using openssl, you can check How to Create a Self Signed Certificate using Openssl Commands on Linux (RedHat/CentOS 7/8) article.
cyberithub@ubuntu:~$ openssl req -x509 -sha256 -days 356 -nodes -newkey rsa:2048 -subj "/CN=demo.cyberithub.com/C=US/L=San Fransisco" -keyout tls.key -out tls.crt
Generating a 2048 bit RSA private key
...................+++
.............................+++
writing new private key to 'tls.key'
-----
Step 5: Install Black Duck Using Synopsysctl
Once you have all the prerequisites in place, you can install black duck in your kubernetes cluster blduckns
namespace by using below synopsysctl
command. Check more about synopsysctl usage on official website.
cyberithub@ubuntu:~$ synopsysctl create blackduck $NS --namespace $NS --expose-ui loadbalancer --admin-password $ADMIN_PASSWORD --user-password $USER_PASSWORD --seal-key $SEAL_KEY --certificate-file-path tls.crt --certificate-key-file-path tls.key --verbose-level trace --size small DEBU[0000] rest config: &rest.Config{Host:"https://192.168.0.8:6443", APIPath:"", ContentConfig:rest.ContentConfig{AcceptContentTypes:"", ContentType:"", GroupVersion:(*schema.GroupVersion)(nil), NegotiatedSerializer:runtime.NegotiatedSerializer(nil)}, Username:"", Password:"", BearerToken:"", BearerTokenFile:"", Impersonate:rest.ImpersonationConfig{UserName:"", UID:"", Groups:[]string(nil), Extra:map[string][]string(nil)}, AuthProvider:<nil>, AuthConfigPersister:rest.AuthProviderConfigPersister(nil), ExecProvider:<nil>, TLSClientConfig:rest.sanitizedTLSClientConfig{Insecure:false, ServerName:"", CertFile:"", KeyFile:"", CAFile:"", CertData:[]uint8{0x2d, 0x2d, 0x2d, 0x20, 0x54, 0x52, 0x55, 0x4e, 0x43, 0x41, 0x54, 0x45, 0x44, 0x20, 0x2d, 0x2d, 0x2d}, KeyData:[]uint8{0x2d, 0x2d, 0x2d, 0x20, 0x52, 0x45, 0x44, 0x41, 0x43, 0x54, 0x45, 0x44, 0x20, 0x2d, 0x2d, 0x2d}, CAData:[]uint8{0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0x42, 0x45, 0x47, 0x49, 0x4e, 0x20, 0x43, 0x45, 0x52, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x45, 0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0xa, 0x4d, 0x49, 0x49, 0x43, 0x2f, 0x6a, 0x43, 0x43, 0x41, 0x65, 0x61, 0x67, 0x41, 0x77, 0x49, 0x42, 0x41, 0x67, 0x49, 0x42, 0x41, 0x44, 0x41, 0x4e, 0x42, 0x67, 0x6b, 0x71, 0x68, 0x6b, 0x69, 0x47, 0x39, 0x77, 0x30, 0x42, 0x41, 0x51, 0x73, 0x46, 0x41, 0x44, 0x41, 0x56, 0x4d, 0x52, 0x4d, 0x77, 0x45, 0x51, 0x59, 0x44, 0x56, 0x51, 0x51, 0x44, 0x45, 0x77, 0x70, 0x72, 0x64, 0x57, 0x4a, 0x6c, 0xa, 0x63, 0x6d, 0x35, 0x6c, 0x64, 0x47, 0x56, 0x7a, 0x4d, 0x42, 0x34, 0x58, 0x44, 0x54, 0x49, 0x7a, 0x4d, 0x44, 0x6b, 0x77, 0x4d, 0x54, 0x45, 0x32, 0x4d, 0x6a, 0x49, 0x7a, 0x4e, 0x31, 0x6f, 0x58, 0x44, 0x54, 0x4d, 0x7a, 0x4d, 0x44, 0x67, 0x79, 0x4f, 0x54, 0x45, 0x32, 0x4d, 0x6a, 0x49, 0x7a, 0x4e, 0x31, 0x6f, 0x77, 0x46, 0x54, 0x45, 0x54, 0x4d, 0x42, 0x45, 0x47, 0x41, 0x31, 0x55, 0x45, 0xa, 0x41, 0x78, 0x4d, 0x4b, 0x61, 0x33, 0x56, 0x69, 0x5a, 0x58, 0x4a, 0x75, 0x5a, 0x58, 0x52, 0x6c, 0x63, 0x7a, 0x43, 0x43, 0x41, 0x53, 0x49, 0x77, 0x44, 0x51, 0x59, 0x4a, 0x4b, 0x6f, 0x5a, 0x49, 0x68, 0x76, 0x63, 0x4e, 0x41, 0x51, 0x45, 0x42, 0x42, 0x51, 0x41, 0x44, 0x67, 0x67, 0x45, 0x50, 0x41, 0x44, 0x43, 0x43, 0x41, 0x51, 0x6f, 0x43, 0x67, 0x67, 0x45, 0x42, 0x41, 0x4d, 0x48, 0x30, 0xa, 0x30, 0x55, 0x2b, 0x74, 0x75, 0x78, 0x6f, 0x54, 0x66, 0x73, 0x79, 0x2f, 0x53, 0x78, 0x50, 0x4b, 0x32, 0x44, 0x45, 0x76, 0x7a, 0x54, 0x50, 0x49, 0x36, 0x4b, 0x32, 0x70, 0x68, 0x70, 0x48, 0x48, 0x34, 0x31, 0x30, 0x61, 0x74, 0x31, 0x46, 0x57, 0x4c, 0x51, 0x51, 0x42, 0x6b, 0x43, 0x45, 0x47, 0x47, 0x53, 0x6e, 0x47, 0x78, 0x53, 0x32, 0x55, 0x70, 0x56, 0x38, 0x72, 0x56, 0x35, 0x61, 0x47, 0xa, 0x50, 0x57, 0x79, 0x6a, 0x71, 0x41, 0x4a, 0x4b, 0x77, 0x2b, 0x35, 0x6e, 0x68, 0x36, 0x4d, 0x38, 0x56, 0x4f, 0x53, 0x65, 0x56, 0x53, 0x65, 0x57, 0x50, 0x72, 0x70, 0x32, 0x68, 0x34, 0x34, 0x46, 0x4d, 0x61, 0x78, 0x59, 0x71, 0x53, 0x54, 0x32, 0x6a, 0x79, 0x41, 0x2f, 0x36, 0x4a, 0x38, 0x32, 0x57, 0x72, 0x58, 0x6e, 0x58, 0x63, 0x50, 0x6a, 0x4d, 0x4e, 0x79, 0x54, 0x50, 0x54, 0x58, 0x41, 0xa, 0x7a, 0x38, 0x2f, 0x62, 0x32, 0x69, 0x37, 0x38, 0x72, 0x37, 0x37, 0x66, 0x51, 0x33, 0x76, 0x55, 0x44, 0x6e, 0x6d, 0x63, 0x53, 0x65, 0x4c, 0x69, 0x72, 0x53, 0x67, 0x6a, 0x67, 0x41, 0x73, 0x63, 0x6c, 0x75, 0x58, 0x4b, 0x2b, 0x48, 0x41, 0x68, 0x38, 0x4e, 0x58, 0x6e, 0x7a, 0x57, 0x37, 0x39, 0x50, 0x6e, 0x65, 0x31, 0x79, 0x76, 0x63, 0x36, 0x35, 0x7a, 0x62, 0x42, 0x4a, 0x65, 0x4c, 0x75, 0xa, 0x51, 0x75, 0x70, 0x39, 0x33, 0x49, 0x6e, 0x66, 0x44, 0x48, 0x54, 0x79, 0x44, 0x52, 0x72, 0x54, 0x44, 0x6f, 0x56, 0x42, 0x68, 0x7a, 0x46, 0x71, 0x6f, 0x33, 0x43, 0x37, 0x77, 0x76, 0x6f, 0x52, 0x58, 0x46, 0x30, 0x57, 0x4e, 0x77, 0x34, 0x78, 0x7a, 0x63, 0x4e, 0x46, 0x48, 0x77, 0x4f, 0x79, 0x76, 0x54, 0x74, 0x41, 0x6b, 0x6e, 0x67, 0x74, 0x51, 0x6c, 0x45, 0x52, 0x4c, 0x34, 0x48, 0x75, 0xa, 0x42, 0x61, 0x59, 0x77, 0x6d, 0x53, 0x70, 0x59, 0x48, 0x79, 0x55, 0x51, 0x4d, 0x61, 0x39, 0x6f, 0x71, 0x34, 0x39, 0x58, 0x47, 0x30, 0x47, 0x64, 0x37, 0x58, 0x67, 0x41, 0x68, 0x59, 0x6a, 0x68, 0x73, 0x6f, 0x57, 0x74, 0x34, 0x47, 0x44, 0x6e, 0x69, 0x5a, 0x7a, 0x34, 0x68, 0x53, 0x6a, 0x79, 0x68, 0x64, 0x4b, 0x2b, 0x71, 0x45, 0x31, 0x32, 0x73, 0x50, 0x76, 0x54, 0x70, 0x54, 0x61, 0x32, 0xa, 0x53, 0x53, 0x74, 0x77, 0x31, 0x61, 0x47, 0x34, 0x78, 0x4a, 0x6f, 0x68, 0x32, 0x50, 0x4d, 0x2f, 0x46, 0x36, 0x45, 0x43, 0x41, 0x77, 0x45, 0x41, 0x41, 0x61, 0x4e, 0x5a, 0x4d, 0x46, 0x63, 0x77, 0x44, 0x67, 0x59, 0x44, 0x56, 0x52, 0x30, 0x50, 0x41, 0x51, 0x48, 0x2f, 0x42, 0x41, 0x51, 0x44, 0x41, 0x67, 0x4b, 0x6b, 0x4d, 0x41, 0x38, 0x47, 0x41, 0x31, 0x55, 0x64, 0x45, 0x77, 0x45, 0x42, 0xa, 0x2f, 0x77, 0x51, 0x46, 0x4d, 0x41, 0x4d, 0x42, 0x41, 0x66, 0x38, 0x77, 0x48, 0x51, 0x59, 0x44, 0x56, 0x52, 0x30, 0x4f, 0x42, 0x42, 0x59, 0x45, 0x46, 0x49, 0x68, 0x51, 0x4b, 0x6c, 0x73, 0x67, 0x4e, 0x37, 0x6f, 0x6f, 0x73, 0x52, 0x59, 0x66, 0x6d, 0x46, 0x42, 0x65, 0x36, 0x4a, 0x69, 0x55, 0x76, 0x32, 0x4d, 0x69, 0x4d, 0x42, 0x55, 0x47, 0x41, 0x31, 0x55, 0x64, 0x45, 0x51, 0x51, 0x4f, 0xa, 0x4d, 0x41, 0x79, 0x43, 0x43, 0x6d, 0x74, 0x31, 0x59, 0x6d, 0x56, 0x79, 0x62, 0x6d, 0x56, 0x30, 0x5a, 0x58, 0x4d, 0x77, 0x44, 0x51, 0x59, 0x4a, 0x4b, 0x6f, 0x5a, 0x49, 0x68, 0x76, 0x63, 0x4e, 0x41, 0x51, 0x45, 0x4c, 0x42, 0x51, 0x41, 0x44, 0x67, 0x67, 0x45, 0x42, 0x41, 0x47, 0x57, 0x43, 0x4c, 0x45, 0x5a, 0x7a, 0x74, 0x71, 0x33, 0x61, 0x70, 0x36, 0x68, 0x43, 0x62, 0x31, 0x39, 0x39, 0xa, 0x57, 0x69, 0x61, 0x49, 0x6d, 0x46, 0x50, 0x6d, 0x7a, 0x42, 0x2f, 0x4a, 0x56, 0x4e, 0x54, 0x36, 0x71, 0x6e, 0x37, 0x6c, 0x66, 0x64, 0x67, 0x42, 0x57, 0x54, 0x2f, 0x68, 0x6d, 0x75, 0x44, 0x47, 0x66, 0x7a, 0x66, 0x49, 0x2b, 0x63, 0x37, 0x32, 0x63, 0x6d, 0x2f, 0x69, 0x39, 0x63, 0x5a, 0x39, 0x33, 0x4b, 0x45, 0x39, 0x5a, 0x4c, 0x51, 0x38, 0x44, 0x4b, 0x77, 0x36, 0x44, 0x4b, 0x34, 0x65, 0xa, 0x37, 0x30, 0x2b, 0x6f, 0x4a, 0x77, 0x37, 0x55, 0x35, 0x75, 0x41, 0x50, 0x38, 0x6d, 0x64, 0x78, 0x36, 0x4f, 0x6e, 0x7a, 0x31, 0x4c, 0x77, 0x4e, 0x44, 0x2b, 0x59, 0x6a, 0x55, 0x42, 0x65, 0x66, 0x49, 0x54, 0x6c, 0x39, 0x70, 0x56, 0x72, 0x4f, 0x6d, 0x33, 0x55, 0x41, 0x61, 0x79, 0x47, 0x45, 0x68, 0x2b, 0x76, 0x46, 0x30, 0x38, 0x42, 0x4f, 0x58, 0x55, 0x35, 0x7a, 0x64, 0x68, 0x62, 0x2f, 0xa, 0x6e, 0x51, 0x6c, 0x50, 0x35, 0x62, 0x58, 0x31, 0x69, 0x4a, 0x31, 0x49, 0x4e, 0x50, 0x48, 0x33, 0x76, 0x46, 0x48, 0x44, 0x71, 0x35, 0x50, 0x44, 0x5a, 0x35, 0x78, 0x48, 0x36, 0x61, 0x4f, 0x2f, 0x41, 0x4a, 0x45, 0x4e, 0x34, 0x79, 0x51, 0x66, 0x73, 0x2f, 0x61, 0x34, 0x64, 0x57, 0x43, 0x76, 0x69, 0x75, 0x65, 0x4f, 0x66, 0x62, 0x50, 0x54, 0x54, 0x33, 0x45, 0x31, 0x55, 0x65, 0x4a, 0x33, 0xa, 0x30, 0x6a, 0x4c, 0x77, 0x2f, 0x65, 0x52, 0x50, 0x71, 0x52, 0x69, 0x76, 0x37, 0x35, 0x44, 0x4e, 0x2b, 0x32, 0x67, 0x7a, 0x62, 0x6e, 0x31, 0x51, 0x49, 0x46, 0x72, 0x42, 0x75, 0x2f, 0x66, 0x57, 0x68, 0x75, 0x30, 0x73, 0x74, 0x49, 0x71, 0x53, 0x38, 0x74, 0x62, 0x69, 0x69, 0x64, 0x46, 0x68, 0x4d, 0x37, 0x4d, 0x76, 0x66, 0x34, 0x30, 0x79, 0x69, 0x47, 0x4d, 0x64, 0x6b, 0x54, 0x79, 0x35, 0xa, 0x30, 0x38, 0x37, 0x48, 0x77, 0x73, 0x69, 0x68, 0x75, 0x54, 0x31, 0x63, 0x67, 0x44, 0x61, 0x48, 0x39, 0x52, 0x6f, 0x74, 0x44, 0x4f, 0x38, 0x63, 0x63, 0x51, 0x71, 0x41, 0x55, 0x58, 0x50, 0x66, 0x6b, 0x67, 0x6c, 0x74, 0x42, 0x56, 0x4d, 0x73, 0x78, 0x35, 0x72, 0x47, 0x4e, 0x6c, 0x33, 0x5a, 0x63, 0x6a, 0x5a, 0x33, 0x75, 0x5a, 0x57, 0x50, 0x4d, 0x55, 0x48, 0x36, 0x52, 0x39, 0x69, 0x74, 0xa, 0x68, 0x74, 0x38, 0x3d, 0xa, 0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0x45, 0x4e, 0x44, 0x20, 0x43, 0x45, 0x52, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x45, 0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0xa}, NextProtos:[]string(nil)}, UserAgent:"", DisableCompression:false, Transport:http.RoundTripper(nil), WrapTransport:(transport.WrapperFunc)(nil), QPS:0, Burst:0, RateLimiter:flowcontrol.RateLimiter(nil), WarningHandler:rest.WarningHandler(nil), Timeout:0, Dial:(func(context.Context, string, string) (net.Conn, error))(nil), Proxy:(func(*http.Request) (*url.URL, error))(nil)} DEBU[0000] flag 'app-resources-path': UNCHANGED DEBU[0000] flag 'version': UNCHANGED DEBU[0000] flag 'registry': UNCHANGED DEBU[0000] flag 'pull-secret-name': UNCHANGED DEBU[0000] flag 'image-registries': UNCHANGED DEBU[0000] flag 'pvc-storage-class': UNCHANGED DEBU[0000] flag 'persistent-storage': UNCHANGED DEBU[0000] flag 'pvc-file-path': UNCHANGED DEBU[0000] flag 'size': CHANGED DEBU[0000] flag 'deployment-resources-file-path': UNCHANGED DEBU[0000] flag 'max-total-source-size-mb': UNCHANGED DEBU[0000] flag 'expose-ui': CHANGED DEBU[0000] flag 'node-port': UNCHANGED DEBU[0000] flag 'external-postgres-host': UNCHANGED DEBU[0000] flag 'external-postgres-port': UNCHANGED DEBU[0000] flag 'external-postgres-admin': UNCHANGED DEBU[0000] flag 'external-postgres-user': UNCHANGED DEBU[0000] flag 'external-postgres-ssl': UNCHANGED DEBU[0000] flag 'external-postgres-admin-password': UNCHANGED DEBU[0000] flag 'external-postgres-user-password': UNCHANGED DEBU[0000] flag 'postgres-claim-size': UNCHANGED DEBU[0000] flag 'admin-password': CHANGED DEBU[0000] flag 'user-password': CHANGED DEBU[0000] flag 'postgres-init-post-command': UNCHANGED DEBU[0000] flag 'redis-tls-enabled': UNCHANGED DEBU[0000] flag 'redis-max-total': UNCHANGED DEBU[0000] flag 'redis-max-idle': UNCHANGED DEBU[0000] flag 'certificate-name': UNCHANGED DEBU[0000] flag 'certificate-file-path': CHANGED DEBU[0000] flag 'certificate-file-path': NOT FOUND DEBU[0000] flag 'certificate-key-file-path': CHANGED DEBU[0000] flag 'certificate-key-file-path': NOT FOUND DEBU[0000] flag 'proxy-certificate-file-path': UNCHANGED DEBU[0000] flag 'auth-custom-ca-file-path': UNCHANGED DEBU[0000] flag 'proxy-password-file-path': UNCHANGED DEBU[0000] flag 'ldap-password-file-path': UNCHANGED DEBU[0000] flag 'seal-key': CHANGED DEBU[0000] flag 'environs': UNCHANGED DEBU[0000] flag 'liveness-probes': UNCHANGED DEBU[0000] flag 'enable-binary-analysis': UNCHANGED DEBU[0000] flag 'enable-source-code-upload': UNCHANGED DEBU[0000] flag 'enable-init-container': UNCHANGED DEBU[0000] flag 'node-affinity-file-path': UNCHANGED DEBU[0000] flag 'security-context-file-path': UNCHANGED DEBU[0000] flag 'is-azure': UNCHANGED DEBU[0000] flag 'storage-provider-config': UNCHANGED DEBU[0000] flag 'namespace': CHANGED DEBU[0000] flag 'namespace': NOT FOUND DEBU[0000] flag 'insecure-skip-tls-verify': UNCHANGED DEBU[0000] flag 'kubeconfig': UNCHANGED DEBU[0000] flag 'verbose-level': CHANGED DEBU[0000] flag 'verbose-level': NOT FOUND DEBU[0000] flag 'help': UNCHANGED INFO[0002] Black Duck has been successfully Created!
Here are the complete list of options used with Synopsysctl utility:-
- --name: Name to be used to identify your black duck instance
- --namespace: Namespace in which you will deploy your black duck
- --expose-ui: Provide a value out of LOADBALANCER, NODEPORT and OPENSHIFT to expose black duck web user interface
- --admin-password: Admin Password for PostgreSQL
- --user-password: User Password for PostgreSQL
- --seal-key: Provide a 32 character key to encrypt the master key
- --certificate-file-path: Provide an absolute path to a file for the Black Duck NGINX certificate
- --certificate-key-file-path: Provide an absolute path to a file for the Black Duck NGINX certificate key
Step 6: Verify Installation
To verify Black Duck installation, you can run synopsysctl get blackduck blduckns -n blduckns
command. You should see output like below. This confirms that Black Duck deployed successfully.
cyberithub@ubuntu:~$ synopsysctl get blackduck blduckns -n blduckns
bomengine:
hubMaxMemory: 4096m
replicas: 1
resources:
limits:
memory: 4608Mi
requests:
memory: 1536Mi
enablePersistentStorage: true
environs:
BLACKDUCK_DEPLOYMENT_BASE_SIZE: sizes-gen02/small.yaml
BLACKDUCK_REDIS_MAXMEMORY: 1700mb
exposeui: false
jobrunner:
hubMaxMemory: 3072m
maxOndemandPrefetch: 3
maxOndemandThreads: 6
maxPeriodicPrefetch: 2
maxPeriodicThreads: 3
replicas: 1
resources:
limits:
cpu: 1000m
memory: 3584Mi
matchengine:
hubMaxMemory: 4096m
replicas: 1
resources:
limits:
cpu: 1000m
memory: 4608Mi
requests:
cpu: 500m
memory: 1536Mi
postgres:
adminPassword: admin123
isExternal: false
resources:
requests:
cpu: 1000m
memory: 3072Mi
userPassword: cyberithub123
redis:
replicas: 1
resources:
limits:
memory: 2048Mi
scan:
hubMaxMemory: 2048m
replicas: 1
resources:
limits:
memory: 2560Mi
sealKey: "01234567890123456789012345678901"
size: small
storage:
hubMaxMemory: 512m
replicas: 1
resources:
limits:
cpu: 1000m
memory: 1024Mi
requests:
cpu: 700m
memory: 1024Mi
tlsCertSecretName: blduckns-blackduck-webserver-certificate
version: 2023.7.0
webapp:
hubMaxMemory: 2048m
resources:
limits:
memory: 2560Mi
requests:
cpu: 1000m
webserver:
resources:
limits:
memory: 512Mi
webui:
resources:
limits:
cpu: 1000m
memory: 640Mi
requests:
cpu: 500m
Step 7: Upgrade Black Duck
You can also check and upgrade Black Duck to latest version by using synopsysctl update blackduck blduckns -n blduckns
as shown below.
cyberithub@ubuntu:~$ synopsysctl update blackduck blduckns -n blduckns INFO[0002] Black Duck has been successfully Updated in namespace 'blduckns'!
Step 8: Restart Black Duck
If you are looking to restart Black Duck then you can do that by just stopping and starting it again. For example, here we are stopping black duck blduckns
using synopsysctl stop blackduck blduckns -n blduckns
command as shown below.
cyberithub@ubuntu:~$ synopsysctl stop blackduck blduckns -n blduckns
Similarly, to start black duck again we are running synopsysctl start blackduck blduckns -n blduckns
command as shown below.
cyberithub@ubuntu:~$ synopsysctl start blackduck blduckns -n blduckns
You can also enable different log level during restart operation by setting -v
flag. There are seven log levels that you can enable and use - trace
, debug
, info
, warn
, error
, fatal
and panic
. By default, it will always be info
log level. But in case, if you want to enable debug log level during restart operation then you need to use -v debug
. For example, here we are enabling debug log level during start operation by using synopsysctl start blackduck blduckns -n blduckns -v debug
command as shown below.
cyberithub@ubuntu:~$ synopsysctl start blackduck blduckns -n blduckns -v debug
DEBU[0000] rest config: &rest.Config{Host:"https://192.168.0.8:6443", APIPath:"", ContentConfig:rest.ContentConfig{AcceptContentTypes:"", ContentType:"", GroupVersion:(*schema.GroupVersion)(nil), NegotiatedSerializer:runtime.NegotiatedSerializer(nil)}, Username:"", Password:"", BearerToken:"", BearerTokenFile:"", Impersonate:rest.ImpersonationConfig{UserName:"", UID:"", Groups:[]string(nil), Extra:map[string][]string(nil)}, AuthProvider:<nil>, AuthConfigPersister:rest.AuthProviderConfigPersister(nil), ExecProvider:<nil>, TLSClientConfig:rest.sanitizedTLSClientConfig{Insecure:false, ServerName:"", CertFile:"", KeyFile:"", CAFile:"", CertData:[]uint8{0x2d, 0x2d, 0x2d, 0x20, 0x54, 0x52, 0x55, 0x4e, 0x43, 0x41, 0x54, 0x45, 0x44, 0x20, 0x2d, 0x2d, 0x2d}, KeyData:[]uint8{0x2d, 0x2d, 0x2d, 0x20, 0x52, 0x45, 0x44, 0x41, 0x43, 0x54, 0x45, 0x44, 0x20, 0x2d, 0x2d, 0x2d}, CAData:[]uint8{0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0x42, 0x45, 0x47, 0x49, 0x4e, 0x20, 0x43, 0x45, 0x52, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x45, 0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0xa, 0x4d, 0x49, 0x49, 0x43, 0x2f, 0x6a, 0x43, 0x43, 0x41, 0x65, 0x61, 0x67, 0x41, 0x77, 0x49, 0x42, 0x41, 0x67, 0x49, 0x42, 0x41, 0x44, 0x41, 0x4e, 0x42, 0x67, 0x6b, 0x71, 0x68, 0x6b, 0x69, 0x47, 0x39, 0x77, 0x30, 0x42, 0x41, 0x51, 0x73, 0x46, 0x41, 0x44, 0x41, 0x56, 0x4d, 0x52, 0x4d, 0x77, 0x45, 0x51, 0x59, 0x44, 0x56, 0x51, 0x51, 0x44, 0x45, 0x77, 0x70, 0x72, 0x64, 0x57, 0x4a, 0x6c, 0xa, 0x63, 0x6d, 0x35, 0x6c, 0x64, 0x47, 0x56, 0x7a, 0x4d, 0x42, 0x34, 0x58, 0x44, 0x54, 0x49, 0x7a, 0x4d, 0x44, 0x6b, 0x77, 0x4d, 0x54, 0x45, 0x32, 0x4d, 0x6a, 0x49, 0x7a, 0x4e, 0x31, 0x6f, 0x58, 0x44, 0x54, 0x4d, 0x7a, 0x4d, 0x44, 0x67, 0x79, 0x4f, 0x54, 0x45, 0x32, 0x4d, 0x6a, 0x49, 0x7a, 0x4e, 0x31, 0x6f, 0x77, 0x46, 0x54, 0x45, 0x54, 0x4d, 0x42, 0x45, 0x47, 0x41, 0x31, 0x55, 0x45, 0xa, 0x41, 0x78, 0x4d, 0x4b, 0x61, 0x33, 0x56, 0x69, 0x5a, 0x58, 0x4a, 0x75, 0x5a, 0x58, 0x52, 0x6c, 0x63, 0x7a, 0x43, 0x43, 0x41, 0x53, 0x49, 0x77, 0x44, 0x51, 0x59, 0x4a, 0x4b, 0x6f, 0x5a, 0x49, 0x68, 0x76, 0x63, 0x4e, 0x41, 0x51, 0x45, 0x42, 0x42, 0x51, 0x41, 0x44, 0x67, 0x67, 0x45, 0x50, 0x41, 0x44, 0x43, 0x43, 0x41, 0x51, 0x6f, 0x43, 0x67, 0x67, 0x45, 0x42, 0x41, 0x4d, 0x48, 0x30, 0xa, 0x30, 0x55, 0x2b, 0x74, 0x75, 0x78, 0x6f, 0x54, 0x66, 0x73, 0x79, 0x2f, 0x53, 0x78, 0x50, 0x4b, 0x32, 0x44, 0x45, 0x76, 0x7a, 0x54, 0x50, 0x49, 0x36, 0x4b, 0x32, 0x70, 0x68, 0x70, 0x48, 0x48, 0x34, 0x31, 0x30, 0x61, 0x74, 0x31, 0x46, 0x57, 0x4c, 0x51, 0x51, 0x42, 0x6b, 0x43, 0x45, 0x47, 0x47, 0x53, 0x6e, 0x47, 0x78, 0x53, 0x32, 0x55, 0x70, 0x56, 0x38, 0x72, 0x56, 0x35, 0x61, 0x47, 0xa, 0x50, 0x57, 0x79, 0x6a, 0x71, 0x41, 0x4a, 0x4b, 0x77, 0x2b, 0x35, 0x6e, 0x68, 0x36, 0x4d, 0x38, 0x56, 0x4f, 0x53, 0x65, 0x56, 0x53, 0x65, 0x57, 0x50, 0x72, 0x70, 0x32, 0x68, 0x34, 0x34, 0x46, 0x4d, 0x61, 0x78, 0x59, 0x71, 0x53, 0x54, 0x32, 0x6a, 0x79, 0x41, 0x2f, 0x36, 0x4a, 0x38, 0x32, 0x57, 0x72, 0x58, 0x6e, 0x58, 0x63, 0x50, 0x6a, 0x4d, 0x4e, 0x79, 0x54, 0x50, 0x54, 0x58, 0x41, 0xa, 0x7a, 0x38, 0x2f, 0x62, 0x32, 0x69, 0x37, 0x38, 0x72, 0x37, 0x37, 0x66, 0x51, 0x33, 0x76, 0x55, 0x44, 0x6e, 0x6d, 0x63, 0x53, 0x65, 0x4c, 0x69, 0x72, 0x53, 0x67, 0x6a, 0x67, 0x41, 0x73, 0x63, 0x6c, 0x75, 0x58, 0x4b, 0x2b, 0x48, 0x41, 0x68, 0x38, 0x4e, 0x58, 0x6e, 0x7a, 0x57, 0x37, 0x39, 0x50, 0x6e, 0x65, 0x31, 0x79, 0x76, 0x63, 0x36, 0x35, 0x7a, 0x62, 0x42, 0x4a, 0x65, 0x4c, 0x75, 0xa, 0x51, 0x75, 0x70, 0x39, 0x33, 0x49, 0x6e, 0x66, 0x44, 0x48, 0x54, 0x79, 0x44, 0x52, 0x72, 0x54, 0x44, 0x6f, 0x56, 0x42, 0x68, 0x7a, 0x46, 0x71, 0x6f, 0x33, 0x43, 0x37, 0x77, 0x76, 0x6f, 0x52, 0x58, 0x46, 0x30, 0x57, 0x4e, 0x77, 0x34, 0x78, 0x7a, 0x63, 0x4e, 0x46, 0x48, 0x77, 0x4f, 0x79, 0x76, 0x54, 0x74, 0x41, 0x6b, 0x6e, 0x67, 0x74, 0x51, 0x6c, 0x45, 0x52, 0x4c, 0x34, 0x48, 0x75, 0xa, 0x42, 0x61, 0x59, 0x77, 0x6d, 0x53, 0x70, 0x59, 0x48, 0x79, 0x55, 0x51, 0x4d, 0x61, 0x39, 0x6f, 0x71, 0x34, 0x39, 0x58, 0x47, 0x30, 0x47, 0x64, 0x37, 0x58, 0x67, 0x41, 0x68, 0x59, 0x6a, 0x68, 0x73, 0x6f, 0x57, 0x74, 0x34, 0x47, 0x44, 0x6e, 0x69, 0x5a, 0x7a, 0x34, 0x68, 0x53, 0x6a, 0x79, 0x68, 0x64, 0x4b, 0x2b, 0x71, 0x45, 0x31, 0x32, 0x73, 0x50, 0x76, 0x54, 0x70, 0x54, 0x61, 0x32, 0xa, 0x53, 0x53, 0x74, 0x77, 0x31, 0x61, 0x47, 0x34, 0x78, 0x4a, 0x6f, 0x68, 0x32, 0x50, 0x4d, 0x2f, 0x46, 0x36, 0x45, 0x43, 0x41, 0x77, 0x45, 0x41, 0x41, 0x61, 0x4e, 0x5a, 0x4d, 0x46, 0x63, 0x77, 0x44, 0x67, 0x59, 0x44, 0x56, 0x52, 0x30, 0x50, 0x41, 0x51, 0x48, 0x2f, 0x42, 0x41, 0x51, 0x44, 0x41, 0x67, 0x4b, 0x6b, 0x4d, 0x41, 0x38, 0x47, 0x41, 0x31, 0x55, 0x64, 0x45, 0x77, 0x45, 0x42, 0xa, 0x2f, 0x77, 0x51, 0x46, 0x4d, 0x41, 0x4d, 0x42, 0x41, 0x66, 0x38, 0x77, 0x48, 0x51, 0x59, 0x44, 0x56, 0x52, 0x30, 0x4f, 0x42, 0x42, 0x59, 0x45, 0x46, 0x49, 0x68, 0x51, 0x4b, 0x6c, 0x73, 0x67, 0x4e, 0x37, 0x6f, 0x6f, 0x73, 0x52, 0x59, 0x66, 0x6d, 0x46, 0x42, 0x65, 0x36, 0x4a, 0x69, 0x55, 0x76, 0x32, 0x4d, 0x69, 0x4d, 0x42, 0x55, 0x47, 0x41, 0x31, 0x55, 0x64, 0x45, 0x51, 0x51, 0x4f, 0xa, 0x4d, 0x41, 0x79, 0x43, 0x43, 0x6d, 0x74, 0x31, 0x59, 0x6d, 0x56, 0x79, 0x62, 0x6d, 0x56, 0x30, 0x5a, 0x58, 0x4d, 0x77, 0x44, 0x51, 0x59, 0x4a, 0x4b, 0x6f, 0x5a, 0x49, 0x68, 0x76, 0x63, 0x4e, 0x41, 0x51, 0x45, 0x4c, 0x42, 0x51, 0x41, 0x44, 0x67, 0x67, 0x45, 0x42, 0x41, 0x47, 0x57, 0x43, 0x4c, 0x45, 0x5a, 0x7a, 0x74, 0x71, 0x33, 0x61, 0x70, 0x36, 0x68, 0x43, 0x62, 0x31, 0x39, 0x39, 0xa, 0x57, 0x69, 0x61, 0x49, 0x6d, 0x46, 0x50, 0x6d, 0x7a, 0x42, 0x2f, 0x4a, 0x56, 0x4e, 0x54, 0x36, 0x71, 0x6e, 0x37, 0x6c, 0x66, 0x64, 0x67, 0x42, 0x57, 0x54, 0x2f, 0x68, 0x6d, 0x75, 0x44, 0x47, 0x66, 0x7a, 0x66, 0x49, 0x2b, 0x63, 0x37, 0x32, 0x63, 0x6d, 0x2f, 0x69, 0x39, 0x63, 0x5a, 0x39, 0x33, 0x4b, 0x45, 0x39, 0x5a, 0x4c, 0x51, 0x38, 0x44, 0x4b, 0x77, 0x36, 0x44, 0x4b, 0x34, 0x65, 0xa, 0x37, 0x30, 0x2b, 0x6f, 0x4a, 0x77, 0x37, 0x55, 0x35, 0x75, 0x41, 0x50, 0x38, 0x6d, 0x64, 0x78, 0x36, 0x4f, 0x6e, 0x7a, 0x31, 0x4c, 0x77, 0x4e, 0x44, 0x2b, 0x59, 0x6a, 0x55, 0x42, 0x65, 0x66, 0x49, 0x54, 0x6c, 0x39, 0x70, 0x56, 0x72, 0x4f, 0x6d, 0x33, 0x55, 0x41, 0x61, 0x79, 0x47, 0x45, 0x68, 0x2b, 0x76, 0x46, 0x30, 0x38, 0x42, 0x4f, 0x58, 0x55, 0x35, 0x7a, 0x64, 0x68, 0x62, 0x2f, 0xa, 0x6e, 0x51, 0x6c, 0x50, 0x35, 0x62, 0x58, 0x31, 0x69, 0x4a, 0x31, 0x49, 0x4e, 0x50, 0x48, 0x33, 0x76, 0x46, 0x48, 0x44, 0x71, 0x35, 0x50, 0x44, 0x5a, 0x35, 0x78, 0x48, 0x36, 0x61, 0x4f, 0x2f, 0x41, 0x4a, 0x45, 0x4e, 0x34, 0x79, 0x51, 0x66, 0x73, 0x2f, 0x61, 0x34, 0x64, 0x57, 0x43, 0x76, 0x69, 0x75, 0x65, 0x4f, 0x66, 0x62, 0x50, 0x54, 0x54, 0x33, 0x45, 0x31, 0x55, 0x65, 0x4a, 0x33, 0xa, 0x30, 0x6a, 0x4c, 0x77, 0x2f, 0x65, 0x52, 0x50, 0x71, 0x52, 0x69, 0x76, 0x37, 0x35, 0x44, 0x4e, 0x2b, 0x32, 0x67, 0x7a, 0x62, 0x6e, 0x31, 0x51, 0x49, 0x46, 0x72, 0x42, 0x75, 0x2f, 0x66, 0x57, 0x68, 0x75, 0x30, 0x73, 0x74, 0x49, 0x71, 0x53, 0x38, 0x74, 0x62, 0x69, 0x69, 0x64, 0x46, 0x68, 0x4d, 0x37, 0x4d, 0x76, 0x66, 0x34, 0x30, 0x79, 0x69, 0x47, 0x4d, 0x64, 0x6b, 0x54, 0x79, 0x35, 0xa, 0x30, 0x38, 0x37, 0x48, 0x77, 0x73, 0x69, 0x68, 0x75, 0x54, 0x31, 0x63, 0x67, 0x44, 0x61, 0x48, 0x39, 0x52, 0x6f, 0x74, 0x44, 0x4f, 0x38, 0x63, 0x63, 0x51, 0x71, 0x41, 0x55, 0x58, 0x50, 0x66, 0x6b, 0x67, 0x6c, 0x74, 0x42, 0x56, 0x4d, 0x73, 0x78, 0x35, 0x72, 0x47, 0x4e, 0x6c, 0x33, 0x5a, 0x63, 0x6a, 0x5a, 0x33, 0x75, 0x5a, 0x57, 0x50, 0x4d, 0x55, 0x48, 0x36, 0x52, 0x39, 0x69, 0x74, 0xa, 0x68, 0x74, 0x38, 0x3d, 0xa, 0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0x45, 0x4e, 0x44, 0x20, 0x43, 0x45, 0x52, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x45, 0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0xa}, NextProtos:[]string(nil)}, UserAgent:"", DisableCompression:false, Transport:http.RoundTripper(nil), WrapTransport:(transport.WrapperFunc)(nil), QPS:0, Burst:0, RateLimiter:flowcontrol.RateLimiter(nil), WarningHandler:rest.WarningHandler(nil), Timeout:0, Dial:(func(context.Context, string, string) (net.Conn, error))(nil), Proxy:(func(*http.Request) (*url.URL, error))(nil)}
Similarly, while stopping Black Duck you can enable debug mode by running synopsysctl stop blackduck blduckns -n blduckns -v debug
command as shown below.
cyberithub@ubuntu:~$ synopsysctl stop blackduck blduckns -n blduckns -v debug
DEBU[0000] rest config: &rest.Config{Host:"https://192.168.0.8:6443", APIPath:"", ContentConfig:rest.ContentConfig{AcceptContentTypes:"", ContentType:"", GroupVersion:(*schema.GroupVersion)(nil), NegotiatedSerializer:runtime.NegotiatedSerializer(nil)}, Username:"", Password:"", BearerToken:"", BearerTokenFile:"", Impersonate:rest.ImpersonationConfig{UserName:"", UID:"", Groups:[]string(nil), Extra:map[string][]string(nil)}, AuthProvider:<nil>, AuthConfigPersister:rest.AuthProviderConfigPersister(nil), ExecProvider:<nil>, TLSClientConfig:rest.sanitizedTLSClientConfig{Insecure:false, ServerName:"", CertFile:"", KeyFile:"", CAFile:"", CertData:[]uint8{0x2d, 0x2d, 0x2d, 0x20, 0x54, 0x52, 0x55, 0x4e, 0x43, 0x41, 0x54, 0x45, 0x44, 0x20, 0x2d, 0x2d, 0x2d}, KeyData:[]uint8{0x2d, 0x2d, 0x2d, 0x20, 0x52, 0x45, 0x44, 0x41, 0x43, 0x54, 0x45, 0x44, 0x20, 0x2d, 0x2d, 0x2d}, CAData:[]uint8{0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0x42, 0x45, 0x47, 0x49, 0x4e, 0x20, 0x43, 0x45, 0x52, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x45, 0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0xa, 0x4d, 0x49, 0x49, 0x43, 0x2f, 0x6a, 0x43, 0x43, 0x41, 0x65, 0x61, 0x67, 0x41, 0x77, 0x49, 0x42, 0x41, 0x67, 0x49, 0x42, 0x41, 0x44, 0x41, 0x4e, 0x42, 0x67, 0x6b, 0x71, 0x68, 0x6b, 0x69, 0x47, 0x39, 0x77, 0x30, 0x42, 0x41, 0x51, 0x73, 0x46, 0x41, 0x44, 0x41, 0x56, 0x4d, 0x52, 0x4d, 0x77, 0x45, 0x51, 0x59, 0x44, 0x56, 0x51, 0x51, 0x44, 0x45, 0x77, 0x70, 0x72, 0x64, 0x57, 0x4a, 0x6c, 0xa, 0x63, 0x6d, 0x35, 0x6c, 0x64, 0x47, 0x56, 0x7a, 0x4d, 0x42, 0x34, 0x58, 0x44, 0x54, 0x49, 0x7a, 0x4d, 0x44, 0x6b, 0x77, 0x4d, 0x54, 0x45, 0x32, 0x4d, 0x6a, 0x49, 0x7a, 0x4e, 0x31, 0x6f, 0x58, 0x44, 0x54, 0x4d, 0x7a, 0x4d, 0x44, 0x67, 0x79, 0x4f, 0x54, 0x45, 0x32, 0x4d, 0x6a, 0x49, 0x7a, 0x4e, 0x31, 0x6f, 0x77, 0x46, 0x54, 0x45, 0x54, 0x4d, 0x42, 0x45, 0x47, 0x41, 0x31, 0x55, 0x45, 0xa, 0x41, 0x78, 0x4d, 0x4b, 0x61, 0x33, 0x56, 0x69, 0x5a, 0x58, 0x4a, 0x75, 0x5a, 0x58, 0x52, 0x6c, 0x63, 0x7a, 0x43, 0x43, 0x41, 0x53, 0x49, 0x77, 0x44, 0x51, 0x59, 0x4a, 0x4b, 0x6f, 0x5a, 0x49, 0x68, 0x76, 0x63, 0x4e, 0x41, 0x51, 0x45, 0x42, 0x42, 0x51, 0x41, 0x44, 0x67, 0x67, 0x45, 0x50, 0x41, 0x44, 0x43, 0x43, 0x41, 0x51, 0x6f, 0x43, 0x67, 0x67, 0x45, 0x42, 0x41, 0x4d, 0x48, 0x30, 0xa, 0x30, 0x55, 0x2b, 0x74, 0x75, 0x78, 0x6f, 0x54, 0x66, 0x73, 0x79, 0x2f, 0x53, 0x78, 0x50, 0x4b, 0x32, 0x44, 0x45, 0x76, 0x7a, 0x54, 0x50, 0x49, 0x36, 0x4b, 0x32, 0x70, 0x68, 0x70, 0x48, 0x48, 0x34, 0x31, 0x30, 0x61, 0x74, 0x31, 0x46, 0x57, 0x4c, 0x51, 0x51, 0x42, 0x6b, 0x43, 0x45, 0x47, 0x47, 0x53, 0x6e, 0x47, 0x78, 0x53, 0x32, 0x55, 0x70, 0x56, 0x38, 0x72, 0x56, 0x35, 0x61, 0x47, 0xa, 0x50, 0x57, 0x79, 0x6a, 0x71, 0x41, 0x4a, 0x4b, 0x77, 0x2b, 0x35, 0x6e, 0x68, 0x36, 0x4d, 0x38, 0x56, 0x4f, 0x53, 0x65, 0x56, 0x53, 0x65, 0x57, 0x50, 0x72, 0x70, 0x32, 0x68, 0x34, 0x34, 0x46, 0x4d, 0x61, 0x78, 0x59, 0x71, 0x53, 0x54, 0x32, 0x6a, 0x79, 0x41, 0x2f, 0x36, 0x4a, 0x38, 0x32, 0x57, 0x72, 0x58, 0x6e, 0x58, 0x63, 0x50, 0x6a, 0x4d, 0x4e, 0x79, 0x54, 0x50, 0x54, 0x58, 0x41, 0xa, 0x7a, 0x38, 0x2f, 0x62, 0x32, 0x69, 0x37, 0x38, 0x72, 0x37, 0x37, 0x66, 0x51, 0x33, 0x76, 0x55, 0x44, 0x6e, 0x6d, 0x63, 0x53, 0x65, 0x4c, 0x69, 0x72, 0x53, 0x67, 0x6a, 0x67, 0x41, 0x73, 0x63, 0x6c, 0x75, 0x58, 0x4b, 0x2b, 0x48, 0x41, 0x68, 0x38, 0x4e, 0x58, 0x6e, 0x7a, 0x57, 0x37, 0x39, 0x50, 0x6e, 0x65, 0x31, 0x79, 0x76, 0x63, 0x36, 0x35, 0x7a, 0x62, 0x42, 0x4a, 0x65, 0x4c, 0x75, 0xa, 0x51, 0x75, 0x70, 0x39, 0x33, 0x49, 0x6e, 0x66, 0x44, 0x48, 0x54, 0x79, 0x44, 0x52, 0x72, 0x54, 0x44, 0x6f, 0x56, 0x42, 0x68, 0x7a, 0x46, 0x71, 0x6f, 0x33, 0x43, 0x37, 0x77, 0x76, 0x6f, 0x52, 0x58, 0x46, 0x30, 0x57, 0x4e, 0x77, 0x34, 0x78, 0x7a, 0x63, 0x4e, 0x46, 0x48, 0x77, 0x4f, 0x79, 0x76, 0x54, 0x74, 0x41, 0x6b, 0x6e, 0x67, 0x74, 0x51, 0x6c, 0x45, 0x52, 0x4c, 0x34, 0x48, 0x75, 0xa, 0x42, 0x61, 0x59, 0x77, 0x6d, 0x53, 0x70, 0x59, 0x48, 0x79, 0x55, 0x51, 0x4d, 0x61, 0x39, 0x6f, 0x71, 0x34, 0x39, 0x58, 0x47, 0x30, 0x47, 0x64, 0x37, 0x58, 0x67, 0x41, 0x68, 0x59, 0x6a, 0x68, 0x73, 0x6f, 0x57, 0x74, 0x34, 0x47, 0x44, 0x6e, 0x69, 0x5a, 0x7a, 0x34, 0x68, 0x53, 0x6a, 0x79, 0x68, 0x64, 0x4b, 0x2b, 0x71, 0x45, 0x31, 0x32, 0x73, 0x50, 0x76, 0x54, 0x70, 0x54, 0x61, 0x32, 0xa, 0x53, 0x53, 0x74, 0x77, 0x31, 0x61, 0x47, 0x34, 0x78, 0x4a, 0x6f, 0x68, 0x32, 0x50, 0x4d, 0x2f, 0x46, 0x36, 0x45, 0x43, 0x41, 0x77, 0x45, 0x41, 0x41, 0x61, 0x4e, 0x5a, 0x4d, 0x46, 0x63, 0x77, 0x44, 0x67, 0x59, 0x44, 0x56, 0x52, 0x30, 0x50, 0x41, 0x51, 0x48, 0x2f, 0x42, 0x41, 0x51, 0x44, 0x41, 0x67, 0x4b, 0x6b, 0x4d, 0x41, 0x38, 0x47, 0x41, 0x31, 0x55, 0x64, 0x45, 0x77, 0x45, 0x42, 0xa, 0x2f, 0x77, 0x51, 0x46, 0x4d, 0x41, 0x4d, 0x42, 0x41, 0x66, 0x38, 0x77, 0x48, 0x51, 0x59, 0x44, 0x56, 0x52, 0x30, 0x4f, 0x42, 0x42, 0x59, 0x45, 0x46, 0x49, 0x68, 0x51, 0x4b, 0x6c, 0x73, 0x67, 0x4e, 0x37, 0x6f, 0x6f, 0x73, 0x52, 0x59, 0x66, 0x6d, 0x46, 0x42, 0x65, 0x36, 0x4a, 0x69, 0x55, 0x76, 0x32, 0x4d, 0x69, 0x4d, 0x42, 0x55, 0x47, 0x41, 0x31, 0x55, 0x64, 0x45, 0x51, 0x51, 0x4f, 0xa, 0x4d, 0x41, 0x79, 0x43, 0x43, 0x6d, 0x74, 0x31, 0x59, 0x6d, 0x56, 0x79, 0x62, 0x6d, 0x56, 0x30, 0x5a, 0x58, 0x4d, 0x77, 0x44, 0x51, 0x59, 0x4a, 0x4b, 0x6f, 0x5a, 0x49, 0x68, 0x76, 0x63, 0x4e, 0x41, 0x51, 0x45, 0x4c, 0x42, 0x51, 0x41, 0x44, 0x67, 0x67, 0x45, 0x42, 0x41, 0x47, 0x57, 0x43, 0x4c, 0x45, 0x5a, 0x7a, 0x74, 0x71, 0x33, 0x61, 0x70, 0x36, 0x68, 0x43, 0x62, 0x31, 0x39, 0x39, 0xa, 0x57, 0x69, 0x61, 0x49, 0x6d, 0x46, 0x50, 0x6d, 0x7a, 0x42, 0x2f, 0x4a, 0x56, 0x4e, 0x54, 0x36, 0x71, 0x6e, 0x37, 0x6c, 0x66, 0x64, 0x67, 0x42, 0x57, 0x54, 0x2f, 0x68, 0x6d, 0x75, 0x44, 0x47, 0x66, 0x7a, 0x66, 0x49, 0x2b, 0x63, 0x37, 0x32, 0x63, 0x6d, 0x2f, 0x69, 0x39, 0x63, 0x5a, 0x39, 0x33, 0x4b, 0x45, 0x39, 0x5a, 0x4c, 0x51, 0x38, 0x44, 0x4b, 0x77, 0x36, 0x44, 0x4b, 0x34, 0x65, 0xa, 0x37, 0x30, 0x2b, 0x6f, 0x4a, 0x77, 0x37, 0x55, 0x35, 0x75, 0x41, 0x50, 0x38, 0x6d, 0x64, 0x78, 0x36, 0x4f, 0x6e, 0x7a, 0x31, 0x4c, 0x77, 0x4e, 0x44, 0x2b, 0x59, 0x6a, 0x55, 0x42, 0x65, 0x66, 0x49, 0x54, 0x6c, 0x39, 0x70, 0x56, 0x72, 0x4f, 0x6d, 0x33, 0x55, 0x41, 0x61, 0x79, 0x47, 0x45, 0x68, 0x2b, 0x76, 0x46, 0x30, 0x38, 0x42, 0x4f, 0x58, 0x55, 0x35, 0x7a, 0x64, 0x68, 0x62, 0x2f, 0xa, 0x6e, 0x51, 0x6c, 0x50, 0x35, 0x62, 0x58, 0x31, 0x69, 0x4a, 0x31, 0x49, 0x4e, 0x50, 0x48, 0x33, 0x76, 0x46, 0x48, 0x44, 0x71, 0x35, 0x50, 0x44, 0x5a, 0x35, 0x78, 0x48, 0x36, 0x61, 0x4f, 0x2f, 0x41, 0x4a, 0x45, 0x4e, 0x34, 0x79, 0x51, 0x66, 0x73, 0x2f, 0x61, 0x34, 0x64, 0x57, 0x43, 0x76, 0x69, 0x75, 0x65, 0x4f, 0x66, 0x62, 0x50, 0x54, 0x54, 0x33, 0x45, 0x31, 0x55, 0x65, 0x4a, 0x33, 0xa, 0x30, 0x6a, 0x4c, 0x77, 0x2f, 0x65, 0x52, 0x50, 0x71, 0x52, 0x69, 0x76, 0x37, 0x35, 0x44, 0x4e, 0x2b, 0x32, 0x67, 0x7a, 0x62, 0x6e, 0x31, 0x51, 0x49, 0x46, 0x72, 0x42, 0x75, 0x2f, 0x66, 0x57, 0x68, 0x75, 0x30, 0x73, 0x74, 0x49, 0x71, 0x53, 0x38, 0x74, 0x62, 0x69, 0x69, 0x64, 0x46, 0x68, 0x4d, 0x37, 0x4d, 0x76, 0x66, 0x34, 0x30, 0x79, 0x69, 0x47, 0x4d, 0x64, 0x6b, 0x54, 0x79, 0x35, 0xa, 0x30, 0x38, 0x37, 0x48, 0x77, 0x73, 0x69, 0x68, 0x75, 0x54, 0x31, 0x63, 0x67, 0x44, 0x61, 0x48, 0x39, 0x52, 0x6f, 0x74, 0x44, 0x4f, 0x38, 0x63, 0x63, 0x51, 0x71, 0x41, 0x55, 0x58, 0x50, 0x66, 0x6b, 0x67, 0x6c, 0x74, 0x42, 0x56, 0x4d, 0x73, 0x78, 0x35, 0x72, 0x47, 0x4e, 0x6c, 0x33, 0x5a, 0x63, 0x6a, 0x5a, 0x33, 0x75, 0x5a, 0x57, 0x50, 0x4d, 0x55, 0x48, 0x36, 0x52, 0x39, 0x69, 0x74, 0xa, 0x68, 0x74, 0x38, 0x3d, 0xa, 0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0x45, 0x4e, 0x44, 0x20, 0x43, 0x45, 0x52, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x45, 0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0xa}, NextProtos:[]string(nil)}, UserAgent:"", DisableCompression:false, Transport:http.RoundTripper(nil), WrapTransport:(transport.WrapperFunc)(nil), QPS:0, Burst:0, RateLimiter:flowcontrol.RateLimiter(nil), WarningHandler:rest.WarningHandler(nil), Timeout:0, Dial:(func(context.Context, string, string) (net.Conn, error))(nil), Proxy:(func(*http.Request) (*url.URL, error))(nil)}
Step 9: Delete Black Duck
To uninstall Black Duck software deployed in your Kubernetes cluster namespace blduckns
using synopsysctl
, run synopsysctl delete blackduck blduckns -n blduckns
command as shown below.
cyberithub@ubuntu:~$ synopsysctl delete blackduck blduckns -n blduckns INFO[0003] Black Duck has been successfully Deleted!