Kubernetes
Run your first Runops Task on your private Kubernetes cluster.
Setup
Requirements
- Access to create namespace, secrets and deployments in Kubernetes
- Credentials for the internal system of choice
Install & signup
Running this in the terminal will install Runops and setup your
account.
plain textnpm install -g runops runops signup
Agent Installation & Configuration
Create a json file with a set of credentials to the internal system
you will add to Runops. We will use a MySQL database in this example, if
you want to use a different integration, check the required variables in the integrations page.
plain textexport AGENT_TOKEN= #-- change-me --# export ENV_CONFIG=$(cat - <<EOF { "MYSQL_HOST": "mysql", "MYSQL_USER": "root", "MYSQL_PASS": "1a2b3c4d", "MYSQL_PORT": "3306", "MYSQL_DB": "testdb" } EOF) curl -sL https://raw.githubusercontent.com/runopsio/agent/main/setup/k8s.sh | bash kubectl apply -n runops -f https://github.com/runopsio/example-apps/blob/main/kubernetes/mysql-deploy.yaml
Create the Runops Connection
Create a Connection in Runops that uses the values from the
ENV_CONFIG
Secret key as credentials to connect to your
database or other internal systems.plain textrunops targets create \ --name my-test-db \ --type mysql \ --secret_provider 'env-var' \ --secret_path 'ENV_CONFIG'
Run your first Tasks
Now you can access this resource trough Runops. All sensitive data
stays inside your infrastructure, with Secrets stored in your Kubernetes
cluster and the connection to the database happening from your private
VPC.
plain textrunops tasks create -t my-test-db -s 'SELECT NOW()'
Add Configs to Connections
To make Connections useful we need to add more configurations.
Configs enable Tasks to access your real Connections, like databases,
AWS Accounts, and more.
Next steps: