@@ -64,15 +64,15 @@ spec:
64
64
argoCDAgent:
65
65
principal:
66
66
enabled: true
67
- allowedNamespaces:
67
+ allowedNamespaces:
68
68
- "*"
69
69
jwtAllowGenerate: true
70
70
auth: "mtls:CN=([^,]+)"
71
71
logLevel: "trace"
72
72
image: "ghcr.io/argoproj-labs/argocd-agent/argocd-agent:latest"
73
73
sourceNamespaces:
74
74
- "agent-managed"
75
- - "agent-autonomous"
75
+ - "agent-autonomous"
76
76
```
77
77
78
78
The above CR should create all the necessary resource for Argo CD as well as argocd-agent principal in argocd namespace.
@@ -83,10 +83,10 @@ Create argocd-redis secret, because principal looks for it to fetch redis authen
83
83
oc create secret generic argocd-redis -n argocd --from-literal=auth="$(oc get secret argocd-redis-initial-password -n argocd -o jsonpath='{.data.admin\.password}' | base64 -d)"
84
84
```
85
85
86
- ## Setting up agent workload cluster
86
+ ## Setting up agent workload cluster
87
+
88
+ ### Configure Argo CD for Agent
87
89
88
- ### Configure Argo CD for Agent
89
-
90
90
Argo CD instance on Agent cluster
91
91
92
92
Creating Argo CD instance for Workload/spoke cluster.
@@ -100,14 +100,14 @@ Creating Argo CD instance for Workload/spoke cluster.
100
100
enabled: false
101
101
```
102
102
103
- Create redis secret using below command for agent deployment
103
+ Create redis secret using below command for agent deployment
104
104
```
105
105
kubectl create secret generic argocd-redis -n <workload namespace> --from-literal=auth="$(kubectl get secret argocd-redis-initial-password -n <argocd-namespace> -o jsonpath='{.data.admin\.password}' | base64 -d)"
106
106
```
107
107
108
108
### Configure Agent in managed mode
109
109
110
- Before installing agent resources create
110
+ Before installing agent resources create
111
111
- a TLS secret containing the issued certificate for agent
112
112
113
113
Create the PKI on the agent:
@@ -116,9 +116,9 @@ Run this command while connected to principal
116
116
argocd-agentctl pki issue agent <agent-name> --principal-context <principal context> --agent-context <workload context> --agent-namespace <workload namespace> --upsert
117
117
```
118
118
119
- Apply the installation manifests for Argo CD-agent agent
119
+ Apply the installation manifests for Argo CD-agent agent, change < release-branch > to the release you want to deploy:
120
120
```
121
- oc apply -n $(workload-namespace) -k 'https://github.com/argoproj-labs/argocd-agent/install/kubernetes/agent?ref=main '
121
+ oc apply -n $(workload-namespace) -k 'https://github.com/argoproj-labs/argocd-agent/install/kubernetes/agent?ref=<release-branch> '
122
122
```
123
123
This should create all the required agent related resources.
124
124
@@ -129,7 +129,7 @@ kubectl patch clusterrolebinding argocd-agent-agent --type='json' -p='[{"op": "r
129
129
```
130
130
131
131
132
- Update the configMap with name ` argocd-agent-params ` with parameters related to agent.mode,agent.creds, agent.namespace, agent.server.address.
132
+ Update the configMap with name ` argocd-agent-params ` with parameters related to agent.mode,agent.creds, agent.namespace, agent.server.address.
133
133
```
134
134
agent.keep-alive-ping-interval: 50s
135
135
agent.mode: managed
@@ -147,13 +147,13 @@ Update the configMap with name `argocd-agent-params` with parameters related to
147
147
agent.tls.root-ca-secret-name: argocd-agent-ca
148
148
agent.tls.secret-name: argocd-agent-client-tls
149
149
```
150
- Also Update RBAC, rolebinding/clusterrolebinding with ` workload-namespace ` , if pod is facing rbac issues.
150
+ Also Update RBAC, rolebinding/clusterrolebinding with ` workload-namespace ` , if pod is facing rbac issues.
151
151
152
152
153
153
154
154
### Configure Agent in Autonomous mode
155
155
156
- Before installing agent resources create
156
+ Before installing agent resources create
157
157
Create a TLS secret containing the issued certificate for agent
158
158
159
159
Create the PKI on the agent:
@@ -162,9 +162,9 @@ Run this command while connected to principal
162
162
argocd-agentctl pki issue agent <agent-name> --principal-context <principal context> --agent-context <workload context> --agent-namespace argocd --upsert
163
163
```
164
164
165
- Apply the installation manifests for argocd agent
165
+ Apply the installation manifests for argocd agent replacing < release-branch > with the release that you wish to use:
166
166
```
167
- oc apply -n argocd -k 'https://github.com/argoproj-labs/argocd-agent/install/kubernetes/agent?ref=main '
167
+ oc apply -n argocd -k 'https://github.com/argoproj-labs/argocd-agent/install/kubernetes/agent?ref=<release-branch> '
168
168
```
169
169
This should create all the required agent related resources.
170
170
@@ -179,7 +179,7 @@ Update the configMap with name `argocd-agent-params` with parameters related to
179
179
```
180
180
data:
181
181
agent.keep-alive-ping-interval: 50s
182
- agent.tls.client.insecure: 'false'
182
+ agent.tls.client.insecure: 'false'
183
183
agent.server.port: '443'
184
184
agent.tls.root-ca-path: ''
185
185
agent.tls.client.cert-path: ''
@@ -196,7 +196,7 @@ data:
196
196
```
197
197
198
198
199
- #### Troubleshooting
199
+ #### Troubleshooting
200
200
___
201
201
202
202
1 . If pod fails to come up with error
@@ -217,4 +217,4 @@ kubectl patch clusterrolebinding argocd-agent-agent --type='json' -p='[{"op": "r
217
217
```
218
218
Unable to create application: app is not allowed in project "default", or the project does not exist
219
219
```
220
- refer to doc for [ AppProject Synchronization] ( https://argocd-agent.readthedocs.io/latest/user-guide/appprojects/#managed-agent-mode ) .
220
+ refer to doc for [ AppProject Synchronization] ( https://argocd-agent.readthedocs.io/latest/user-guide/appprojects/#managed-agent-mode ) .
0 commit comments