Configure Virtual Appliance for Migration Tool
Create a Three-Node Cluster
Configure DNS Entries
Verify DNS resolution for the Splunk AppDynamics components. The following script helps identify common network configuration issues that might cause communication issues in Virtual Appliance. It checks if specific host names can be resolved to IP addresses, which is crucial for the proper functioning of the Controller and its services.
globals.yaml.gotmpl contains the primary node IP address of Virtual Appliance. Edit the globals.yaml.gotmpl file as follows:
-
Log into the console of the primary node.
-
Navigate to the following folder:CODE
cd /var/appd/config -
Edit the
globals.yaml.gotmplfile and updatednsNamesanddnsDomain.CODEvi globals.yaml.gotmplList the Ingress domain names that you require to configure for the Virtual Appliance.
Note:- Include local host for
appdclito access the cluster. If the domain names are unavailable, specify<nodeip>.nip.iofor each cluster. You must also include thednsDomainas a value, in addition to other specified values. - Some network policies might block the IP address that contains
x.x.x.x.nip.io. In such scenarios, update the/etc/hostsfile. See, エアギャップ環境での DNS 設定の更新. - If you are using domain names for your Virtual Appliance, comment or delete the
range splitfunction. And, comment thelocalhost.
JSONdnsNames: &dnsNames # - localhost - 10.0.0.1.nip.io - 10.0.0.2.nip.io - 10.0.0.3.nip.io - appd.example.com # If you are using Virtual IP address for your standalone Controller, comment or delete the range split function. {{ range split " " $internalIPs }} {{ printf " - %s.%s" . "nip.io" }} {{ end }}Add all the DNS names of your classic on-premises environment in Virtual Appliance. If each service in classic on-premises uses a different DNS, you must add all the services.CODEdnsNames: &dnsNames - localhost - <VA-DNS> - <Classic-On-Premises-Controller-DNS> - <Classic-On-Premises-EUM-DNS> - <Classic-On-Premises-Events-DNS> - <Classic-On-Premises-Synth-DNS> - Include local host for
Configure Ingress Certificates (Only for SSL Certificates)
By default, the Ingress controller is installed with a fully-configured self-signed certificate. You may skip this step if the self-signed certificate provided by the Ingress Controller meets your requirements.
If you require a CA signed certificate for the Ingress Controller, configure an SSL/TLS certificate for Splunk AppDynamics 自己ホスト型仮想アプライアンス by providing all the required host names. This ensures that all components and user access points of the Virtual Appliance are securely accessible. The following script generates a list of Subject Alternative Names (SANs) that would be required for a custom ingress certificate in Virtual Appliance. This is crucial for securing communication with the Virtual Appliance using HTTPS.
- private key:
private.key - signed public key:
cert.crt - CA root chain:
ca.crt
- Ensure the
ingess.keyis in PEM plain text format. - The SAN of the server certificate in
ingress.crtmust include all the hostnames that are defined in thednsNamessection of theglobal.yaml.gotmplfile. - For Secure Application, ensure to include
*.<DOMAIN-NAME>in the list and the certificates to include SAN aliases
(Optional) Disable Hybrid Property in VA
hybrid property in the globals.yaml.gotmpl file.
hybrid:
enable: false
controller:
domainName: controller.nip.io
port: 8181
sslEnabled: true
{{ if isFile "/var/appd/config/hybrid-controller-ca.crt" }}
controllerCaCertsFile: {{ readFile "/var/appd/config/hybrid-controller-ca.crt" | b64enc | quote }}
{{ end }}
mysql:
dbHost: controller.nip.io
dbPort: 3388
{{ if isFile "/var/appd/config/hybrid-mysql-ca.crt" }}
mysqlCaCertsFile: {{ readFile "/var/appd/config/hybrid-mysql-ca.crt" | b64enc | quote }}
{{ end }}
kafka:
defaultCert: true
{{ if isFile "/var/appd/config/hybrid-kafka.key" }}
keyFile: {{ readFile "/var/appd/config/hybrid-kafka.key" | b64enc | quote }}
{{ end }}
{{ if isFile "/var/appd/config/hybrid-kafka.crt" }}
certFile: {{ readFile "/var/appd/config/hybrid-kafka.crt" | b64enc | quote }}
{{ end }}
schemaregistry:
externalUrl: https://<domain_name>/schemaregistry
Disable the Default Certificate Property
The migration tool requires you to use classic on-premises key and certificate instead of VA ingress certificate.
globals.yaml.gotmpl file to disable the setting that uses the default ingress certificate by setting ingress.defaultCert to false. Instead of the default certificate, configure the tool to use the On-Premises key file by specifying the paths to the private key and public certificate files.
{{
ingress:
defaultCert: false
{{ if isFile "path-to-key-file-of-onprem-classic"}}
keyFile: {{ readFile "path-to-key-file-of-onprem-classic" | b64enc | quote }}
{{ end }}
{{ if isFile "path-to-cert-file-of-onprem-classic" }}
certFile: {{ readFile "path-to-cert-file-of-onprem-classic" | b64enc | quote }}
{{ end }}}}
Disable the Events Service SSL Property
- HTTP
-
CODE
events: enableSsl: false externalUrl: <URL_of_Events_Service> - HTTPS
-
CODE
events: enableSsl: true externalUrl: <URL_of_Events_Service>
Apply Licenses to Splunk AppDynamics Services
Use appdcli to apply licenses after installing Splunk AppDynamics Services.