Namespace-scoped Installation
Aperture Agent can be installed in a single namespace without any cluster level resources.
Prerequisites
Prepare a
values.yamlfile which switches the Aperture Agent to namespace-scoped:agent:
namespaceScoped: trueIf you want to install the Aperture Agent using
Helmor don't want to use the certificates generated byaperturectland want to enable Agent Functions for communication with the Aperture Controller, configure the ConfigMap having the client SSL/TLS certificate for the same invalues.yamlfile as below:agent:
namespaceScoped: true
controllerCert:
cmName: NAME_OF_CONFIGMAP
certFileName: CERTIFICATE_FILENAME_KEY
Installation
By following these instructions, you will have deployed the Aperture Agent into your cluster.
Configure the below parameters of etcd and Prometheus for the Agent by updating the
values.yamland passing it withinstallcommand:agent:
namespaceScoped: true
config:
etcd:
endpoints: ["ETCD_ENDPOINT_HERE"]
prometheus:
address: "PROMETHEUS_ADDRESS_HERE"
agent_functions:
endpoints: ["CONTROLLER_ENDPOINT_HERE"]Replace the values of
ETCD_ENDPOINT_HEREandPROMETHEUS_ADDRESS_HEREwith the actual values of etcd and Prometheus, which are also being used by the Aperture Controller you want these Agents to connect to.CONTROLLER_ENDPOINT_HEREshould point to Aperture Controller. If you skip it, some sub-commandsaperturectlcommands won't work.If you have installed the Aperture Controller on the same cluster in
defaultnamespace, with etcd and Prometheus usingcontrolleras release name, the values for the values forETCD_ENDPOINT_HERE,PROMETHEUS_ADDRESS_HEREandCONTROLLER_ENDPOINT_HEREwould be as below:agent:
namespaceScoped: true
config:
etcd:
endpoints: ["http://controller-etcd.default.svc.cluster.local:2379"]
prometheus:
address: "http://controller-prometheus-server.default.svc.cluster.local:80"
agent_functions:
endpoints: ["aperture-controller.default.svc.cluster.local:8080"]- aperturectl
- Helm
aperturectl install agent --version v2.6.0 --values-file values.yamlhelm install agent aperture/aperture-agent -f values.yaml --skip-crdsIf you want to modify the default parameters or the Aperture Agent configuration, for example
log, you can update thevalues.yamlfile and pass it withinstallcommand:agent:
namespaceScoped: true
config:
etcd:
endpoints: ["http://controller-etcd.default.svc.cluster.local:2379"]
prometheus:
address: "http://controller-prometheus-server.default.svc.cluster.local:80"
log:
level: debug
pretty_console: true
non_blocking: false- aperturectl
- Helm
aperturectl install agent --version v2.6.0 --values-file values.yamlhelm install agent aperture/aperture-agent -f values.yaml --skip-crdsAll the configuration parameters for the Aperture Agent are available here.
A list of configurable parameters for the installation can be found in the README.
If you want to deploy the Aperture Agent into a namespace other than
default, use the--namespaceflag:- aperturectl
- Helm
aperturectl install agent --version v2.6.0 --values-file values.yaml --namespace aperture-agenthelm install agent aperture/aperture-agent -f values.yaml --namespace aperture-agent --create-namespace --skip-crds
Upgrade Procedure
By following these instructions, you will have deployed the upgraded version of Aperture Agent into your cluster.
Use the same
values.yamlfile created as part of Installation Steps and pass it with below command:- aperturectl
- Helm
aperturectl install agent --version v2.6.0 --values-file values.yamlhelm template agent aperture/aperture-agent -f values.yaml | kubectl apply -f -Once all the pods are in a running state after upgrade, run the below command to keep the Helm release updated:
helm upgrade agent aperture/aperture-agent -f values.yamlIf you have deployed the Aperture Agent into a namespace other than
default, use the--namespaceflag:- aperturectl
- Helm
aperturectl install agent --version v2.6.0 --values-file values.yaml --namespace aperture-agenthelm template agent aperture/aperture-agent -f values.yaml --namespace aperture-agent | kubectl apply -f -Once all the pods are in a running state after upgrade, run the below command to keep the Helm release updated:
helm upgrade agent aperture/aperture-agent -f values.yaml --namespace aperture-agent
Verifying the Installation
Once you have successfully deployed the resources, confirm that the Aperture Agent is up and running:
kubectl get pod
You should see pods for Aperture Agent in RUNNING state.
Uninstall
You can uninstall the Aperture Agent and its components installed above, by following the below steps.
Use the same values.yaml file created as part of
Installation Steps and pass it with below command.
Uninstall the Aperture Agent:
- aperturectl
- Helm
aperturectl uninstall agent --values-file values.yaml --version v2.6.0helm uninstall agent -f values.yamlIf you have installed the chart in some other namespace than
default, execute the below commands:- aperturectl
- Helm
aperturectl uninstall agent --namespace aperture-agent --values-file values.yaml --version v2.6.0helm uninstall agent --namespace aperture-agent -f values.yamlBy default, the ConfigMap generated by the
aperturectlfor client certificate of the Aperture Controller is not deleted with above steps. If you want to delete them, run the below commands:kubectl delete configmap -l app.kubernetes.io/instance=agent-aperture-agent