Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add quickstart guide #32

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 13 additions & 1 deletion README.rst
Original file line number Diff line number Diff line change
@@ -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``
6 changes: 6 additions & 0 deletions quickstart/README.md
Original file line number Diff line number Diff line change
@@ -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``
78 changes: 78 additions & 0 deletions quickstart/inventory/group_vars/all.yml
Original file line number Diff line number Diff line change
@@ -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:
5 changes: 5 additions & 0 deletions quickstart/inventory/hosts
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
[scheduler]
80.158.57.168 ansible_user=ubuntu

[executor]
80.158.57.168 ansible_user=ubuntu