You signed in with another tab or window.Reload to refresh your session.You signed out in another tab or window.Reload to refresh your session.You switched accounts on another tab or window.Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: _docs/administration/codefresh-runner.md
+42-44Lines changed: 42 additions & 44 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,25 +9,25 @@ toc: true
9
9
10
10
11
11
12
-
Install the Codefresh Runner on your Kubernetes cluster to run pipelines and access secure internal services without compromising on premise security requirements. These pipelines run on your infrastructure, even behind the firewall, and keep code on your Kubernetes cluster.
12
+
Install the Codefresh Runner on your Kubernetes cluster to run pipelines and access secure internal services without compromising on-premises security requirements. These pipelines run on your infrastructure, even behind the firewall, and keep code on your Kubernetes cluster.
13
13
14
14
[Skip to quick installation→](#installation-with-the-quick-start-wizard)
15
15
16
-
>Notice thata runner installation is needed for each clusterthat will_run_ Codefresh pipelines. A runner is**not** needed
17
-
in clustersthat areused for_deployment_. It is possible to deploy applications ondifferentclusters other than the ones the runner isrunning on.
16
+
>***Note:**a runner installation is needed for each cluster_running_ Codefresh pipelines. A runner is**not** needed
17
+
in clusters used for_deployment_. It is possible to deploy applications on clusters other than the ones the runner isdeployed on.*
18
18
19
-
The installation process takes care of allthe componentsof the runner as well as theother resources (config-maps, secrets, volumes) needed by them.
19
+
The installation process takes care of allrunner componentsandotherrequiredresources (config-maps, secrets, volumes).
20
20
21
21
##Prerequisites
22
22
23
-
In order touse the Codefresh runneryou needthe following:
23
+
Touse the Codefresh runner the following is required:
24
24
25
-
1. A Kubernetes cluster with outgoingInternet access (with version later than 1.10). Each node should have 50GB disk size.
26
-
1. A container runtime such as[docker](https://kubernetes.io/blog/2020/12/02/dockershim-faq/),[containerd](https://containerd.io/) or[cri-o](https://cri-o.io/). Note that the runner is**NOT** dependent on any special dockershim features, so any compliant container runtimewill work.
27
-
1. A[Codefresh account]({{site.baseurl}}/docs/getting-started/create-a-codefresh-account/) with the Hybrid feature enabled.
28
-
1. A[Codefresh CLI token]({{site.baseurl}}/docs/integrations/codefresh-api/#authentication-instructions) that will be used to authenticate your Codefresh account.
25
+
1. A Kubernetes cluster with outgoinginternet access (for version later than 1.10). Each node should have 50GB disk size.
26
+
2. A container runtime, such as[docker](https://kubernetes.io/blog/2020/12/02/dockershim-faq/),[containerd](https://containerd.io/) or[cri-o](https://cri-o.io/). Note that the runner is**not** dependent on any special dockershim features, so any compliant container runtimeis acceptable.
27
+
3. A[Codefresh account]({{site.baseurl}}/docs/getting-started/create-a-codefresh-account/) with the Hybrid feature enabled.
28
+
4. A[Codefresh CLI token]({{site.baseurl}}/docs/integrations/codefresh-api/#authentication-instructions) that will be used to authenticate your Codefresh account.
29
29
30
-
Installationcanhappenfrom any workstation or laptopthat hasaccess (i.e. via`kubectl`) to the Kubernetes clusterthat will run Codefresh builds. The Codefresh runner will authenticate to your Codefresh account by using the Codefresh CLI token.
30
+
The runnercanbe installedfrom any workstation or laptopwithaccess (i.e. via`kubectl`) to the Kubernetes clusterrunning Codefresh builds. The Codefresh runner will authenticate to your Codefresh account by using the Codefresh CLI token.
You can obtain an API Key from your[user settings page](https://g.codefresh.io/user/settings).
45
45
46
-
Notice thataccess to the Codefresh CLI is only needed once during the Runner installation. After that, the Runner will authenticate on it own using the details provided. You do*NOT* need to install the Codefresh CLI on the cluster that is running Codefresh pipelines.
46
+
***Note:**access to the Codefresh CLI is only needed once during the Runner installation. After that, the Runner will authenticate on it own using the details provided. You do NOT need to install the Codefresh CLI on the cluster that is running Codefresh pipelines.*
47
47
48
48
Then run the wizard with the following command
49
49
@@ -57,7 +57,7 @@ or
57
57
codefresh runner init --token <my-token>
58
58
```
59
59
60
-
The wizard will askyou some basic questions and proceed with the installation.
60
+
Brefore proceeding with installation, the wizard asksyou some basic questions.
61
61
62
62
{% include image.html
63
63
lightbox="true"
@@ -68,7 +68,7 @@ The wizard will ask you some basic questions and proceed with the installation.
68
68
max-width="100%"
69
69
%}
70
70
71
-
The wizardwillalsocreate andrun a sample pipeline that you can see in your Codefresh UI
71
+
The wizard alsocreates andruns a sample pipeline that you can see in your Codefresh UI.
72
72
73
73
{% include image.html
74
74
lightbox="true"
@@ -81,18 +81,17 @@ The wizard will also create and run a sample pipeline that you can see in your C
81
81
82
82
That's it! You can now start using the Runner.
83
83
84
-
You can also verify your installation with
85
-
84
+
You can also verify your installation with:
86
85
```
87
86
codefresh runner info
88
87
```
89
88
90
-
During installation youwill alsosee which API token will be used by the runner (if you don't provide one by yourself). The tokenthatisprinted isused by the runner to talk to the Codefresh platformand it carriespermissions thatallows the runner to run pipelines.If younote downthe token, it can later be usedif the deployment is deletedto restore the runner's permissions without creating a new runner installation.
89
+
During installation youcansee which API token will be used by the runner (if you don't provide one). Theprintedtoken is used by the runner to talk to the Codefresh platformcarryingpermissions thatallow the runner to run pipelines. If yousavethe token, it can later be used to restore the runner's permissions without creating a new runner installation, if the deployment is deleted.
91
90
92
91
###Customizing the wizard installation
93
92
94
93
You can customize the wizard installation by passing your own values in the`init` command.
95
-
For example you can specify the runtimethat will be used in advance with:
94
+
For example you can specify the runtimeto be used in advance with:
@@ -104,23 +103,23 @@ Here are all the possible installation options
104
103
{: .table .table-bordered .table-hover}
105
104
| Parameter| Description|
106
105
| --------------| ----------------------------|
107
-
| name| The name of the agentthat will be created.|
108
-
| token| Codefresh account token to be usedto install the Codefresh Runner.|
109
-
| url| Codefresh system custom url.|
106
+
| name| The name of the agentto be created.|
107
+
| token|TheCodefresh account token to be usedfor installing the Codefresh Runner.|
108
+
| url|TheCodefresh system custom url.|
110
109
| kube-context-name| Name of the Kubernetes context on which the runner should be installed|
111
110
| kube-node-selector| The Kubernetes node selector "key=value" to be used by runner resources (default is no node selector)|
112
-
| yes|Use installation defaults (don't ask any questions during the installation)|
113
-
| set-default-runtime| Set this as the default runtime environment for your Codefresh account|
114
-
| exec-demo-pipeline| Run a demo pipeline after the installation completes (true/false)|
115
-
| kube-namespace| Name of the namespaceon whichthe runnershould be installed|
116
-
| tolerations| The Kubernetes tolerations as path to aJSON file to be used by the runner resources (default is no tolerations)|
117
-
| storage-class-name| Set a nameof your custom storage class|
118
-
| kube-config-path| Path to kubeconfig file (default is $HOME/.kube/config)|
119
-
| set-value| Pass a custom parameter/value pair|
120
-
| verbose| Print logs|
121
-
| docker-daemon-access| Allows direct Docker daemon access (default true)|
111
+
| yes|This enables installation defaults (don't ask any questions during the installation)|
112
+
| set-default-runtime| Set this as the default runtime environment for your Codefresh account.|
113
+
| exec-demo-pipeline| Run a demo pipeline after the installation completes. (true/false)|
114
+
| kube-namespace| Name of the namespacewherethe runnerwill be installed.|
115
+
| tolerations| The Kubernetes tolerations asapath to a JSON file to be used by the runner resources. (default: no)|
116
+
| storage-class-name| Set a namefor your custom storage class.|
117
+
| kube-config-path| Path to kubeconfig file (default is $HOME/.kube/config).|
118
+
| set-value| Pass a custom parameter/value pair.|
119
+
| verbose| Print logs.|
120
+
| docker-daemon-access| Allows direct Docker daemon access. (default: true)|
122
121
123
-
Alternatively you can pass a values.yml file to the`init` command that includes all installation settings:
122
+
Alternatively, you can pass a values.yml file to the`init` command that includes all installation settings:
124
123
125
124
```
126
125
codefresh runner init --values values.yaml
@@ -133,10 +132,9 @@ You can use [this example](https://github.com/codefresh-io/venona/blob/release-1
133
132
##Using the Codefresh Runner
134
133
135
134
136
-
Once installed the Runner is fully automated. It polls on its own the Codefresh SAAS (by default every ten seconds) and
137
-
creates automatically all resources needed for running pipelines.
135
+
Once installed, the Runner is fully automated. It polls the Codefresh SAAS (by default every ten seconds) on its own and automatically creates all resources needed for running pipelines.
138
136
139
-
Once installation is complete, you should see the cluster of the runner as a new[Runtime environment](https://g.codefresh.io/account-admin/account-conf/runtime-environments) in Codefreshat your*Account Settings*, in the respective tab.
137
+
Once installation is complete, you should see the cluster of the runner as a new[Runtime environment](https://g.codefresh.io/account-admin/account-conf/runtime-environments) in Codefreshin your*Account Settings*, in the respective tab.
140
138
141
139
{% include image.html
142
140
lightbox="true"
@@ -147,7 +145,7 @@ Once installation is complete, you should see the cluster of the runner as a new
147
145
max-width="60%"
148
146
%}
149
147
150
-
If you have multiple environments available, you can change the defaultone(shown with a thin blue border) by clicking on the 3 dot menu on the right of each environment. The Codefresh runner installer comes withan option`set-default` thatwill automatically setas default the new runtime environment.
148
+
If you have multiple environments available, you can change the default (shown with a thin blue border) by clicking on the 3 dot menu on the right of each environment. The Codefresh runner installer comes witha`set-default`optionthatis automatically setby default in the new runtime environment.
151
149
152
150
You can even override the runtime environment for a specific pipeline by specifying in the respective section in the[pipeline settings]({{site.baseurl}}/docs/configure-ci-cd-pipeline/pipelines/).
153
151
@@ -185,25 +183,25 @@ In the same manner you can list secrets, config-maps, logs, volumes etc. for the
185
183
186
184
##Removing the Codefresh runner
187
185
188
-
You can uninstall the Codefresh runner from your cluster by running
186
+
You can uninstall the Codefresh runner from your cluster by running:
189
187
190
188
```
191
189
codefresh runner delete
192
190
```
193
191
194
-
A wizard similar to the installationone, will ask you questions regarding your cluster before finishing with the removal.
192
+
A wizard, similar to the installationwizard, will ask you questions regarding your cluster before finishing with the removal.
195
193
196
-
Like the installation wizard you can pass the following options in advance as command line parameters:
194
+
Like the installation wizard, you can pass the following options in advance as command line parameters:
197
195
198
196
{: .table .table-bordered .table-hover}
199
197
| Parameter| Description|
200
198
| --------------| ----------------------------|
201
-
| name| The name of the agentthat will be created.|
202
-
| url| Codefresh system custom url.|
203
-
| kube-context-name| Name of the Kubernetes context on which the runner should be installed|
199
+
| name| The name of the agentto be created.|
200
+
| url|TheCodefresh system custom url.|
201
+
| kube-context-name| Name of the Kubernetes context on which the runner should be installed.|
204
202
| kube-namespace| Name of the Kubernetes namespace from which the Codefresh agent and runtime will be removed.|
205
203
| kube-config-path| Path to kubeconfig file (default is $HOME/.kube/config)|
206
-
| verbose| Print logs|
204
+
| verbose| Print logs.|
207
205
208
206
##System requirements
209
207
@@ -228,9 +226,9 @@ The following table shows **MINIMUM** resources for each component:
228
226
|`dind-volume-provisioner`| 300m| 400Mi| Doesn't need PV| Pod| Yes|
229
227
|`dind-lv-monitor`| 300m| 400Mi| Doesn't need PV| DaemonSet| Yes|
230
228
231
-
Components that are always on consume resources all the time. Components that are not always on only consumeresource when pipelines are running (they are created and destroyed automatically for each pipeline).
229
+
Components that are always on consume resources all the time. Components that are not always on only consumeresources when pipelines are running (they are created and destroyed automatically for each pipeline).
232
230
233
-
Node size and count willentirelydepend on how many pipelines you want to be “ready” for and how many will use “burst” capacity.
231
+
Node size and count will depend entirely on how many pipelines you want to be “ready” for and how many will use “burst” capacity.
234
232
235
233
* Ready (nodes): Lower initialization time and faster build times.
236
234
* Burst (nodes): High initialization time and slower build times. (Not recommended)