Skip to content

Commit

Permalink
fix some links
Browse files Browse the repository at this point in the history
  • Loading branch information
kalsky committed Apr 12, 2024
1 parent c6b9da4 commit d00cdf5
Show file tree
Hide file tree
Showing 16 changed files with 40 additions and 37 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,11 @@ sidebar_position: 1
# Connecting an Execution Server to Quali Server

This article explains how to connect, or associate, an Execution Server to Quali Server. You need to do this whenever you install a new Execution Server, or deploy an Azure Template or AWS CloudFormation for a cloud-based Quali Server and need to associate the newly-created Execution Server with the Quali Server.

:::note
The Azure and AWS Execution Servers created as part of the integration are installed on Linux machines.
:::

**To associate a Windows Execution Server with Quali Server:**

1. In the Execution Server machine, run the Execution Server configuration wizard.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ This article explains how to properly remove execution servers from CloudShell.

![](/Images/Admin-Guide/Setting-Up-CloudShell/ExecutionServerAssociations_474x303.png)

If the execution server has associations, make sure to set the same associations on another execution server. For details, see [Setting Up Execution Servers to Run Commands](../../admin/cloudshell-execution-server-configurations/setting-up-execution-servers-to-run-commands.md).
If the execution server has associations, make sure to set the same associations on another execution server. For details, see [Setting Up Execution Servers to Run Commands](./setting-up-execution-servers-to-run-commands.md).

4. Delete the execution server.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,12 @@ When a new job or command execution is needed, CloudShell finds an execution ser

You can maximize available execution capacity by installing additional execution servers, increasing job/command capacities of the execution server, and adding more CPU/RAM to the execution servers.

- **Number of machines that can be allocated for execution provisioning**: Execution servers have no capacity limits and do not require a license, but it's more about what the execution server can handle. In most cases, you'll start with one execution server for the commands, and monitor the performance. Then, either add more power to the same machine or just add more execution servers for better redundancy (if one of the servers fails, it's always good to have others available). For details, see [Distributed provisioning](../../admin/cloudshell-execution-server-configurations/optimizing-execution-provisioning.md).
- **Number of machines that can be allocated for execution provisioning**: Execution servers have no capacity limits and do not require a license, but it's more about what the execution server can handle. In most cases, you'll start with one execution server for the commands, and monitor the performance. Then, either add more power to the same machine or just add more execution servers for better redundancy (if one of the servers fails, it's always good to have others available). For details, see [Distributed provisioning](./setting-up-execution-servers-to-run-commands.md#distributed-provisioning).

In addition, you can also **associate groups of resources and Apps to specific execution servers for improved performance**. This is extremely useful if you have geographically distributed sites in your organization and you want the infrastructure of each site to be handled by one or more execution servers that are physically located at or near that site. For details, see [Setting Up Execution Servers to Run Commands](../../admin/cloudshell-execution-server-configurations/setting-up-execution-servers-to-run-commands.md).
In addition, you can also **associate groups of resources and Apps to specific execution servers for improved performance**. This is extremely useful if you have geographically distributed sites in your organization and you want the infrastructure of each site to be handled by one or more execution servers that are physically located at or near that site. For details, see [Setting Up Execution Servers to Run Commands](./setting-up-execution-servers-to-run-commands.md).

- **Types of automation to be run (Python-based or Authoring drivers)**: Execution servers are used for commands and orchestration, which are Python-based in most cases but also support Authoring drivers. The runtime for Authoring drivers takes more RAM/CPU than Python so limit the number of concurrent jobs to 5.
- **App deployment requires additional command slots**: For details, see [Configuring Execution Servers to Deploy vCenter Apps](../../admin/cloudshell-execution-server-configurations/setting-up-execution-servers-to-run-commands#configuring-execution-servers-to-deploy-vcenter-apps)
- **App deployment requires additional command slots**: For details, see [Configuring Execution Servers to Deploy vCenter Apps](./setting-up-execution-servers-to-run-commands#configuring-execution-servers-to-deploy-vcenter-apps)
- **To optimize run-time performance for individual tests**: Quali recommends setting each execution server's **Job slot capacity** to 1 (**Command slot capacity** is set to 20 by default). A job slot capacity of 1 ensures that maximum resources are always available to the running instance. For example, if there is some software/hardware that is installed on this machine that is required for the tests, and you cannot use it concurrently.

That said, the runtime for Job Scheduling suites is heavier (more RAM/CPU) than python, but the execution server can still run a few tests concurrently if they are all independent and run against some remote targets. For example, if there is some software/hardware that is installed on this machine that is required for the tests, and you cannot use it concurrently, then you will need to limit the job slots on this execution server to 1. *This applies to the original Job Scheduling, the New Job Scheduling is specifically designed to handle high loads in the hundreds of concurrent executions.*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@ sidebar_position: 2

# Setting Up Execution Servers to Run Commands

This article explains how to configure execution servers to run commands in CloudShell. Note that associating execution servers to automation suites is done on the job level, as explained in [Add jobs to an automation suite](../../portal/job-scheduling/manage-automation-suites/add-suites.md).
This article explains how to configure execution servers to run commands in CloudShell. Note that associating execution servers to automation suites is done on the job level, as explained in [Add jobs to an automation suite](../../portal/job-scheduling/manage-automation-suites/add-suites.md#add-jobs-to-an-automation-suite).

## Managing execution servers

The **Execution Servers** management pages in the web portal allow you to both manage and troubleshoot your execution servers, providing critical, real time data about the status of your execution servers, command and job executions, and troubleshooting information and options. For additional information, see [Managing Execution Servers](https://help.quali.com/Online%20Help/0.0/Portal/Content/CSP/MNG/Mng-Exctn-Srv.htm).
The **Execution Servers** management pages in the web portal allow you to both manage and troubleshoot your execution servers, providing critical, real time data about the status of your execution servers, command and job executions, and troubleshooting information and options. For additional information, see [Managing Execution Servers](../../admin/manage-dashboard/execution-servers).

## Distributed provisioning

Expand All @@ -20,11 +20,11 @@ Blueprint orchestration can be configured to run on one execution server, while
:::
### Optimizing execution capacity

For detailed information, see [Optimizing Execution Provisioning](../../admin/cloudshell-execution-server-configurations/optimizing-execution-provisioning.md).
For detailed information, see [Optimizing Execution Provisioning](./optimizing-execution-provisioning.md).

### Distributed command execution

Multiple execution servers can be deployed in order to scale out the provisioning and resource command tasks. By default, blueprint and resource commands are distributed between the execution servers according to their capacity. It is possible, however, to specify more explicit rules to control the execution server selection for commands, as explained in the "execution server selection" sections below. For additional information, see [Optimizing Execution Provisioning](../../admin/cloudshell-execution-server-configurations/optimizing-execution-provisioning.md).
Multiple execution servers can be deployed in order to scale out the provisioning and resource command tasks. By default, blueprint and resource commands are distributed between the execution servers according to their capacity. It is possible, however, to specify more explicit rules to control the execution server selection for commands, as explained in the "execution server selection" sections below. For additional information, see [Optimizing Execution Provisioning](./optimizing-execution-provisioning.md).

### Resource commands

Expand All @@ -42,8 +42,8 @@ For additional information, see [Associating Resources to Specific Execution Ser

To learn how to do this, see the appropriate article:

- For private cloud Apps, see [Managing Private Cloud Apps in Domains](../../admin/supported-cloud-providers-in-cloudshell/private-cloud-provider-support-in-cloudshell/).
- For public cloud Apps, see [Managing Public Cloud Apps in Domains](../../admin/supported-cloud-providers-in-cloudshell/public-cloud-provider-support-in-cloudshell/).
- For private cloud Apps, see [Managing Private Cloud Apps in Domains](../supported-cloud-providers-in-cloudshell/private-cloud-provider-support-in-cloudshell/managing-private-cloud-apps-in-domains.md).
- For public cloud Apps, see [Managing Public Cloud Apps in Domains](../supported-cloud-providers-in-cloudshell/public-cloud-provider-support-in-cloudshell/managing-public-cloud-apps-in-domains.md).

## Controlling execution server selection for blueprint commands

Expand All @@ -63,7 +63,7 @@ See [Configure the Execution Server to Run as a Process by Default](../../instal

## Working with local tests

If you are using a source control tool and wish to configure CloudShell to work with your local tests, see [Source Control: Using Local Tests in Automation Suites](../../admin/setting-up-cloudshell/source-control-using-local-tests-in-automation-suites/) or contact Quali support or your Customer Success representative.
If you are using a source control tool and wish to configure CloudShell to work with your local tests, see [Source Control: Using Local Tests in Automation Suites](../setting-up-cloudshell/source-control-using-local-tests-in-automation-suites/) or contact Quali support or your Customer Success representative.

## Configuring Execution Servers to Deploy vCenter Apps

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ When a Python driver or script runs in CloudShell, the Execution Server gets the

PyPi Server is installed on the Quali Server machine and requires an internet connection, so if Quali Server and/or the execution servers work offline (i.e. do not have an internet connection), or the packages are missing from public PyPi, you will need to copy the required Python packages, including the out-of-the-box ones, to the local PyPi Server repository on the Quali Server computer. When a driver or script runs, the **PyPi Server** process running on the Quali Server computer will copy the required dependencies from this folder to the driver or script's virtual environment on the appropriate execution server. For additional information, see [Loading packages to your PyPi Server repository](./pypi-server-managing-python-shell-and-script-dependencies.md#loading-packages-to-your-pypi-server-repository).
:::warning
The `<PythonOfflineRepositoryPath>` configuration key that defines the local offline package folder has been deprecated in CloudShell 8.3. Therefore, when upgrading to CloudShell 8.3 and above, you will need to configure PyPi Server as the mechanism for serving Python dependencies to your Python drivers and scripts. For details, see this [Migrate Python Dependencies to PyPi Server](../../../install-configure/cloudshell-suite/upgrade-procedure/migrade-python-dependencies.md). To learn more about PyPi Server, see [PyPi Server - Managing Python Shell and Script Dependencies](../../../admin/cloudshell-execution-server-configurations/setting-up-python-virtual-environments/pypi-server-managing-python-shell-and-script-dependencies.md).
The `<PythonOfflineRepositoryPath>` configuration key that defines the local offline package folder has been deprecated in CloudShell 8.3. Therefore, when upgrading to CloudShell 8.3 and above, you will need to configure PyPi Server as the mechanism for serving Python dependencies to your Python drivers and scripts. For details, see this [Migrate Python Dependencies to PyPi Server](../../../install-configure/cloudshell-suite/upgrade-procedure/migrade-python-dependencies.md). To learn more about PyPi Server, see [PyPi Server - Managing Python Shell and Script Dependencies](./pypi-server-managing-python-shell-and-script-dependencies.md#pypi-server---managing-python-shell-and-script-dependencies).
:::
In this article (perform the procedures that are relevant for you):

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,5 @@ The following articles describe what Python virtual environments are, how to con
- [What are Python Virtual Environments?](./what-are-python-virtual-environments.md)
- [PyPi Server - Managing Python Shell and Script Dependencies](./pypi-server-managing-python-shell-and-script-dependencies.md)
- [Configuring CloudShell to Execute Python Commands in Offline Mode](./configuring-cloudshell-to-execute-python-commands-in-offline-mode.md)
- [Updating Python Dependencies for Shells, Drivers and Scripts](./updating-python-dependencies-for-shells,-drivers-and-scripts.md)
- [Updating Python Dependencies for Shells, Drivers and Scripts](./updating-python-dependencies-for-shells-drivers-and-scripts.md)
- [Cleaning Up the Virtual Environments Folder](./cleaning-up-the-virtual-environments-folder.md)
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ CloudShell manages driver and script dependencies using **PyPi Server**. PyPi Se
:::note
If you are upgrading to CloudShell 8.3 and above, make sure to migrate your offline and locally developed Python packages to the PyPi Server repository. For additional information, see [Migrate Python Dependencies to PyPi Server](../../../install-configure/cloudshell-suite/upgrade-procedure/migrade-python-dependencies.md).
:::
The PyPi server allows easy and organized development of Python packages for local use. A developer can remotely upload their own local Python packages to the local PyPi server, making them available to all the Execution Servers, without having to expose these packages in a public repository (such as public PyPi) or a testing repository (such as a local TestPy). For details, see [Configuring CloudShell to Execute Python Commands in Offline Mode](../../../admin/cloudshell-execution-server-configurations/setting-up-python-virtual-environments/configuring-cloudshell-to-execute-python-commands-in-offline-mode.md).
The PyPi server allows easy and organized development of Python packages for local use. A developer can remotely upload their own local Python packages to the local PyPi server, making them available to all the Execution Servers, without having to expose these packages in a public repository (such as public PyPi) or a testing repository (such as a local TestPy). For details, see [Configuring CloudShell to Execute Python Commands in Offline Mode](./configuring-cloudshell-to-execute-python-commands-in-offline-mode.md).

As illustrated below, the following takes place when a Python script or driver is launched:

Expand All @@ -19,7 +19,7 @@ As illustrated below, the following takes place when a Python script or driver i
![](/Images/Admin-Guide/Setting-Up-CloudShell/PyPiServer-flow_673x332.png)

:::note Notes:
- To configure PyPi Server behind a proxy to allow the Execution Servers to reach PyPi Server, see [Using a Proxy to Download Python Packages from Public PyPi](../../../admin/cloudshell-execution-server-configurations/setting-up-python-virtual-environments/using-a-proxy-to-download-python-packages-from-public-pypi.md).
- To configure PyPi Server behind a proxy to allow the Execution Servers to reach PyPi Server, see [Using a Proxy to Download Python Packages from Public PyPi](../setting-up-python-virtual-environments/using-a-proxy-to-download-python-packages-from-public-pypi.md).
- To configure PyPi Server behind a reverse proxy for secure communication between the PyPi Server and the Execution Servers, see [Configuring PyPi Server to Work in Secure Mode](../../../install-configure/cloudshell-suite/secure-communication/config-secured-pypi.md).
:::
The following configuration modes are available for Python driver and script dependencies:
Expand All @@ -44,7 +44,7 @@ However, we do not recommend to place CloudShell dependencies in the repository

This mode is used when access to the Internet is unavailable for Quali Server and the execution servers. To make dependencies available in offline mode, the admin needs to download the dependencies and place them in the local PyPi Server repository residing on the Quali Server machine when installing or upgrading CloudShell.

For additional information, see [Configuring CloudShell to Execute Python Commands in Offline Mode](../../../admin/cloudshell-execution-server-configurations/setting-up-python-virtual-environments/configuring-cloudshell-to-execute-python-commands-in-offline-mode.md).
For additional information, see [Configuring CloudShell to Execute Python Commands in Offline Mode](./configuring-cloudshell-to-execute-python-commands-in-offline-mode.md).

## Loading packages to your PyPi Server repository

Expand Down Expand Up @@ -145,4 +145,4 @@ For this method, you need the access credentials to the PyPi Server repository,

## Related Topics

- [Updating Python Dependencies for Shells, Drivers and Scripts](../../../admin/cloudshell-execution-server-configurations/setting-up-python-virtual-environments/updating-python-dependencies-for-shells,-drivers-and-scripts)
- [Updating Python Dependencies for Shells, Drivers and Scripts](./updating-python-dependencies-for-shells-drivers-and-scripts)
Original file line number Diff line number Diff line change
Expand Up @@ -25,5 +25,5 @@ In online mode, the PyPi Server process automatically downloads and extracts the

## Related Topics

- [PyPi Server - Managing Python Shell and Script Dependencies](../../../admin/cloudshell-execution-server-configurations/setting-up-python-virtual-environments/pypi-server-managing-python-shell-and-script-dependencies.md)
- [Configuring CloudShell to Execute Python Commands in Offline Mode](../../../admin/cloudshell-execution-server-configurations/setting-up-python-virtual-environments/configuring-cloudshell-to-execute-python-commands-in-offline-mode.md)
- [PyPi Server - Managing Python Shell and Script Dependencies](./pypi-server-managing-python-shell-and-script-dependencies.md)
- [Configuring CloudShell to Execute Python Commands in Offline Mode](./configuring-cloudshell-to-execute-python-commands-in-offline-mode.md)
Loading

0 comments on commit d00cdf5

Please sign in to comment.