diff --git a/_data/home-content.yml b/_data/home-content.yml index 009b00bbc..8b773f8e5 100644 --- a/_data/home-content.yml +++ b/_data/home-content.yml @@ -224,22 +224,17 @@ links: - title: Installation environments localurl: /docs/installation/installation-options/ - - title: Codefresh Runner CI/CD installation + - title: Codefresh Runner installation localurl: /docs/installation/codefresh-runner/ - - title: On-Premises CI/CD installation + - title: On-Premises installation localurl: /docs/installation/codefresh-on-prem/ - - title: On-Premises CI/CD upgrade + - title: On-Premises upgrade localurl: /docs/installation/codefresh-on-prem-upgrade/ - - title: Hosted GitOps Runtime installation - localurl: /docs/installation/hosted-runtime/ - - title: Hybrid GitOps Runtime installation - localurl: /docs/installation/hybrid-gitops/ - - title: Monitoring & managing GitOps Runtimes - localurl: /docs/installation/monitor-manage-runtimes/ - - title: Adding external clusters to GitOps Runtimes - localurl: /docs/installation/managed-cluster/ - - title: Adding Git Sources to GitOps Runtimes - localurl: /docs/installation/git-sources/ + - title: Hosted GitOps installation + localurl: /docs/installation/gitops/hosted-runtime/ + - title: Hybrid GitOps installation + localurl: /docs/installation/gitops/hybrid-gitops/ + - title: Administration diff --git a/_data/nav.yml b/_data/nav.yml index 73df831f7..7561d3818 100644 --- a/_data/nav.yml +++ b/_data/nav.yml @@ -481,26 +481,29 @@ - title: Installation url: "/installation" pages: - - title: Installation environments + - title: Environments url: "/installation-options" - title: Runtime architectures url: "/runtime-architecture" - - title: Codefresh Runner installation + - title: Codefresh Runner url: "/codefresh-runner" - - title: Hosted GitOps Runtime installation - url: "/hosted-runtime" - - title: Hybrid GitOps Runtime installation - url: "/hybrid-gitops" - title: On-Premises installation url: "/codefresh-on-prem" - title: On-Premises upgrade url: "/codefresh-on-prem-upgrade" - - title: Monitoring & managing GitOps Runtimes - url: "/monitor-manage-runtimes" - - title: Add external clusters to GitOps Runtimes - url: "/managed-cluster" - - title: Add Git Sources to to GitOps Runtimes - url: "/git-sources" + - title: GitOps + url: + sub-pages: + - title: Hosted GitOps Runtime + url: "/hosted-runtime" + - title: Hybrid GitOps Runtime + url: "/hybrid-gitops" + - title: Monitoring & managing GitOps Runtimes + url: "/monitor-manage-runtimes" + - title: Add external clusters to GitOps Runtimes + url: "/managed-cluster" + - title: Add Git Sources to to GitOps Runtimes + url: "/git-sources" - title: Administration diff --git a/_docs/installation/upgrade-gitops-cli.md b/_docs/clients/upgrade-gitops-cli.md similarity index 91% rename from _docs/installation/upgrade-gitops-cli.md rename to _docs/clients/upgrade-gitops-cli.md index 30e06096b..4a5e1a1e5 100644 --- a/_docs/installation/upgrade-gitops-cli.md +++ b/_docs/clients/upgrade-gitops-cli.md @@ -1,7 +1,8 @@ --- -title: "Download/upgrade Codefresh CLI" -description: "Have the latest version of the Codefresh CLI for GitOps runtimes" +title: "Download/upgrade GitOps CLI" +description: "Have the latest version of the GitOps CLI" group: installation +sub_group: gitops toc: true --- @@ -11,7 +12,7 @@ When newer versions are available, the CLI automatically notifies you through a ## GitOps CLI installation modes -The table lists the modes available to install the Codefresh CLI. +The table lists the modes available to install the GitOps CLI. {: .table .table-bordered .table-hover} | Install mode | OS | Commands | @@ -23,7 +24,7 @@ The table lists the modes available to install the Codefresh CLI. | `brew` | N/A| `brew tap codefresh-io/cli && brew install cf2`|```` ## Install the GitOps CLI -Install the Codefresh CLI using the option that best suits you: `curl`, `brew`, or standard download. +Install the GitOps CLI using the option that best suits you: `curl`, `brew`, or standard download. If you are not sure which OS to select for `curl`, simply select one, and Codefresh automatically identifies and selects the right OS for CLI installation. 1. Do one of the following: @@ -83,5 +84,5 @@ You can upgrade to a specific version if you so require, or download the latest * `` is the path to the destination file, for example, `/cli-download`. ## Related articles -[Hosted GitOps Runtime setup]({{site.baseurl}}/docs/installation/hosted-runtime) -[Hybrid GitOps Runtime installation]({{site.baseurl}}/docs/installation/hybrid-gitops) +[Hosted GitOps Runtime setup]({{site.baseurl}}/docs/installation/gitops/hosted-runtime) +[Hybrid GitOps Runtime installation]({{site.baseurl}}/docs/installation/gitops/hybrid-gitops) diff --git a/_docs/getting-started/concepts.md b/_docs/getting-started/concepts.md index 66b1e573a..21943d500 100644 --- a/_docs/getting-started/concepts.md +++ b/_docs/getting-started/concepts.md @@ -18,8 +18,8 @@ A single Runtime can connect to and manage multiple remote clusters. See: [GitOps runtime architecture]({{site.baseurl}}/docs/installation/runtime-architecture) -[Hybrid GitOps Runtime installation]({{site.baseurl}}/docs/installation/hybrid-gitops) -[Hosted GitOps Runtime installation]({{site.baseurl}}/docs/installation/hosted-runtime) +[Hybrid GitOps Runtime installation]({{site.baseurl}}/docs/installation/gitops/hybrid-gitops) +[Hosted GitOps Runtime installation]({{site.baseurl}}/docs/installation/gitops/hosted-runtime) diff --git a/_docs/installation/git-sources.md b/_docs/installation/gitops/git-sources.md similarity index 86% rename from _docs/installation/git-sources.md rename to _docs/installation/gitops/git-sources.md index b51913a84..932a77078 100644 --- a/_docs/installation/git-sources.md +++ b/_docs/installation/gitops/git-sources.md @@ -1,19 +1,20 @@ --- title: "Add Git Sources to GitOps Runtimes" -description: "" +description: "Manage Git Sources storing resources" group: installation +sub_group: gitops toc: true --- A Git Source is the equivalent of an Argo CD application that tracks a Git repository and syncs the desired state of the repo to the destination K8s cluster. In addition to application resources, the Git Source can store resources for GitOps Runtimes, and CI/CD entities such as delivery pipelines, Workflow Templates, workflows, and applications. -Provisioning a Runtime automatically creates a Git Source that stores resources for the Runtime and for the demo CI pipelines that are optionally installed with the Runtime. Every Git Source is associated with a Runtime. You can add Git Sources at any time, to the same or to different Runtimes. +Provisioning a GitOps Runtime automatically creates a Git Source that stores resources for the Runtime and for the demo CI pipelines that are optionally installed with the Runtime. Every Git Source is associated with a GitOps Runtime. You can add more Git Sources at any time, to the same or to different Runtimes. -Once you create a Git Source for a Runtime, you can store resources for CI/CD entities associated with it. For example, when creating pipelines or applications, you can select the Git Source to which to store manifest definitions. +Once you create a Git Source for a GitOps Runtime, you can store resources for CI/CD entities associated with it. For example, when creating pipelines or applications, you can select the Git Source to which to store manifest definitions. -### View Git Sources and definitions +## View Git Sources and definitions Drill down on a runtime in List View to see its Git Sources. 1. In the Codefresh UI, go to the [GitOps Runtimes](https://g.codefresh.io/2.0/account-settings/runtimes){:target="\_blank"} page. @@ -26,14 +27,14 @@ Drill down on a runtime in List View to see its Git Sources. url="/images/runtime/git-source-list.png" alt="Git Sources in runtime" caption="Git Sources in runtime" - max-width="30%" + max-width="60%" %} {:start="3"} 1. To go to the repo tracked by the Git Source, in the Repo column, mouse over the repo name and select **Go to Git repo**. 1. To see the definitions for the Git Source, select the three dots at the end of the row. -### Create a Git Source +## Create a Git Source Create Git Sources for any provisioned Runtime. The Git Sources are available to store resources for pipelines or applications when you create them. >Make sure you are in the List View to create Git Sources. @@ -49,7 +50,7 @@ Create Git Sources for any provisioned Runtime. The Git Sources are available t url="/images/runtime/create-git-source.png" alt="Create Git Source" caption="Create Git Source" - max-width="30%" + max-width="60%" %} * **Git Source Name**: The name of the Git Source, which must be unique within the cluster. @@ -69,7 +70,7 @@ Create Git Sources for any provisioned Runtime. The Git Sources are available t {:start="4"} 1. Select **+ Create Git Source**. -### Edit Git Source definitions +## Edit Git Source definitions Edit an existing Git Source by changing the source and destination definitions. > You cannot change the name of the Git Source. @@ -89,7 +90,7 @@ Edit an existing Git Source by changing the source and destination definitions. {:start="4"} 1. Change the **Source** and **Destination** definitions for the Git Source, and select **Save**. -### View/download logs for a Git Source +## View/download logs for a Git Source View online logs for any Git Source associated with a Runtime, and if needed, download the log file for offline viewing and analysis. Online logs show up to 1000 of the most recent events (lines), updated in real time. Downloaded logs include all the events, from the application launch to the date and time of download. @@ -104,7 +105,7 @@ Online logs show up to 1000 of the most recent events (lines), updated in real t url="/images/runtime/git-source-view-logs.png" alt="Edit Git Source" caption="Edit Git Source" - max-width="30%" + max-width="60%" %} {:start="4"} @@ -126,8 +127,8 @@ Online logs show up to 1000 of the most recent events (lines), updated in real t 1. To download the log, click **Download**. The file is downloaded with `.log` extension. -### What to read next -[Monitoring & managing GitOps Runtimes]({{site.baseurl}}/docs/installation/monitor-manage-runtimes/) +## Related articles +[Monitoring & managing GitOps Runtimes]({{site.baseurl}}/docs/installation/gitops/monitor-manage-runtimes/) [Shared configuration repo]({{site.baseurl}}/docs/reference/shared-configuration) diff --git a/_docs/installation/hosted-runtime.md b/_docs/installation/gitops/hosted-runtime.md similarity index 93% rename from _docs/installation/hosted-runtime.md rename to _docs/installation/gitops/hosted-runtime.md index cfc64c7e7..11bd496ea 100644 --- a/_docs/installation/hosted-runtime.md +++ b/_docs/installation/gitops/hosted-runtime.md @@ -2,12 +2,13 @@ title: "Hosted GitOps Runtime setup" description: "Provision Hosted GitOps environment" group: installation +sub_group: gitops toc: true --- -Set up your hosted environment with the Hosted GitOps Runtime to leverage extensive CD capabilities. +Set up your environment with the Hosted GitOps Runtime to leverage extensive CD capabilities. ## System requirements for Hosted GitOps Runtimes @@ -132,10 +133,10 @@ max-width="70%" where: `hosted-codefresh` is the name of your Hosted GitOps Runtime, automatically assigned by Codefresh. 1. In the Codefresh UI, return to Codefresh [Home](https://g.codefresh.io/2.0/?time=LAST_7_DAYS){:target="\_blank"}. -1. Refresh the page and start with _1. Provision hosted runtime_ above. +1. Refresh the page and start with [Step 1: Install Hosted GitOps Runtime](#step-1-install-hosted-gitops-runtime). -### Step 2: Connect Git provider +## Step 2: Connect Git provider Connect your Hosted GitOps Runtime to a Git provider for Codefresh to create the required Git repos. First authorize access to your Git provider through an OAuth token, and then select the Git organizations or accounts in which to create the required Git repos. >Only authorized organizations are displayed in the list. To authorize organizations for the Codefresh application in GitHub, see [Authorize organizations/projects]({{site.baseurl}}/docs/administration/hosted-authorize-orgs/). @@ -240,10 +241,10 @@ max-width="80%" %} -### 3. Connect a Kubernetes cluster +## 3. Connect a Kubernetes cluster Connect a destination cluster to the Hosted GitOps Runtime and register it as a managed cluster. Deploy applications and configuration to the cluster. -For managed cluster information and installing Argo Rollouts, see [Add and manage external clusters]({{site.baseurl}}/docs/runtime/managed-cluster/). +For managed cluster information and installing Argo Rollouts, see [Add and manage external clusters]({{site.baseurl}}/docs/installation/gitops/managed-cluster/). {% include @@ -292,10 +293,7 @@ max-width="70%" 1. Configure access to the IP addresses required. See [Codefresh IP addresses]({{site.baseurl}}/docs/administration/platform-ip-addresses/). If you could not connect a cluster, you may not have the latest version of the CLI: -* If you have installed the Codefresh CLI already, make sure you have the latest version: - `cf version` - To compare with the latest version from Codefresh, [click here](https://github.com/codefresh-io/cli-v2/releases){:target="\_blank"}. -* [Download the CLI]({{site.baseurl}}/docs/clients/csdp-cli/). +[Upgrade the GitOps CLI]({{site.baseurl}}/docs/clients/upgrade-gitops-cli/). You have completed setting up your Hosted GitOps Runtime. You are ready to create applications, and connect third-party CI tools for image enrichment. @@ -309,15 +307,15 @@ Optional. Create an application in Codefresh, deploy it to the cluster, and trac {:start="2"} 2. In the Codefresh UI, view your application in the [Applications dashboard](https://g.codefresh.io/2.0/applications-dashboard){:target="\_blank"}. -### (Optional) Connect CI +## (Optional) Connect CI Optional. Integrate Codefresh with the third-party tools you use for CI to enrich image information in deployments. [Image enrichment with integrations]({{site.baseurl}}/docs/integrations/image-enrichment-overview/) ### Related articles -[Monitoring & managing GitOps Runtimes]({{site.baseurl}}/docs/installation/monitor-manage-runtimes/) -[Add Git Sources to runtimes]({{site.baseurl}}/docs/installation/git-sources/) +[Monitoring & managing GitOps Runtimes]({{site.baseurl}}/docs/installation/gitops/monitor-manage-runtimes/) +[Add Git Sources to runtimes]({{site.baseurl}}/docs/installation/gitops/git-sources/) [Shared configuration repo]({{site.baseurl}}/docs/reference/shared-configuration) -[Home dashboard]({{site.baseurl}}/docs/reporting/home-dashboard/) -[DORA metrics]({{site.baseurl}}/docs/reporting/dora-metrics/) +[Home dashboard]({{site.baseurl}}/docs/dashboards/home-dashboard/) +[DORA metrics]({{site.baseurl}}/docs/dashboards/dora-metrics/) diff --git a/_docs/installation/hybrid-gitops.md b/_docs/installation/gitops/hybrid-gitops.md similarity index 96% rename from _docs/installation/hybrid-gitops.md rename to _docs/installation/gitops/hybrid-gitops.md index 889c8d294..a2325debb 100644 --- a/_docs/installation/hybrid-gitops.md +++ b/_docs/installation/gitops/hybrid-gitops.md @@ -2,33 +2,40 @@ title: "Hybrid GitOps Runtime installation" description: "Provision Hybrid GitOps Runtimes" group: installation +sub_group: gitops toc: true --- Provision one or more Hybrid GitOps Runtimes in your Codefresh account. -Start by reviewing [system requirements](#minimum-system-requirements) for Hybrid GitOps. If you are installing with ingress-controllers, you must configure them as required _before_ starting the installation. +Start by reviewing [system requirements](#minimum-system-requirements) for Hybrid GitOps. +If you are installing with ingress-controllers, you must configure them as required _before_ starting the installation. > To provision a Hosted GitOps Runtime, see [Provision a hosted runtime]({{site.baseurl}}/docs/installation/hosted-runtime/#1-provision-hosted-runtime) in [Set up a hosted (Hosted GitOps) environment]({{site.baseurl}}/docs/installation/hosted-runtime/). **Git providers and Hybrid Runtimes** -Your Codefresh account is always linked to a specific Git provider. This is the Git provider you select on installing the first GitOps Runtime, either Hybrid or Hosted, in your Codefresh account. All the Hybrid Runtimes you install in the same account use the same Git provider. +Your Codefresh account is always linked to a specific Git provider. This is the Git provider you select on installing the first GitOps Runtime, either Hybrid or Hosted, in your Codefresh account. All the Hybrid GitOps Runtimes you install in the same account use the same Git provider. If Bitbucker Server is your Git provider, you must also select the specific server instance to associate with the runtime. >To change the Git provider for your Codefresh account after installation, contact Codefresh support. -**Hybrid Runtimes** - The Hybrid Runtime comprises Argo CD components and Codefresh-specific components. The Argo CD components are derived from a fork of the Argo ecosystem, and do not correspond to the open-source versions available. +**Codefresh and Argo CD s** + The Hybrid GitOps Runtime comprises Argo CD components and Codefresh-specific components. + +Codefresh users rely on our platform to deliver software reliably, and predictably without interruption. +To maintain that high standard, we add several weeks of testing and bug fixes to new versions of Argo before making them available within Codefresh. +Typically, new versions of Argo are available within 30 days of release in Argo. + There are two parts to installing a Hybrid GitOps Runtime: -1. [Installing the Codefresh CLI](#gitops-cli-installation) +1. [Installing the GitOps CLI](#gitops-cli-installation) 2. [Installing the Hybrid GitOps Runtime](#install-hybrid-gitops-runtime), either through the CLI wizard or via silent installation through the installation flags. - The Hybrid GitOps Runtime is installed in a specific namespace on your cluster. You can install more Runtimes on different clusters in your deployment. + The Hybrid GitOps Runtime is installed in a specific namespace on your cluster. You can install more Hybrid GitOps Runtimes on different clusters in your deployment. Every Hybrid GitOps Runtime installation makes commits to three Git repos: * Runtime install repo: The installation repo that manages the Hybrid Runtime itself with Argo CD. If the repo URL does not exist, it is automatically created during installation. - * Git Source repo: Created automatically during Runtime installation. The repo where you store manifests for pipelines and applications. See [Git Sources]({{site.baseurl}}/docs/runtime/git-sources). - * Shared configuration repo: Created for the first GitOps Runtime installed in a user account. The repo stores configuration manifests for account-level resources and is shared with other GitOps Runtimes in the same account. See [Shared configuration repository]({{site.baseurl}}/docs/reference/shared-configuration). + * Git Source repo: Created automatically during Runtime installation. The repo where you store manifests for pipelines and applications. See [Git Sources]({{site.baseurl}}/docs/installation/gitops/git-sources). + * Shared configuration repo: Created for the first GitOps Runtime installed in your account. The repo stores configuration manifests for account-level resources and is shared with other GitOps Runtimes in the same account. See [Shared configuration repository]({{site.baseurl}}/docs/reference/shared-configuration). @@ -760,8 +767,8 @@ The table lists the modes available to install the Codefresh CLI. | `brew` | N/A| `brew tap codefresh-io/cli && brew install cf2`| ### Install the GitOps CLI -Install the Codefresh CLI using the option that best suits you: `curl`, `brew`, or standard download. -If you are not sure which OS to select for `curl`, simply select one, and Codefresh automatically identifies and selects the right OS for CLI installation. +Install the GitOps CLI using the option that best suits you: `curl`, `brew`, or standard download. +If you are not sure which OS to select for `curl`, simply select one, and Codefresh automatically identifies and selects the right OS for the installation. 1. Do one of the following: * For first-time installation, go to the Welcome page, select **+ Install Runtime**. @@ -790,10 +797,10 @@ If you are not sure which OS to select for `curl`, simply select one, and Codefr ## Install Hybrid GitOps Runtime -**Before you begin** +### Before you begin * Make sure you meet the [minimum requirements]({{site.baseurl}}/docs/runtime/requirements/#minimum-requirements) for installation * Make sure you have [Runtime token with the required scopes from your Git provider]({{site.baseurl}}/docs/reference/git-tokens) -* [Download or upgrade to the latest version of the CLI]({{site.baseurl}}/docs/installation/hybrid-gitops/#hybrid-gitops-upgrade-gitops-cli) +* [Download or upgrade to the latest version of the CLI]({{site.baseurl}}/docs/installation/clients/upgrade-gitops-cli) * Review [Hybrid Runtime installation flags](#hybrid-runtime-installation-flags) * For ingress-based runtimes, make sure your ingress controller is configured correctly: * [Ambasador ingress configuration]({{site.baseurl}}/docs/runtime/requirements/#ambassador-ingress-configuration) @@ -808,11 +815,12 @@ If you are not sure which OS to select for `curl`, simply select one, and Codefr
{:/} -**How to** +### How to 1. Do one of the following: - * If this is your first Hybrid Runtime installation, in the Welcome page, select **+ Install Runtime**. - * If you have provisioned a Hybrid Runtime, to provision additional runtimes, in the Codefresh UI, go to [**Runtimes**](https://g.codefresh.io/2.0/account-settings/runtimes){:target="\_blank"}. + * If this is your first Hybrid GitOps installation, in the Welcome page, select **+ Install Runtime**. + * If you have already provisioned a Hybrid GitOps Runtime, to provision additional runtimes, in the Codefresh UI: + On the toolbar, click the **Settings** icon, and expand Runtimes in the sidebar, and select [**GitOps Runtimes**](https://g.codefresh.io/2.0/account-settings/runtimes){:target="\_blank"}. 1. Click **+ Add Runtimes**, and then select **Hybrid Runtimes**. 1. Do one of the following: * CLI wizard: Run `cf runtime install`, and follow the prompts to enter the required values. @@ -840,7 +848,7 @@ For documentation purposes, the flags are grouped into: * Runtime flags, relating to Runtime, cluster, and namespace requirements * Ingress-less flags, for tunnel-based installation * Ingress-controller flags, for ingress-based installation -* Git provider flags +* Git provider and repo flags * Codefresh resource flags {::nomarkdown} @@ -1201,8 +1209,8 @@ Once the Hybrid Runtime is successfully installed, it is provisioned on the Kube {:/}--> -## (Optional) Internal ingress host configuration for existing Hybrid Runtimes -If you already have provisioned Hybrid Runtimes, to use an internal ingress host for app-proxy communication and an external ingress host to handle webhooks, change the specs for the `Ingress` and `Runtime` resources in the Runtime installation repository. Use the examples as guidelines. +## (Optional) Internal ingress host configuration for existing Hybrid GitOps Runtimes +If you already have provisioned Hybrid GitOps Runtimes, to use an internal ingress host for app-proxy communication and an external ingress host to handle webhooks, change the specs for the `Ingress` and `Runtime` resources in the Runtime installation repository. Use the examples as guidelines. `/apps/app-proxy/overlays//ingress.yaml`: change `host` diff --git a/_docs/installation/managed-cluster.md b/_docs/installation/gitops/managed-cluster.md similarity index 82% rename from _docs/installation/managed-cluster.md rename to _docs/installation/gitops/managed-cluster.md index fb0102091..bb5a756b4 100644 --- a/_docs/installation/managed-cluster.md +++ b/_docs/installation/gitops/managed-cluster.md @@ -1,35 +1,36 @@ --- title: "Add external clusters to GitOps Runtimes" -description: "" +description: "Manage multiple remote clusters with single GitOps Runtime" group: installation +sub_group: gitops toc: true --- -Register external clusters to provisioned Hybrid or Hosted GitOps Runtimes in Codefresh. Once you add an external cluster, you can deploy applications to that cluster without having to install Argo CD in order to do so. Manage manage multiple external clusters through a single Runtime. +Register external clusters to provisioned Hybrid or Hosted GitOps Runtimes in Codefresh. Once you add an external cluster, you can deploy applications to that cluster without having to install Argo CD on the clusters in order to do so. Manage multiple external clusters through a single Runtime. -When you add an external cluster to a provisioned Runtime, the cluster is registered as a managed cluster. A managed cluster is treated as any other managed K8s resource, meaning that you can monitor its health and sync status, deploy applications to it, view information in the Applications dashboard, and remove the cluster from the Runtime's managed list. +When you add an external cluster to a provisioned GitOps Runtime, the cluster is registered as a managed cluster. A managed cluster is treated as any other managed K8s resource, meaning that you can monitor its health and sync status, deploy applications to it, view information in the Applications dashboard, and remove the cluster from the Runtime's managed list. Add managed clusters through: -* Codefresh CLI +* GitOps CLI * Kustomize Adding a managed cluster via Codefresh ensures that Codefresh applies the required RBAC resources (`ServiceAccount`, `ClusterRole` and `ClusterRoleBinding`) to the target cluster, creates a `Job` that updates the selected Runtime with the information, registers the cluster in Argo CD as a managed cluster, and updates the platform with the new cluster information. -## Add a managed cluster with Codefresh CLI -Add an external cluster to a provisioned GitOps Runtime through the Codefresh CLI. When adding the cluster, you can also add labels and annotations to the cluster, which are added to the cluster secret created by Argo CD. +## Add a managed cluster with GitOps CLI +Add an external cluster to a provisioned GitOps Runtime through the GitOps CLI. When adding the cluster, you can also add labels and annotations to the cluster, which are added to the cluster secret created by Argo CD. Optionally, to first generate the YAML manifests, and then manually apply them, use the `dry-run` flag in the CLI. **Before you begin** -* For _Hosted_ Runtimes: [Configure access to these IP addresses]({{site.baseurl}}/docs/administration/platform-ip-addresses/) +* For _Hosted GitOps_ Runtimes: [Configure access to these IP addresses]({{site.baseurl}}/docs/administration/platform-ip-addresses/) * Verify that: * Your Git personal access token is valid and has the [required scopes]({{site.baseurl}}/docs/reference/git-tokens) - * You have installed the [latest version of the Codefresh CLI]({{site.baseurl}}/docs/installation/monitor-manage-runtimes/#hybrid-gitops-upgrade-gitops-cli) + * You have installed the [latest version of the Codefresh CLI]({{site.baseurl}}/docs/clients/#upgrade-gitops-cli) **How to** -1. In the Codefresh UI, go to [GitOps Runtimes](https://g.codefresh.io/2.0/account-settings/runtimes){:target="\_blank"}. +1. In the Codefresh UI, on the toolbar, click the **Settings** icon, expand Runtimes in the sidebar, and select [**GitOps Runtimes**](https://g.codefresh.io/2.0/account-settings/runtimes){:target="\_blank"}. 1. From either the **Topology** or **List** views, select the Runtime to which to add the cluster. 1. Topology View: Select {::nomarkdown}{:/}. List View: Select the **Managed Clusters** tab, and then select **+ Add Cluster**. @@ -177,7 +178,7 @@ spec: ``` -The new cluster is registered to the Runtime as a managed cluster. +The new cluster is registered to the GitOps Runtime as a managed cluster. ## Add a managed cluster with Kustomize Create a `kustomization.yaml` file with the information shown in the example below, and run `kustomize build` on it. @@ -223,7 +224,7 @@ resources: ## Work with managed clusters -Work with managed clusters in either the Topology or List Runtime views. For information on Runtime views, see [Runtime views]({{site.baseurl}}/docs/runtime/runtime-views). +Work with managed clusters in either the Topology or List Runtime views. For information on Runtime views, see [Runtime views]({{site.baseurl}}/docs/installation/monitor-manage-runtimes/#gitops-runtime-views). As the cluster is managed through the Runtime, updates to the Runtime automatically updates the components on all the managed clusters that include it. View connection status for the managed cluster, and health and sync errors. Health and sync errors are flagged by the error notification in the toolbar, and visually flagged in the List and Topology views. @@ -232,10 +233,10 @@ View connection status for the managed cluster, and health and sync errors. Heal Applications with `rollout` resources need Argo Rollouts on the target cluster, both to visualize rollouts in the Applications dashboard and control rollout steps with the Rollout Player. If Argo Rollouts has not been installed on the target cluster, it displays **Install Argo Rollouts** button. -Install Argo Rollouts with a single click to execute rollout instructions, deploy the application, and visualize rollout progress in the [Applications dashboard]({{site.baseurl}}/docs/deployment/applications-dashboard/). +Install Argo Rollouts with a single click to execute rollout instructions, deploy the application, and visualize rollout progress in the [Applications dashboard]({{site.baseurl}}/docs/deployment/gitops/applications-dashboard/). -1. In the Codefresh UI, go to [GitOps Runtimes](https://g.codefresh.io/2.0/account-settings/runtimes){:target="\_blank"}. +1. In the Codefresh UI, on the toolbar, click the **Settings** icon, expand Runtimes in the sidebar, and select [**GitOps Runtimes**](https://g.codefresh.io/2.0/account-settings/runtimes){:target="\_blank"}. 1. Select **Topology View**. 1. Select the target cluster, and then select **+ Install Argo Rollouts**. @@ -255,7 +256,7 @@ Remove a cluster from the Runtime's list of managed clusters from the Codefresh > You can also remove it through the CLI. -1. In the Codefresh UI, go to [GitOps Runtimes](https://g.codefresh.io/2.0/account-settings/runtimes){:target="\_blank"}. +In the Codefresh UI, on the toolbar, click the **Settings** icon, expand Runtimes in the sidebar, and select [**GitOps Runtimes**](https://g.codefresh.io/2.0/account-settings/runtimes){:target="\_blank"}. 1. Select either the **Topology View** or the **List View** tabs. 1. Do one of the following: * In the Topology View, select the cluster node from the Runtime it is registered to. @@ -273,8 +274,8 @@ Remove a cluster from the Runtime's list of managed clusters from the Codefresh %} -### Remove a managed cluster through the Codefresh CLI -Remove a cluster from the list managed by the Runtime, through the CLI. +### Remove a managed cluster through the GitOps CLI +Remove a cluster from the list managed by the GitOps Runtime, through the GitOps CLI. * Run: `cf cluster remove --server-url ` @@ -284,5 +285,5 @@ Remove a cluster from the list managed by the Runtime, through the CLI. ## Related articles -[Add Git Sources to GitOps Runtimes]({{site.baseurl}}/docs/installation/git-sources/) -[Monitoring & managing GitOps Runtimes]({{site.baseurl}}/docs/installation/monitor-manage-runtimes/) +[Add Git Sources to GitOps Runtimes]({{site.baseurl}}/docs/installation/gitops/git-sources/) +[Monitoring & managing GitOps Runtimes]({{site.baseurl}}/docs/installation/gitops/monitor-manage-runtimes/) diff --git a/_docs/installation/monitor-manage-runtimes.md b/_docs/installation/gitops/monitor-manage-runtimes.md similarity index 92% rename from _docs/installation/monitor-manage-runtimes.md rename to _docs/installation/gitops/monitor-manage-runtimes.md index 08267a955..d67609286 100644 --- a/_docs/installation/monitor-manage-runtimes.md +++ b/_docs/installation/gitops/monitor-manage-runtimes.md @@ -1,7 +1,8 @@ --- title: "Monitoring & managing GitOps Runtimes" -description: "" +description: "Optimize GitOps Runtimes" group: runtime +sub_group: gitops redirect_from: - /monitor-manage-runtimes/ - /monitor-manage-runtimes @@ -11,7 +12,7 @@ toc: true The **Runtimes** page displays the provisioned GitOps Runtimes in your account, both Hybrid, and the Hosted Runtime if you have one. -View Runtime components and information in List or Topology view formats to monitor and manage them. +View Runtime components and information in List or Topology view formats to manage and monitor them. {% include image.html @@ -23,6 +24,15 @@ View Runtime components and information in List or Topology view formats to moni max-width="70%" %} +Manage provisioned GitOps Runtimes: +* [Add managed clusters to GitOps Runtimes]({{site.baseurl}}/docs/installation/gitops/managed-cluster/) +* [Add and manage Git Sources for GitOps Runtimes]({{site.baseurl}}/docs/installation/gitops/git-sources/) +* [Upgrade GitOps CLI](#hybrid-gitops-upgrade-provisioned-runtimes) +* Upgrade Hybrid GitOps Runtimes +* Uninstall GitOps Runtimes + + + Monitor provisioned GitOps Runtimes for security, health, and sync errors: * (Hybrid and Hosted) View/download logs for Runtimes and for Runtime components @@ -31,16 +41,6 @@ Monitor provisioned GitOps Runtimes for security, health, and sync errors: * (Hybrid) Monitor notifications in the Activity Log -Manage provisioned GitOps Runtimes: -* [Add managed clusters to GitOps Runtimes]({{site.baseurl}}/docs/installation/managed-cluster/) -* [Add and manage Git Sources for GitOps Runtimes]({{site.baseurl}}/docs/installation/git-sources/) -* -* Upgrade GitOps CLI -* Upgrade Hybrid GitOps Runtimes -* Uninstall GitOps Runtimes - - - > Unless specified otherwise, all options are common to both types of GitOps Runtimes. If an option is valid only for Hybrid GitOps, it is indicated as such. @@ -91,7 +91,7 @@ Here is an example of the Topology view for Runtimes. url="/images/runtime/runtime-topology-view.png" alt="Runtime Topology View" caption="Runtime Topology View" - max-width="30%" + max-width="60%" %} Here is a description of the information in the Topology view. @@ -100,12 +100,12 @@ Here is a description of the information in the Topology view. | Topology View Item | Description | | ------------------------| ---------------- | |**Runtime** | ![](../../../images/icons/codefresh-runtime.png?display=inline-block) the provisioned Runtime. Hybrid Runtimes display the name of the K8s API server endpoint with the cluster. Hosted Runtimes display 'hosted'. | -|**Cluster** | The local, and managed clusters if any, for the Runtime. {::nomarkdown}
  • indicates the local cluster, always displayed as `in-cluster`. The in-cluster server URL is always set to `https://kubernetes.default.svc/`.
  • indicates a managed cluster.
  • select to add a new managed cluster.
{:/} To view cluster components, select the cluster. To add and work with managed clusters, see [Adding external clusters to runtimes]({{site.baseurl}}/docs/runtime/managed-cluster). | +|**Cluster** | The local, and managed clusters if any, for the Runtime. {::nomarkdown}
  • indicates the local cluster, always displayed as `in-cluster`. The in-cluster server URL is always set to `https://kubernetes.default.svc/`.
  • indicates a managed cluster.
  • select to add a new managed cluster.
{:/} To view cluster components, select the cluster. To add and work with managed clusters, see [Adding external clusters to runtimes]({{site.baseurl}}/docs/installation/gitops/managed-cluster). | |**Health/Sync status** |The health and sync status of the Runtime or cluster. {::nomarkdown}
  • indicates health or sync errors in the Runtime, or a managed cluster if one was added to the runtime.
    The runtime or cluster node is bordered in red and the name is colored red.
  • indicates that the Runtime is being synced to the cluster on which it is provisioned.
{:/} | |**Search and View options** | {::nomarkdown}
  • Find a Runtime or its clusters by typing part of the Runtime/cluster name, and then navigate to the entries found.
  • Topology view options: Resize to window, zoom in, zoom out, full screen view.
{:/}| ## Managing provisioned GitOps Runtimes -* [Reset shared configuration repository for GitOps Runtimes](#reset-shared-configuration-repository-for-gitpps-runtimes) +* [Reset shared configuration repository for GitOps Runtimes](#reset-shared-configuration-repository-for-gitops-runtimes) * [(Hybrid GitOps) Upgrade GitOps CLI](#hybrid-gitops-upgrade-gitops-cli) * [(Hybrid GitOps) Upgrade provisioned Runtimes](#hybrid-gitops-upgrade-provisioned-runtimes) * [Uninstall provisioned GitOps Runtimes](#uninstall-provisioned-gitops-runtimes) @@ -143,8 +143,8 @@ Upgrade the CLI to the latest version to prevent Runtime installation errors. ### (Hybrid GitOps) Upgrade provisioned Runtimes -Upgrade provisioned Hybrid Runtimes to install critical security updates or the latest versions of all components. Upgrade a provisioned Hybrid Runtime by running a silent upgrade or through the CLI wizard. -If you have managed clusters for the Hybrid Runtime, upgrading the Runtime automatically updates runtime components within the managed cluster as well. +Upgrade provisioned Hybrid Runtimes to install critical security updates or the latest versions of all components. Upgrade a provisioned Hybrid Runtime by running a silent upgrade or through the GitOps CLI wizard. +If you have managed clusters for Hybrid GitOps, upgrading the Runtime automatically updates runtime components within the managed cluster as well. > When there are security updates, the UI displays the alert, _At least one runtime requires a security update_. The Version column displays an _Update Required!_ notification. @@ -154,8 +154,7 @@ If you have managed clusters for the Hybrid Runtime, upgrading the Runtime autom **Before you begin** For both silent or CLI-wizard based upgrades, make sure you have: -* The latest version of the Codefresh CLI - Run `cf version` to see your version and [click here](https://github.com/codefresh-io/cli-v2/releases){:target="\_blank"} to compare with the latest CLI version. +* The latest version of the Codefresh CLI * A valid Git token with [the required scopes]({{site.baseurl}}/docs/reference/git-tokens) **Silent upgrade** @@ -168,7 +167,7 @@ For both silent or CLI-wizard based upgrades, make sure you have: **CLI wizard-based upgrade** -1. In the Codefresh UI, make sure you are in [GitOps Runtimes](https://g.codefresh.io/2.0/account-settings/runtimes){:target="\_blank"}. +1. In the Codefresh UI, on the toolbar, click the **Settings** icon, expand Runtimes in the sidebar, and select [**GitOps Runtimes**](https://g.codefresh.io/2.0/account-settings/runtimes){:target="\_blank"}. 1. Switch to either the **List View** or to the **Topology View**. 1. **List view**: * Select the Runtime name. @@ -199,7 +198,7 @@ For both silent or CLI-wizard based upgrades, make sure you have: {:start="4"} -1. If you have already installed the Codefresh CLI, in the Install Upgrades panel, copy the upgrade command. +1. If you have already installed the GitOps CLI, in the Install Upgrades panel, copy the upgrade command. {% include image.html @@ -238,7 +237,7 @@ You can retain the installation repo used to install the ingress-less runtime. T ---> ### Uninstall provisioned GitOps Runtimes -Uninstall provisioned GitOps Runtimes that are not in use. Uninstall a Runtime through a silent uninstall or through the CLI wizard. +Uninstall provisioned GitOps Runtimes that are not in use, through a silent uninstall or through the GitOps CLI wizard. > Uninstalling a Runtime removes the Git Sources and managed clusters associated with it. **Before you begin** @@ -254,9 +253,9 @@ Pass the mandatory flags in the uninstall command: where: `--git-token` is a valid runtime token with the `repo` and `admin-repo.hook` scopes. -**CLI wizard uninstall** +**GitOps CLI wizard uninstall** -1. In the Codefresh UI, make sure you are in [GitOps Runtimes](https://g.codefresh.io/2.0/account-settings/runtimes){:target="\_blank"}. +1. In the Codefresh UI, on the toolbar, click the **Settings** icon, expand Runtimes in the sidebar, and select [**GitOps Runtimes**](https://g.codefresh.io/2.0/account-settings/runtimes){:target="\_blank"}. 1. Switch to either the **List View** or to the **Topology View**. 1. **List view**: On the top-right, select the three dots and then select **Uninstall**. @@ -283,7 +282,7 @@ Pass the mandatory flags in the uninstall command: {:start="4"} -1. If you already have the latest version of the Codefresh CLI, in the Uninstall Codefresh Runtime panel, copy the uninstall command. +1. If you already have the latest version of the GitOps CLI, in the Uninstall Codefresh Runtime panel, copy the uninstall command. {% include image.html @@ -322,9 +321,9 @@ The methods for updating any Git token are the same regardless of the reason for **How to** 1. Do one of the following: * If you see a notification in the Codefresh UI about invalid Runtime tokens, click **[Update Token]**. - The Runtimes page shows Runtimes with invalid tokens prefixed by the key icon. Mouse over shows invalid token. + The GitOps Runtimes page shows runtimes with invalid tokens prefixed by the key icon. Mouse over shows invalid token. * To update an existing token, go to [GitOps Runtimes](https://g.codefresh.io/2.0/account-settings/runtimes){:target="\_blank"}. -1. Select the Runtime for which to update the Git token. +1. Select the GitOps Runtime for which to update the Git token. 1. From the context menu with the additional actions at the top-right, select **Update Git Runtime token**. {% include @@ -370,8 +369,8 @@ The methods for updating any Git token are the same regardless of the reason for * [(Hybrid GitOps) View notifications in Activity Log](#hybrid-gitops-view-notifications-in-activity-log) * [(Hybrid GitOps) Troubleshoot health and sync errors for Runtimes](#hybrid-gitops-troubleshoot-health-and-sync-errors-for-runtimes) -### View/download logs to troubleshoot Runtimes -Logs are available for completed Runtimes, both for the Runtime and for individual Runtime components. Download log files for offline viewing and analysis, or view online logs for a Runtime component, and download if needed for offline analysis. Online logs support free-text search, search-result navigation, and line-wrap for enhanced readability. +### View/download logs to troubleshoot GitOps Runtimes +Logs are available for completed Runtimes, both for the runtime and for individual runtime components. Download log files for offline viewing and analysis, or view online logs for a Runtime component, and download if needed for offline analysis. Online logs support free-text search, search-result navigation, and line-wrap for enhanced readability. Log files include events from the date of the application launch, with the newest events listed first. @@ -379,10 +378,10 @@ Log files include events from the date of the application launch, with the newes

{:/} -#### Download logs for Runtimes +#### Download logs for GitOps Runtimes Download the log file for a Runtime. The Runtime log is downloaded as a `.tar.gz` file, which contains the individual log files for each runtime component. -1. In the Codefresh UI, go to [GitOps Runtimes](https://g.codefresh.io/2.0/account-settings/runtimes){:target="\_blank"}. +1. In the Codefresh UI, on the toolbar, click the **Settings** icon, expand Runtimes in the sidebar, and select [**GitOps Runtimes**](https://g.codefresh.io/2.0/account-settings/runtimes){:target="\_blank"}. 1. If needed, switch to **List View**, and then select the runtime for which to download logs. 1. From the context menu, select **Download All Logs**. The log file is downloaded to the Downloads folder or the folder designated for downloads, with the filename, `.tar.gz`. For example, `codefreshv2-production2.tar.gz`. @@ -425,7 +424,7 @@ View online logs for any Runtime component, and if needed, download the log file Online logs show up to 1000 of the most recent events (lines), updated in real time. Downloaded logs include all the events, from the application launch to the date and time of download. -1. In the Codefresh UI, go to [GitOps Runtimes](https://g.codefresh.io/2.0/account-settings/runtimes){:target="\_blank"}. +1. In the Codefresh UI, on the toolbar, click the **Settings** icon, expand Runtimes in the sidebar, and select [**GitOps Runtimes**](https://g.codefresh.io/2.0/account-settings/runtimes){:target="\_blank"}. 1. If needed, switch to **List View**, and then select the Runtime. 1. Select the Runtime component and then select **View Logs**. @@ -635,9 +634,9 @@ Here is an example of health errors for a Runtime. %} -### Related articles -[Add Git Sources to GitOps Runtimes]({{site.baseurl}}/docs/installation/git-sources/) -[Add external clusters to GitOps Runtimes]({{site.baseurl}}/docs/installation/managed-cluster/) +## Related articles +[Add Git Sources to GitOps Runtimes]({{site.baseurl}}/docs/installation/gitops/git-sources/) +[Add external clusters to GitOps Runtimes]({{site.baseurl}}/docs/installation/gitops/managed-cluster/) [Shared configuration repo for GitOps Runtimes]({{site.baseurl}}/docs/reference/shared-configuration) diff --git a/_docs/installation/installation-options.md b/_docs/installation/installation-options.md index e63813b11..908c507ad 100644 --- a/_docs/installation/installation-options.md +++ b/_docs/installation/installation-options.md @@ -1,45 +1,33 @@ --- title: "Installation environments" -description: "" +description: "Understand Runner and GitOps installation options" group: installation toc: true --- To be changed and updated for ProjectOne -The Codefresh platform supports two different installation environments, each with different installation options. +The Codefresh platform supports three different installation options, all compliant with Soc2. -* CI/CD installation environment - The CI/CD installation environment is optimized for Continuous Integration/Delivery with Codefresh pipelines. Pipelines created in Codefresh fetch code from your Git repository, packages/compiles the code, and deploys the final artifact to a target environment. - - The CI/CD installation environment supports these installation options: - * Hybrid, where the Codefresh CI/CD UI runs in the Codefresh cloud, and the builds run on customer premises - * SaaS, a full cloud version that is fully managed by Codefresh - * On-premises, where Codefresh CI/CD runs within the customer datacenter/cloud - - On-premises and Hybrid CI/CD options are available to Enterprise customers looking for a "behind-the-firewall" solution. - -* GitOps installation environment - The GitOps installation environment is a full-featured solution for application deployments and releases. Powered by the Argo Project, Codefresh uses Argo CD, Argo Workflows, Argo Events, and Argo Rollouts, extended with unique functionality and features essential for enterprise deployments. - - GitOps installations support Hosted and Hybrid options. - -## Comparison -Both environments can co-exist giving you the best of both worlds. For - -TBD - - -## Codefresh CI/CD installation options +* Hybrid Runner + The Runner installation is the hybrid installation mode for Codefresh pipelines. The Codefresh UI runs in the Codefresh cloud, and the builds run on customer premises. + The Runner combines flexibility with security, and is Enterprise customers looking for a "behind-the-firewall" solution. For a detailed look, read [Runner installation behind firewalls]({{site.baseurl}}/docs/reference/behind-the-firewall). + Pipelines created in Codefresh fetch code from your Git repository, packages/compiles the code, and deploys the final artifact to a target environment. +* On-premises + On-premises installation is for customers who want full control over their environments. Both the UI and builds run on the Kubernetes cluster in an environment fully managed by you as our customer. + While Codefresh can still help with maintenance of the on-premises platform, we would recommend the Hybrid Runner as it combines both flexibility and high security. +* GitOps + GitOps installation is a full-featured solution for application deployments and releases. Powered by the Argo Project, Codefresh uses Argo CD, Argo Workflows, Argo Events, and Argo Rollouts, extended with unique functionality and features essential for enterprise deployments. + GitOps installations support Hosted and Hybrid options. -### Codefresh Cloud CI/CD - likely to be removed + -### Codefresh Hybrid CI/CD - -The Hybrid CI/CD installation option is for organizations who want their source code to live within their premises, or have other security constraints. For more about the theory and implementation, see [CI/CD behind the firewall installation]({{site.baseurl}}/docs/administration/behind-the-firewall/). +## Hybrid Runner +The Hybrid Runner installation is for organizations who want their source code to live within their premises, or have other security constraints. For more about the theory and implementation, see [[Runner installation behind firewalls]({{site.baseurl}}/docs/reference/behind-the-firewall). The UI runs on Codefresh infrastructure, while the builds happen in a Kubernetes cluster in the customer's premises. {% include image.html @@ -84,13 +71,12 @@ The UI runs on Codefresh infrastructure, while the builds happen in a Kubernetes %} -CI/CD Hybrid installation strikes the perfect balance between security, flexibility, and ease of use. Codefresh still does the heavy lifting for maintaining most of the platform parts. The sensitive data (such as source code and internal services) never leave the premises of the customers. - -With Hybrid CI/CD installation, Codefresh can easily connect to internal [secure services]({{site.baseurl}}/docs/reference/behind-the-firewall/#using-secure-services-in-your-pipelines) that have no public presence. -The UI part is still compliant with Soc2. +Hybrid Runner installation strikes the perfect balance between security, flexibility, and ease of use. Codefresh still does the heavy lifting for maintaining most of the platform parts. Sensitive data such as source code and internal services never leave customer premises. +Codefresh can easily connect to internal [secure services]({{site.baseurl}}/docs/reference/behind-the-firewall/#using-secure-services-in-your-pipelines) that have no public presence. +The UI is still compliant with Soc2. -Here are the security implications of CI/CD Hybrid installation: +The table lists the security implications of Hybrid Runner installation. {: .table .table-bordered .table-hover} | Company Asset | Flow/Storage of data | Comments | @@ -122,35 +108,23 @@ Here are the security implications of CI/CD Hybrid installation: -### Codefresh On-premises CI/CD - -For customers who want full control, Codefresh also offers an on-premises option for CI/CD installation. Both the UI and builds run on a Kubernetes cluster fully managed by the customer. +## Codefresh On-premises -While Codefresh can still help with maintenance of the CI/CD On-premises, we would recommend the Hybrid CI/CD option first as it offers the most flexibility while maintaining high security. +For customers who want full control, Codefresh also offers on-premises installation. Both the UI and builds run on a Kubernetes cluster fully managed by the customer. -### CI/CD installation comparison +See [Codefresh On-Prem Installation & Configuration]({{site.baseurl}}/docs/installation/codefresh-on-prem). -{: .table .table-bordered .table-hover} -| Characteristic | Cloud | Hybrid | On Premise | -| -------------- | ---------------------------- |-------------------------| -| Managed by | Codefresh | Codefresh and Customer | Customer | -| UI runs on | public cloud | public cloud | private cluster | -| Builds run on | public cloud | private cluster | private cluster | -| Access to secure/private services | no | yes | yes | -| Customer maintenance effort | none | some | full | -| Best for | most companies | companies with security constraints | Large scale installations | -| Available to | all customers | [enterprise plans](https://codefresh.io/contact-us/) | [enterprise plans](https://codefresh.io/contact-us/) | +## Codefresh GitOps installation -## Codefresh GitOps installation options - -Similar to CI/CD installation options, Codefresh GitOps also supports SaaS and hybrid installation options: +Codefresh GitOps also supports SaaS and hybrid installation options: ### Hosted GitOps -The SaaS version of GitOps, has Argo CD installed in the Codefresh cluster. +The SaaS version of GitOps, Hosted GitOps has Argo CD installed in the Codefresh cluster. Hosted GitOps Runtime is installed and provisioned in a Codefresh cluster, and managed by Codefresh. -Hosted enviroments are full-cloud environments, where all updates and improvements are managed by Codefresh, with zero-maintenance overhead for you as the customer. Currently, you can add one Hosted GitOps Runtime per account. +Hosted enviroments are full-cloud environments, where all updates and improvements are managed by Codefresh, with zero-maintenance overhead for you as the customer. +Currently, you can add one Hosted GitOps Runtime per account. For the architecture, see [Hosted GitOps Runtime architecture]({{site.baseurl}}/docs/installation/architecture/#hosted-gitops-runtime-architecture). @@ -164,7 +138,7 @@ For the architecture, see [Hosted GitOps Runtime architecture]({{site.baseurl}}/ max-width="80%" %} - For more information on how to set up the hosted environment, including provisioning hosted runtimes, see [Set up Hosted GitOps]({{site.baseurl}}/docs/installation/hosted-runtime/). + For more information on how to set up the hosted environment, including provisioning hosted runtimes, see [Set up Hosted GitOps]({{site.baseurl}}/docs/installation/gitops/hosted-runtime/). ### Hybrid GitOps The hybrid version of GitOps, has Argo CD installed in the customer's cluster. @@ -182,7 +156,7 @@ The Hybrid GitOps Runtime is optimal for organizations with security constraints max-width="70%" %} - For more information on hybrid environments, see [Hybrid GitOps runtime requirements]({{site.baseurl}}/docs/installation/hybrid-gitops/#minimum-system-requirements) and [Installling Hybrid GitOps Runtimes]({{site.baseurl}}/docs/installation/hybrid-gitops/). + For more information on Hybrid GitOps, see [Hybrid GitOps runtime requirements]({{site.baseurl}}/docs/installation/gitops/hybrid-gitops/#minimum-system-requirements) and [Installling Hybrid GitOps Runtimes]({{site.baseurl}}/docs/installation/gitops/hybrid-gitops/). @@ -224,8 +198,24 @@ The table below highlights the main differences between Hosted and Hybrid GitOps | |DORA metrics | Supported |Supported | | |Applications | Supported |Supported | -### Related articles + +## Installation options comparison +Codefresh Runner and GitOps environments can co-exist giving you the best of both worlds. + +{: .table .table-bordered .table-hover} +| Characteristic | Hybrid Runner | On Premise | GitOps +| -------------- | ---------------------------- |-------------------------| ----------------| +| Managed by | Codefresh and customer | Customer | Codefresh and customer | +| UI runs on | Public cloud | Private cluster | Public cloud| +| Builds run on | Private cluster | Private cluster | Private cluster (Hybrid)/Codefresh cluster (Hosted)| +| Access to secure/private services | Yes | Yes | Yes | +| Customer maintenance effort | Some | Full | Some | +| Best for | Companies with security constraints | Large scale installations | Companies with security constraints | +| Available to |[Enterprise plans](https://codefresh.io/contact-us/){:target="\_blank"} | [Enterprise plans](https://codefresh.io/contact-us/) |[Enterprise plans](https://codefresh.io/contact-us/) | + + +## Related articles [Architecture]({{site.baseurl}}/docs/installation/runtime-architecture/) -[Add Git Sources to GitOps Runtimes]({{site.baseurl}}/docs/installation/git-sources/) +[Add Git Sources to GitOps Runtimes]({{site.baseurl}}/docs/installation/gitops/git-sources/) [Shared configuration repository]({{site.baseurl}}/docs/reference/shared-configuration) diff --git a/_docs/installation/runtime-architecture.md b/_docs/installation/runtime-architecture.md index 1e0841d21..f6ec3650a 100644 --- a/_docs/installation/runtime-architecture.md +++ b/_docs/installation/runtime-architecture.md @@ -1,13 +1,13 @@ --- -title: "Runtime architectures" +title: "Runtime architecture" description: "" group: installation toc: true --- -Overview TBD +If you have familiarized yourself with the different installation, here's a deep dive into the architecture and components of Codefresh Runner and GitOps runtime architectures. -## Codefresh CI/CD architecture +## Runner architecture The most important components are the following: @@ -17,20 +17,20 @@ The most important components are the following: **External actors**. Codefresh offers a [public API]({{site.baseurl}}/docs/integrations/ci-integrations/codefresh-api/) that is consumed both by the Web user interface and the [Codefresh CLI](https://codefresh-io.github.io/cli/){:target="\_blank"}. The API is also available for any custom integration with external tools or services. -### CI/CD topology +### Runner topology -If we zoom into Codefresh Services for CI/CD, we will see the following: +If we zoom into Hybrid Runner services, we will see the following: {% include image.html lightbox="true" file="/images/installation/topology-new.png" url="/images/installation/topology-new.png" alt="Topology diagram" - caption="Topology diagram (click to enlarge)" + caption="Topology diagram" max-width="100%" %} -### CI/CD core components +### Runner core components {: .table .table-bordered .table-hover} |Category | Component | Function | @@ -52,9 +52,9 @@ If we zoom into Codefresh Services for CI/CD, we will see the following: | | **tasker-kubernetes** | Provides cache storage for Kubernetes dashboards. See [Kubernetes dashboards]({{site.baseurl}}/docs/deployments/kubernetes/manage-kubernetes/). | -## Codefresh GitOps Platform architecture +## GitOps architecture -The diagram shows a high-level view of the Codefresh GitOps installation environment, and its core components, the Codefresh Control Plane, the Codefresh Runtime, and the Codefresh Clients. +The diagram shows a high-level view of the GitOps environment, and its core components, the Codefresh Control Plane, the Codefresh Runtime, and the Codefresh Clients. {% include image.html @@ -70,7 +70,7 @@ max-width="100%"
{:/} -### Codefresh GitOps Control Plane +### GitOps Control Plane The Codefresh Control Plane is the SaaS component in the platform. External to the enterprise firewall, it does not have direct communication with the Codefresh Runtime, Codefresh Clients, or the customer's organizational systems. The Codefresh Runtime and the Codefresh Clients communicate with the Codefresh Control Plane to retrieve the required information. @@ -78,22 +78,22 @@ The Codefresh Control Plane is the SaaS component in the platform. External to t
{:/} -### Codefresh GitOps Runtime -The Codefresh Runtime is installed on a Kubernetes cluster, and houses the enterprise distribution of the Codefresh Application Proxy and the Argo Project. -Depending on the type of GitOps installation, the Codefresh Runtime is installed either in the Codefresh platform (Hosted GitOps), or in the customer environment (Hybrid GitOps). Read more in [Codefresh GitOps Runtime architecture](#codefresh-gitops-runtime-architecture). +### GitOps Runtime +The GitOps Runtime is installed on a Kubernetes cluster, and houses the enterprise distribution of the Codefresh Application Proxy and the Argo Project. +Depending on the type of GitOps installation, the GitOps Runtime is installed either in the Codefresh platform (Hosted GitOps), or in the customer environment (Hybrid GitOps). Read more in [Codefresh GitOps Runtime architecture](#codefresh-gitops-runtime-architecture). {::nomarkdown}
{:/} -### Codefresh GitOps Clients +### GitOps Clients -Codefresh Clients include the Codefresh UI and the Codefresh CLI. -The Codefresh UI provides a unified, enterprise-wide view of deployments (runtimes and clusters), and CI/CD operations (Delivery Pipelines, workflows, and deployments) in the same location. +GitOps Clients include the UI and the GitOps CLI. +The UI provides a unified, enterprise-wide view of deployments (runtimes and clusters), and CI/CD operations (Delivery Pipelines, workflows, and deployments) in the same location. The Codefresh CLI includes commands to install hybrid runtimes, add external clusters, and manage runtimes and clusters. -### Codefresh GitOps Runtime architecture +### GitOps Runtime architecture The sections that follow show detailed views of the GitOps Runtime architecture for the different installation options, and descriptions of the GitOps Runtime components. * [Hosted GitOps runtime architecture](#hosted-gitops-runtime-architecture) @@ -179,6 +179,9 @@ The Argo Project includes: * Argo Workflows as the workflow engine * Argo Events for event-driven workflow automation framework +>Codefresh users rely on our platform to deliver software reliably, and predictably without interruption. + To maintain that high standard, we add several weeks of testing and bug fixes to new versions of Argo before making them available within Codefresh. + Typically, new versions of Argo are available within 30 days of release in Argo. {::nomarkdown}

@@ -221,20 +224,21 @@ The Tunnel Client: #### Customer environment -The customer environment that communicates with the GitOps Runtime and the GitOps Platform, generally includes: -* Ingress controller for ingress hybrid runtimes +The customer environment that communicates with the GitOps Runtime and Codefresh, generally includes: +* Ingress controller for ingress-based Hybrid runtimes The ingress controller is configured on the same Kubernetes cluster as the GitOps Runtime, and implements the ingress traffic rules for the GitOps Runtime. - See [Ingress controller requirements]({{site.baseurl}}/docs/installation/requirements/#ingress-controller). + See [Ingress controller requirements]({{site.baseurl}}/docs/installation/gitops/monitor-manage-runtimes/#ingress-controller). * Managed clusters Managed clusters are external clusters registered to provisioned Hosted or Hybrid GitOps runtimes for application deployment. Hosted GitOps requires you to connect at least one external K8s cluster as part of setting up the Hosted GitOps environment. Hybrid GitOps allow you to add external clusters after provisioning the runtimes. - See [Add external clusters to runtimes]({{site.baseurl}}/docs/installation/managed-cluster/). + See [Add external clusters to runtimes]({{site.baseurl}}/docs/installation/gitops/managed-cluster/). * Organizational systems Organizational Systems include the customer's tracking, monitoring, notification, container registries, Git providers, and other systems. They can be entirely on-premises or in the public cloud. - Either the ingress controller (ingress hybrid environments), or the Tunnel Client (tunnel-based hybrid environments), forwards incoming events to the Codefresh Application Proxy. + Either the ingress controller (ingress hybrid environments), or the Tunnel Client (tunnel-based hybrid environments), forwards incoming events to the GitOps Application Proxy. ## Related articles -[Codefresh pricing](https://codefresh.io/pricing/) -[Codefresh features](https://codefresh.io/features/) +[Codefresh pricing](https://codefresh.io/pricing/){:target="\_blank"} +[Codefresh features](https://codefresh.io/features/){:target="\_blank"} + \ No newline at end of file