Queries the vROps REST API, to get data about all of the virtual machines in each vCenter instance, and sends that data to HostDB.
This section will describe the process of developing the collector. Please see Deployment for notes on how the collector is used when deployed.
The vROps collector requires a few things to operate:
- An instance of vROps to query.
- A HostDB instance to write to.
For development, you'll also need:
- Docker
- Golang
The collector is a golang binary, and after compilation, it can be run on any Linux x86 system. No installation necessary.
This should be as simple as make test
. It will execute go fmt
, go vet
, golint
, errcheck
and go test
.
The binary is compiled and containerized, and pushed to registry for deployment.
registry.pdxfixit.com/hostdb-collector-vrops
The vROps collector runs from Kubernetes as a cron job, defined in the hostdb-server Helm chart.
Set the environment variable HOSTDB_COLLECTOR_VROPS_COLLECTOR_DEBUG
to true, and the collector will output additional detail, including secrets.
In addition, if the variable HOSTDB_COLLECTOR_VROPS_COLLECTOR_SAMPLE_DATA
is set to true, the collector will output all collected data to file, instead of sending it to HostDB.
Build will run tests, compile the golang binary, create a container including the binary, and upload that container image to the registry for use.
- Email: [email protected]