VCP-CMA 2020 (2V0-31.20) Exam Study Guide - Sections 5-6
This study guide aligns with the exam blueprint for the Professional VMware vRealize Automation 8.1 exam (2V0-31.20), which leads to the VMware Certified Professional - Cloud Management and Automation 2020 certification. The exam is 135 minutes with 70 questions.
This study guide has been created to help myself study for the exam, but I hope you find this helpful in your own preparation for the exam. If you want official training to prepare for the exam, please refer to VMware Learning.
Note that the screenshots in this study guide are from a vRA cloud environment, not an on-prem vRA 8.1 environment. There should not be a significant difference between the two at the time of taking these screenshots.
Section 5 - Performance-tuning, Optimization, Upgrades
There are no testable objectives for this section.
Section 6 - Troubleshooting and Repairing
Objective 6.1 - Collect Log Bundles
The log bundle is a zip file containing the environment file and both the service and core system logs.
An environment file, included in the log bundle, shows configuration settings. This file has details about hardware, IP addresses and cluster infromation, and log information about top-level system functions (i.e. data collection).
You can access logs captured per service based on the pod name by using the
kubectl logs -n prelude <pod-name> command. You can use
kubectl -n prelude get pods command to find the current container log.
To create a log bundle, you go to the directory where you want to collect logs and use the
vracli log-bundle command. All containers are named after the pod.
For more information on logs and log bundles, please refer to the official documentation here.
Objective 6.2 - Describe
vracli Command Options
vracli is a custom-built command set tool for implementing and modifying the vRealize Automation appliance infrastructure.
Basic output of any
vracli [command] [resource] [flags]
You can use
vracli -h for CLI help.
Here is a list of some of the
cluster- cluster administration commands
db- database-related commands
ldap- LDAP administration commands
license- lists currently registered license keys
load-balancer- current load balancer address
log-bundle- create a log bundle
reset- reset commands based on Kubernetes configuration updates
status- shows cluster status
upgrade- upgrade commands tool for vRA upgrade
vidm- VMware Identity Manager (vIDM) administration commands
Objective 6.3 - Describe
kubectl Command Options
kubectl is a set of Kubernetes commands to manage Kubernetes services, pods, and container-level functions in the environment.
Basic output of any
kubectl [command] [TYPE] [NAME] [flags]
You can use
kubectl -h for CLI help.
In order to access the prelude namespace where the vRA service resides, you must add
-n prelude for many of the
kubectl -n prelude get pods.
Here are some of the
attach- attach an arbitrary object to a running container
auth- inspect authorization
autoscale- Autoscale Deployment, ReplicaSet, or ReplicationController
certificate- manage certificates; note, do not use this command; use
cluster-info- display cluster information
config- modify the
convert- convert configuration files between different API versions; this command is not currently used in vRA
cordon- Mark the node as unschedulable; note, avoid using this command
cp- copy files and directories to and from containers
create- create a resource from a file or from stdin
delete- delete resources by filenames, stdin, resources and names, or by resources and label selector
describe- display details of a specific resource or group of resources
drain- drain the node to prepare for maintenance
edit- edit a resource
exec- run a command in a container
explain- documentation of resources
expose- take a replication controller, service, deployment, or pod and expose it as a new Kubernetes service
get- display resource(s)
logs- print logs for a container in a pod
patch- update fields of a resource by using a strategic merge patch; note, do not use this command in vRA
rollout- manage the rollout of a resource
run- run an image on the cluster
scale- set a new size for Deployment, ReplicaSet, ReplicationController, or Job Used to deploy additional resources and container sizes for individual services
set- set specific features on objects
taint- update the taints on one or more nodes; this command is not currently used in vRA
top- display resource usage (CPU, memory, storage)
uncordon- Mark the node as schedulable; note, avoid using this command
version- print the client and server version information
For more details on
kubectl CLI, please refer to the Kubernetes official documentation here.
Objective 6.4 - Troubleshoot vRA Configuration Errors
You can start troubleshooting vRealize Automation errors by checking the status of vRA appliances and services.
You can use the
vracli status base command to see hardware and software versioning, such as Kubernetes build version, Linux distribution information, and host names. This command also initiates specific health checks from the Postgres databases for the vRA appliance so a top metric ouput is available for networking, disk usage, memory limits, and the overall status of the appliance.
To verify status of all services and top-level metrics, you can use the
kubectl -n prelude get pods command. If you want to see information for a specific pod, you can use the
kubectl -n prelude describe <pod-name> command.
If all else fails, you can try resetting the vRA configuration by running the
/opt/scripts/deploy.sh script. The script runs the helm integrations and will redeploy containers in prelude based on configuration files. The Postgres database and data are not destroyed, but service pods are reconfigured.
Objective 6.5 - Troubleshoot Provisioning Errors
You can also click “provisioning diagram”, which will take you to Request Details and display the provisioning workflow. The failed components will be in red; you can see the error message there as well.
Objective 6.6 - Monitor Deployments
You can monitor active deployments from under the “Deployments” tab.