Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Update runtime-prerequisites.md#1223

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged
NimRegev merged 9 commits intomasterfromgitops-argo-project-crds
Mar 23, 2025
Merged
Changes fromall commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
89 changes: 52 additions & 37 deletions_docs/installation/gitops/runtime-prerequisites.md
View file
Open in desktop
Original file line numberDiff line numberDiff line change
Expand Up@@ -10,17 +10,50 @@ Before installing GitOps Runtimes, ensure you meet the [system requirements]({{s
## Prerequisites summary
This table lists the prerequisites for installing a GitOps Runtime, depending on the installation mode.

{% if page.collection != site.gitops_collection %}
{: .table .table-bordered .table-hover}
| **Prerequisite** | **Runtime with existing Argo CD** | **Runtime with new Argo CD** |{% if page.collection != site.gitops_collection %} **Runtime with Community Argo CD** |{% endif %}
|--------------------|---------------------------|----------------------------|{% if page.collection != site.gitops_collection %} ----------------------------|{% endif %}
| [Switch ownership of Argo Project CRDs](#switch-ownership-of-argo-project-crds) | ✅ | ✅ |{% if page.collection != site.gitops_collection %}✅ |{% endif %}
| [Configure connectivity with Argo CD services](#configure-connectivity-with-argo-cd-services-existing-argo-only) | ✅ | - | {% if page.collection != site.gitops_collection %}-|{% endif %}
| [Verify Argo CD root path configuration](#verify-argo-cd-root-path-configuration-existing-argo-only) | ✅ | - | {% if page.collection != site.gitops_collection %}-|{% endif %}
| [Remove Argo Project and SealedSecret components](#remove-argo-project-and-sealedsecret-components-new-argo-only) | - | ✅ | {% if page.collection != site.gitops_collection %}-|{% endif %}
{% if page.collection != site.gitops_collection %}| [Align Argo CD chart’s minor versions](#align-argo-cd-charts-minor-versions-community-argo-only) | - | - | ✅ |
| [Set Community Argo CD resource tracking to label](#set-resource-tracking-to-label-for-existing-argo-cd-instance-community-argo-only) | - | - | ✅ |{% endif %}
| **Prerequisite** | **Runtime with existing Argo CD** | **Runtime with new Argo CD** |**Runtime with Community Argo CD** |
|--------------------|---------------------------|----------------------------| ----------------------------|
| [Remove Argo Project and SealedSecret components](#remove-argo-project-and-sealedsecret-components-new-argo-only) | ✅ | ✅ | -|
| [Switch ownership of Argo Project CRDs](#switch-ownership-of-argo-project-crds) | - | ✅ |✅ |
| [Configure connectivity with Argo CD services](#configure-connectivity-with-argo-cd-services-existing-argo-only) | ✅ | - | -|
| [Verify Argo CD root path configuration](#verify-argo-cd-root-path-configuration-existing-argo-only) | ✅ | - | -|
| [Align Argo CD chart’s minor versions](#align-argo-cd-charts-minor-versions-community-argo-only) | - | - | ✅ |
| [Set Community Argo CD resource tracking to label](#set-resource-tracking-to-label-for-existing-argo-cd-instance-community-argo-only) | - | - | ✅ |
{% endif %}

{% if page.collection == site.gitops_collection %}
{: .table .table-bordered .table-hover}
| **Prerequisite** | **Runtime with existing Argo CD** | **Runtime with new Argo CD** |
|--------------------|---------------------------|----------------------------|
| [Remove Argo Project and SealedSecret components](#remove-argo-project-and-sealedsecret-components-new-argo-only) | ✅ | ✅ |
| [Configure connectivity with Argo CD services](#configure-connectivity-with-argo-cd-services-existing-argo-only) | ✅ | - |
| [Verify Argo CD root path configuration](#verify-argo-cd-root-path-configuration-existing-argo-only) | ✅ | - |
{% endif %}

{% if page.collection == site.gitops_collection %}
## Remove Argo Project and SealedSecret components
For GitOps Runtime installation with _an existing Argo CD instance, the target cluster should not have_:
* Argo Project components:
* Argo Workflows
* Argo Events
* Argo Rollouts
* SealedSecret controller components
{% endif %}

{% if page.collection != site.gitops_collection %}
## Remove Argo Project and SealedSecret components
For GitOps Runtime installation, the _target cluster should not have_:
* SealedSecret controller components
* For an _existing Argo CD instance_:
* Argo Workflows
* Argo Events
* Argo Rollouts
* For a _new Argo CD instance_:
* Argo Rollouts
* Argo CD
* Argo Events
* Argo Workflows

## Switch ownership of Argo Project CRDs
If you have Argo Project CRDs on your cluster, you must decide how to manage them when installing the GitOps Runtime.
Expand All@@ -29,38 +62,24 @@ The table below lists the options available depending on your installation mode.
{: .table .table-bordered .table-hover}
| **Option** | **Description** | **Applicable Installation Modes** |
|------------|---------------|---------------------------------|
| **Adopt all Argo Project CRDs** | Transfers ownership of all CRDs to the GitOps Runtime, ensuring they are automatically upgraded with the Runtime. | {::nomarkdown}<ul><li>Runtime with new Argo CD</li>{% if page.collection != site.gitops_collection %}<li>Runtime alongside Community Argo CD</li>{% endif %}</ul>{:/} |
| **Adopt all Argo Project CRD except Argo CD CRDs** | Transfers ownership of Workflows, Rollouts, and Events CRDs to the GitOps Runtime but leaves Argo CD CRDs managed by an existing Argo CD installation. | {::nomarkdown}<ul><li>Runtime with existing Argo CD</li></ul>{:/} |
| **Adopt only Argo Rollout CRDs** | Transfers ownership of only Rollout CRDs to the GitOps Runtime. | {::nomarkdown}<ul><li>Runtime with existing Argo CD</li><li>Runtime with new Argo CD</li>{% if page.collection != site.gitops_collection %}<li>Runtime alongside Community Argo CD</li>{% endif %}</ul>{:/} |
| **Handle CRDs outside the GitOps Runtime** | Manage CRDs externally, by disabling installation for each type of CRD in the Helm chart. This options requires to manually upgrade and maintain the CRDs. | {::nomarkdown}<ul><li>Runtime with existing Argo CD</li><li>Runtime with new Argo CD</li>{% if page.collection != site.gitops_collection %}<li>Runtime alongside Community Argo CD</li>{% endif %}</ul>{:/}|

| **Adopt all Argo Project CRDs** | Transfers ownership of all CRDs to the GitOps Runtime, ensuring they are automatically upgraded with the Runtime. | {::nomarkdown}<ul><li>Runtime with new Argo CD</li><li>Runtime alongside Community Argo CD</li></ul>{:/} |
| **Adopt only Argo Rollout CRDs** | Transfers ownership of only Rollout CRDs to the GitOps Runtime. | {::nomarkdown}<ul><li>Runtime with new Argo CD</li><li>Runtime alongside Community Argo CD</li></ul>{:/} |
| **Handle CRDs outside the GitOps Runtime** | Manage CRDs externally, by disabling installation for each type of CRD in the Helm chart. | {::nomarkdown}<ul><li>Runtime with new Argo CD</li><li>Runtime alongside Community Argo CD</li></ul>{:/}|


### Option 1: Adopt all Argo Project CRDs
### Option: Adopt all Argo Project CRDs
Adopt all Argo Project CRDs to transfer their ownership to the GitOps Runtime.
The GitOps Runtime manages them as part of the GitOps Runtime Helm chart:
* The CRDs are automatically upgraded whenever the Runtime is upgraded.
* They remain compatible with the GitOps environment.


##### Script to adopt all Argo Project CRDs
* Run this script _before_ installation:
```
curl https://raw.githubusercontent.com/codefresh-io/gitops-runtime-helm/main/scripts/adopt-crds.sh | bash -s <runtime-helm-release name> <runtime-namespace>
```


### Option 2: Adopt All CRDs except Argo CD CRDs (Existing Argo CD only)
If you are installing the GitOps Runtime with an existing Argo CD instance, you can adopt all Argo Project CRDs, excluding Argo CD CRDs.
This ensures that:
* Workflows, Rollouts, and Events CRDs are managed by the GitOps Runtime.
* Argo CD CRDs remain under the control of your existing Argo CD installation, avoiding conflicts.

##### Script to exclude Argo CD CRDs
Run this script before installation:


### Option 3: Adopt only Argo Rollout CRDs
### Option: Adopt only Argo Rollout CRDs
Adopting only Argo Rollouts CRDs ensures that there is only one active Argo Rollouts controller active on the cluster with the GitOps Runtime.


Expand All@@ -74,14 +93,16 @@ kubectl annotate --overwrite crds $(kubectl get crd | grep argoproj.io | awk '{p
kubectl annotate --overwrite crds $(kubectl get crd | grep argoproj.io | awk '{print $1}' | xargs) meta.helm.sh/release-namespace=$NAMESPACE
```

### Option 4: Handle Argo Project CRDs outside of the Runtime chart
### Option: Handle Argo Project CRDs outside of the Runtime chart

* Disable CRD installation under the relevant section for each of the Argo Projects in the Helm chart:<br>
`--set <argo-project>.crds.install=false`<br>
where:<br>
`<argo-project>` is the Argo Project component: `argo-cd`, `argo-workflows`, `argo-rollouts` and `argo-events`.


See [Argo's readme on Helm charts](https://github.com/argoproj/argo-helm/blob/main/README.md){:target="\_blank"}.
{% endif %}

## Configure connectivity with Argo CD services (Existing Argo only)

Expand All@@ -95,14 +116,15 @@ There are two options to configure service discovery:
* Auto-detection via labels
* Configuring service names and ports in the Runtime's `values.yaml` file.


### Configure auto-detect for Argo CD services
Assign the correct labels to the Argo CD services for the GitOps Runtime to auto-detect them.
* `argocd-server`: `app.kubernetes.io/component=server,app.kubernetes.io/part-of=argocd`
* `argocd-repo-server`: `app.kubernetes.io/component=repo-server,app.kubernetes.io/part-of=argocd`
* `argocd-redis`: `app.kubernetes.io/component=redis,app.kubernetes.io/part-of=argocd`

Run this script to verify if the labels are correctly assigned:
<!--- add the script -->

<!---Run this script to verify if the labels are correctly assigned:add the script -->

### Manually configure service names and ports in values.yaml
If auto-detection is not feasible, configure the names and ports for each of the Argo CD services in the Runtime's `values.yaml` file located [here](https://github.com/codefresh-io/gitops-runtime-helm/blob/main/charts/installation/gitops/){:target="\_blank"}.
Expand DownExpand Up@@ -138,13 +160,6 @@ global:
...
```

## Remove Argo Project and SealedSecret components (New Argo only)
For GitOps Runtime installation with a new Argo CD instance, the _target cluster should not have_:
* Argo Project components: Argo Rollouts, Argo CD, Argo Events, and Argo Workflows.
* SealedSecret controller components.



{% if page.collection != site.gitops_collection %}
## Align Argo CD chart's minor versions (Community Argo only)
To avoid potentially incompatible changes or mismatches, ensure that the Runtime installation with an existing Argo CD instance uses the same upstream version of Argo CD used by Codefresh.
Expand Down

[8]ページ先頭

©2009-2025 Movatter.jp