From ad5c2414f4f8c23f2561e1f47a7b6f9deb71fe31 Mon Sep 17 00:00:00 2001 From: Artem Goncharov Date: Mon, 20 Jun 2022 11:32:56 +0200 Subject: [PATCH] Add quickstart guide Starting with ApiMon is not trivial. Start having at least very basic docs and sample inventory. --- README.rst | 14 ++++- quickstart/README.md | 6 ++ quickstart/inventory/group_vars/all.yml | 78 +++++++++++++++++++++++++ quickstart/inventory/hosts | 5 ++ 4 files changed, 102 insertions(+), 1 deletion(-) create mode 100644 quickstart/README.md create mode 100644 quickstart/inventory/group_vars/all.yml create mode 100644 quickstart/inventory/hosts diff --git a/README.rst b/README.rst index 0dab00a..e9426cb 100644 --- a/README.rst +++ b/README.rst @@ -1 +1,13 @@ -apimon_executor +ApiMon +====== + +ApiMon is a project for testing OpenStack API availability by performing +Ansible playbooks that intend to provision/deprovision resources. + +QuickStart +---------- + +The ``quickstart`` folder contains sample inventory that should be adapted to +the needs (at least fix IP addresses for the hosts and in the +``inventory/group_vars/all.yaml``). Installation is performed by Ansible using +Ansible Collection (as described in ``quickstart/README.md`` diff --git a/quickstart/README.md b/quickstart/README.md new file mode 100644 index 0000000..7567669 --- /dev/null +++ b/quickstart/README.md @@ -0,0 +1,6 @@ +# Steps + +. ``ansible-galaxy collection install git+https://github.com/opentelekomcloud/ansible-collection-apimon.git`` +. adapt inventory +. ``ansible-playbook -i inventory ~/.ansible/collections/ansible_collections/opentelekomcloud/apimon/playbooks/install_scheduler.yaml`` +. ``ansible-playbook -i inventory ~/.ansible/collections/ansible_collections/opentelekomcloud/apimon/playbooks/install_executor.yaml`` diff --git a/quickstart/inventory/group_vars/all.yml b/quickstart/inventory/group_vars/all.yml new file mode 100644 index 0000000..4082913 --- /dev/null +++ b/quickstart/inventory/group_vars/all.yml @@ -0,0 +1,78 @@ +scheduler_image: "quay.io/opentelekomcloud/apimon:dev" +executor_image: "quay.io/opentelekomcloud/apimon:dev" + +scheduler_config_file_name: apimon-scheduler.yaml +scheduler_config: + secure: /etc/apimon/apimon-scheduler-secure.yaml + gear: + # Start gearman service listening on 0.0.0.0 + - host: 0.0.0.0 + port: 4730 + start: true + log: + config: /etc/apimon/logging.conf + statsd: + host: localhost + scheduler: + socket: /tmp/scheduler.socket + refresh_interval: 10 + work_dir: /var/lib/apimon + zone: production + test_environments: + # Environments + - name: production + env: + OS_CLOUD: production + SOME_ANOTHER_ENV: fake + clouds: + - production + test_projects: + # Git projects with test scenarios + - name: apimon + repo_url: https://github.com/opentelekomcloud-infra/apimon-tests + repo_ref: master + scenarios_location: playbooks + test_matrix: + # Mapping of environments to test projects + - env: production + project: apimon + tasks: + - scenario1_token.yaml + +scheduler_secure_config_file_name: apimon-scheduler-secure.yaml +scheduler_secure_config: + # OpenStack credentials (cloud name = test_environment.OS_CLOUD) + clouds: + - name: production + data: + auth: + auth_url: fake.com + project_name: project_name + user_domain_name: user_domain_name + username: username + password: password + +executor_config_file_name: apimon-executor.yaml +# Fixme: fix ip address to the target instance +executor_config: + executor: + load_multiplier: 2 + # logs_cloud: swift + socket: /tmp/executor.socket + work_dir: /var/lib/apimon + zone: production + gear: + # Set gearman host to the ip address of the scheduler (not the localhost + # due to containers) + - host: 192.168.0.245 + port: 4730 + log: + config: /etc/apimon/logging.conf + metrics: + # Where to emit metrics to + statsd: + host: 192.168.0.245 + port: 8125 + +# executor_secure_config_file_name: apimon-executor-secure.yaml +# executor_secure_config: diff --git a/quickstart/inventory/hosts b/quickstart/inventory/hosts new file mode 100644 index 0000000..aba3315 --- /dev/null +++ b/quickstart/inventory/hosts @@ -0,0 +1,5 @@ +[scheduler] +80.158.57.168 ansible_user=ubuntu + +[executor] +80.158.57.168 ansible_user=ubuntu