The Densify-Operator deploys the Densify Container Data Collection utility, which collects data from a Prometheus server and sends it to a Densify instance for analysis.
- Densify account, which is provided with a Densify subscription or through a free trial (https://www.densify.com/service/signup)
- Prometheus (https://prometheus.io/)
- Kube-state-metrics (https://github.com/kubernetes/kube-state-metrics)
The instruction below deploys the basic Densify Container Data Collection with minimal configuration.
- Update the Densify hostname, user and encrypted password, Prometheus hostname and port, and zip filename:
apiVersion: densify.com/v1
kind: Densify
metadata:
name: densify
spec:
config:
densify:
hostname: <instance>.densify.com
port: 443
protocol: https
user: <densify user>
epassword: <encrypted densify user password>
prometheus:
hostname: <prometheus hostname>
port: <prometheus port>
protocol: http
zipname: data/<zip name>
The instructions below deploy the Densify Container Data Collection using a secret to store the username and encrypted password.
- Create a secret that contains the username and epassword keys.
oc -n "<namespace deploying operator into>" create secret generic densify-secret \
--from-literal=username="<densify username>" \
--from-literal=epassword="<encrypted password>" \
- Update the Densify hostname, Prometheus hostname and port, and zip filename:
apiVersion: densify.com/v1
kind: Densify
metadata:
name: densify
spec:
config:
densify:
hostname: <instance>.densify.com
port: 443
protocol: https
UserSecretName: densify-secret
prometheus:
hostname: <prometheus hostname>
port: <prometheus port>
protocol: http
zipname: data/<zip name>
The configuration parameters are the same set as the Densify Forwarder helm chart:
Parameter | Description | Default |
---|---|---|
config.densify.hostname |
Specify the Densify instance hostname. You may need to specify a fully qualified domain name. | <instance>.densify.com |
config.densify.protocol |
Specify the Densify connection protocol: http or https. | <http/https> |
config.densify.port |
Specify the Densify connection port number. | 443 |
config.densify.user |
Specify the Densify user account. You must specify either a password or an epassword along with this parameter. This user must already exist in your Densify instance and have API access privileges. Alternatively, you can use config.densify.UserSecretName for authentication instead of user/(e)password combination (see UserSecretName below). | nil |
config.densify.password |
Specify the password for the Densify user. Only specify a password or an encrypted password (not both). | nil |
config.densify.epassword |
Specify the encrypted password for the Densify User. If you specify an encrypted password, then disable the config.densify.password paramter. | nil |
config.densify.UserSecretName |
Specify the secret name used to store the Densify user and epassword (keys must contain username and epassword). If this parameter is used, then config.densify.username\password\epassword parameters must be disabled. | nil |
config.prometheus.hostname |
Specify the Prometheus address. Using the internal service name is recommended (i.e. <service name>.<namespace>.svc ). |
nil |
config.prometheus.protocol |
Specify the Prometheus connection protocol: http or https. | <http/https> |
config.prometheus.port |
Specify the Prometheus service connection port. | 9090 |
config.prometheus.clustername |
Specify the name to identify the cluster in the Densify UI. If this parameter is disabled, then the specified Prometheus hostname is used to identify the cluster in the Densify UI. | nil |
config.zipname |
Specify the name of the zipfile to send to Densify. | data/nil |
rbac.create |
This flag indicates if RBAC resources are created and used. This flag must be "true" for API access to Prometheus in a secured cluster. | true |
serviceAccount.create |
Specify "true" to create a Service Account with the name specified by the serviceAccount.name parameter (see below). | true |
serviceAccount.name |
Specify the name of the Service Account. If this parameter is disabled, then the Helm chart name is used as the Service Account name. You can specify an existing Service Account name to use, if serviceAccount.create == "false". | nil |
Refer to the Densify Forwarder helm chart for the full list of parameters.
- OS Support: Linux
- Architecture: AMD64
Apache 2 Licensed. See LICENSE for full details.