{"meta":{"title":"Comienza con Actions Runner Controller","intro":"En este tutorial, probarás los conceptos básicos de Actions Runner Controller.","product":"GitHub Actions","breadcrumbs":[{"href":"/es/actions","title":"GitHub Actions"},{"href":"/es/actions/tutorials","title":"Tutoriales"},{"href":"/es/actions/tutorials/use-actions-runner-controller","title":"Actions Runner Controller"},{"href":"/es/actions/tutorials/use-actions-runner-controller/get-started","title":"Empieza ahora"}],"documentType":"article"},"body":"# Comienza con Actions Runner Controller\n\nEn este tutorial, probarás los conceptos básicos de Actions Runner Controller.\n\n## Prerrequisitos\n\nPara usar ARC, asegúrate de que tienes lo siguiente.\n\n* Un clúster de Kubernetes\n  * Para un entorno de nube administrado, puedes usar AKS. Para obtener más información, consulte [Azure Kubernetes Service](https://azure.microsoft.com/en-us/products/kubernetes-service) en la documentación de Azure.\n  * Para una configuración local, puedes usar minikube o kind. Para obtener más información, consulta [minikube start](https://minikube.sigs.k8s.io/docs/start/) en la documentación de minikube y [kind](https://kind.sigs.k8s.io/) en la documentación de kind.\n\n* Helm 3\n  * Para obtener más información, consulta [Instalación de Helm](https://helm.sh/docs/intro/install/) en la documentación de Helm.\n\n* Aunque no es necesario implementar ARC, se recomienda asegurarse de que ha implementado una manera de recopilar y conservar registros del controlador, los agentes de escucha y los ejecutores efímeros antes de implementar ARC en flujos de trabajo de producción.\n\n## Instalación de Actions Runner Controller\n\n1. Para instalar el operador y las definiciones de recursos personalizados (CRD) en el clúster, haz lo siguiente.\n\n   1. En el gráfico de Helm, actualiza el valor `NAMESPACE` a la ubicación en la que deseas que se creen los pods de operador. Este espacio de nombres debe permitir el acceso al servidor de API de Kubernetes.\n   2. Instala el gráfico de Helm.\n\n   En el ejemplo siguiente se instala la versión más reciente del gráfico. Para instalar una versión específica, puedes pasar el argumento `--version` junto con la versión del gráfico que deseas instalar. Puede encontrar la lista de versiones en [GitHub Container Registry](https://github.com/actions/actions-runner-controller/pkgs/container/actions-runner-controller-charts%2Fgha-runner-scale-set-controller).\n\n   ```bash copy\n   NAMESPACE=\"arc-systems\"\n   helm install arc \\\n       --namespace \"${NAMESPACE}\" \\\n       --create-namespace \\\n       oci://ghcr.io/actions/actions-runner-controller-charts/gha-runner-scale-set-controller\n   ```\n\n   Para ver más opciones de configuración de Helm, consulta [`values.yaml`](https://github.com/actions/actions-runner-controller/blob/master/charts/gha-runner-scale-set-controller/values.yaml) en la documentación de ARC.\n\n2. Para permitir que ARC se autentique en GitHub, genera un personal access token (classic). Para obtener más información, vea [Autenticación de ARC en la API de GitHub](/es/actions/hosting-your-own-runners/managing-self-hosted-runners-with-actions-runner-controller/authenticating-to-the-github-api#deploying-using-personal-access-token-classic-authentication).\n\n## Configuración de un conjunto de escalado de ejecutor\n\n1. Para configurar el conjunto de escalado del ejecutor, ejecuta el siguiente comando en el terminal mediante valores de la configuración de ARC.\n\n   Al ejecutar el comando, ten en cuenta lo siguiente.\n\n   * Actualiza el valor `INSTALLATION_NAME` cuidadosamente. Usarás el nombre de instalación como valor de `runs-on` en los flujos de trabajo. Para obtener más información, vea [Sintaxis del flujo de trabajo para GitHub Actions](/es/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idruns-on).\n\n   * Actualiza el valor `NAMESPACE` a la ubicación en la que deseas que se creen los pods de runner.\n\n   * Establece `GITHUB_CONFIG_URL` en la dirección URL del repositorio, de la organización o de la empresa. Esta es la entidad a la que pertenecerán los 'runners'.\n\n   * Establezca `GITHUB_PAT` en un GitHub personal access token con los ámbitos `repo` y `admin:org` para los ejecutores de repositorio y de organización.\n\n   * Este comando de ejemplo instala la versión más reciente del gráfico de Helm. Para instalar una versión específica, puedes pasar el argumento `--version` con la versión del gráfico que deseas instalar. Puede encontrar la lista de versiones en [GitHub Container Registry](https://github.com/actions/actions-runner-controller/pkgs/container/actions-runner-controller-charts%2Fgha-runner-scale-set).\n\n     > \\[!NOTE]\n     >\n     > * Como procedimiento recomendado de seguridad, crea los pods del ejecutor en un espacio de nombres diferente al espacio de nombres que contiene los pods del operador.\n     > * Como procedimiento recomendado de seguridad, crea secretos de Kubernetes y pasa las referencias de los secretos. Pasar los secretos en texto sin formato a través de la CLI puede suponer un riesgo de seguridad. Para obtener más información, consulta [Implementación de conjuntos de escalado de ejecutor con Actions Runner Controller](/es/actions/hosting-your-own-runners/managing-self-hosted-runners-with-actions-runner-controller/deploying-runner-scale-sets-with-actions-runner-controller).\n\n     ```bash copy\n     INSTALLATION_NAME=\"arc-runner-set\"\n     NAMESPACE=\"arc-runners\"\n     GITHUB_CONFIG_URL=\"https://github.com/<your_enterprise/org/repo>\"\n     GITHUB_PAT=\"<PAT>\"\n     helm install \"${INSTALLATION_NAME}\" \\\n         --namespace \"${NAMESPACE}\" \\\n         --create-namespace \\\n         --set githubConfigUrl=\"${GITHUB_CONFIG_URL}\" \\\n         --set githubConfigSecret.github_token=\"${GITHUB_PAT}\" \\\n         oci://ghcr.io/actions/actions-runner-controller-charts/gha-runner-scale-set\n     ```\n\n     Para ver más opciones de configuración de Helm, consulta [`values.yaml`](https://github.com/actions/actions-runner-controller/blob/master/charts/gha-runner-scale-set/values.yaml) en la documentación de ARC.\n\n2. Desde el terminal, ejecuta el siguiente comando para comprobar la instalación.\n\n   ```bash copy\n   helm list -A\n   ```\n\n   Debería ver una salida similar a la siguiente.\n\n   ```bash\n   NAME            NAMESPACE       REVISION        UPDATED                                 STATUS          CHART                                       APP VERSION\n   arc             arc-systems     1               2023-04-12 11:45:59.152090536 +0000 UTC deployed        gha-runner-scale-set-controller-0.4.0       0.4.0\n   arc-runner-set  arc-runners     1               2023-04-12 11:46:13.451041354 +0000 UTC deployed        gha-runner-scale-set-0.4.0                  0.4.0\n   ```\n\n3. Para comprobar el pod del administrador, ejecuta el siguiente comando en el terminal.\n\n   ```bash copy\n   kubectl get pods -n arc-systems\n   ```\n\n   Si todo se instaló correctamente, el estado de los pods se muestra como **En ejecución**.\n\n   ```bash\n   NAME                                                   READY   STATUS    RESTARTS   AGE\n   arc-gha-runner-scale-set-controller-594cdc976f-m7cjs   1/1     Running   0          64s\n   arc-runner-set-754b578d-listener                       1/1     Running   0          12s\n   ```\n\nSi la instalación no se realizó correctamente, consulta [Solución de errores de Actions Runner Controller](/es/actions/hosting-your-own-runners/managing-self-hosted-runners-with-actions-runner-controller/troubleshooting-actions-runner-controller-errors) para obtener información sobre solución de problemas.\n\n## Uso de conjuntos de escalado de ejecutor\n\nAhora crearás y ejecutarás un flujo de trabajo de prueba sencillo que usa los ejecutores del conjunto de escalado del ejecutor.\n\n1. En un repositorio, crea un flujo de trabajo similar al ejemplo siguiente. El valor `runs-on` debe coincidir con el nombre de instalación de Helm que utilizó al instalar el conjunto de ejecutores de escalado automático.\n\n   Para más información sobre cómo agregar flujos de trabajo a un repositorio, consulta [Inicio rápido para GitHub Actions](/es/actions/quickstart#creating-your-first-workflow).\n\n   ```yaml copy\n   name: Actions Runner Controller Demo\n   on:\n     workflow_dispatch:\n\n   jobs:\n     Explore-GitHub-Actions:\n       # You need to use the INSTALLATION_NAME from the previous step\n       runs-on: arc-runner-set\n       steps:\n       - run: echo \"🎉 This job uses runner scale set runners!\"\n   ```\n\n2. Una vez que hayas agregado el flujo de trabajo al repositorio, desencadena manualmente dicho flujo de trabajo. Para obtener más información, vea [Ejecutar un flujo de trabajo manualmente](/es/actions/managing-workflow-runs/manually-running-a-workflow).\n\n3. Para ver los runner pods que se crean mientras se ejecuta el flujo de trabajo, ejecuta el siguiente comando desde tu terminal.\n\n   ```bash copy\n   kubectl get pods -n arc-runners -w\n   ```\n\n   Un resultado exitoso se parecerá al siguiente.\n\n   ```bash\n   NAMESPACE     NAME                                                  READY   STATUS    RESTARTS      AGE\n   arc-runners   arc-runner-set-rmrgw-runner-p9p5n                     1/1     Running   0             21s\n   ```\n\n## Pasos siguientes\n\nActions Runner Controller puede ayudarte a administrar eficientemente los ejecutores de GitHub Actions. ¿Listo para empezar? Estos son algunos recursos útiles para que completes los pasos siguientes con ARC:\n\n* Para obtener información detallada sobre la autenticación, consulta [Autenticación de ARC en la API de GitHub](/es/actions/hosting-your-own-runners/managing-self-hosted-runners-with-actions-runner-controller/authenticating-to-the-github-api).\n* Para obtener ayuda sobre el uso de ejecutores de ARC en los flujos de trabajo, consulta [Uso de ejecutores de Actions Runner Controller en un flujo de trabajo](/es/actions/hosting-your-own-runners/managing-self-hosted-runners-with-actions-runner-controller/using-actions-runner-controller-runners-in-a-workflow).\n* Para obtener información sobre la implementación, consulta [Implementación de conjuntos de escalado de ejecutor con Actions Runner Controller](/es/actions/hosting-your-own-runners/managing-self-hosted-runners-with-actions-runner-controller/deploying-runner-scale-sets-with-actions-runner-controller).\n\n## Aviso legal\n\nAlgunas partes se han adaptado a partir de <https://github.com/actions/actions-runner-controller/> con licencia Apache-2.0:\n\n```text\nCopyright 2019 Moto Ishizawa\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n```"}