sodafoundation / installer

provides easy installation and basic deployment based on specific configurations for SODA Projects
Apache License 2.0
35 stars 68 forks source link
ansible helm-charts salt-formula

installer

Releases LICENSE

Introduction

SODA installer project provides easy installation and basic deployment based on specific configurations for SODA Projects. The installer is created so as to support the integrated installation of specific projects for each SODA Release.

It is modular and specific project installation information is built based on the installation hooks and related configurations. Basically SODA installer plays a wrapper role to put all together and provide a simple installation for the users and experience overall solution.

Installer project is maintained by SODA Foundation directly.

SODA Installer supports installation of following SODA projects. If you want to install Orchestration, Sushi or Terra with Ceph backend, please use Installer version 1.7.0 or older.

Installation using Ansible

Install steps

Ensure no ansible & docker installed, OR Latest ansible and docker tools are installed with versions listed below or later. If ansible & docker is not installed in the OS, script install_dependencies.sh will install it.

Update configurations for individual projects in *`installer/ansible/group_var/.yml`** and follow commands listed below.

Please refer SODA documentation for the detailed installation steps and configuration options available.

Installation steps for Strato : To install Strato(Multi-cloud) and Dashboard using ansible installer, please follow below steps.

sudo apt-get update && sudo apt-get install -y git
git clone https://github.com/sodafoundation/installer.git
cd installer/ansible
git checkout v1.8.0 # you may choose specific release version also
chmod +x install_dependencies.sh && source install_dependencies.sh
export PATH=$PATH:/home/$USER/.local/bin

Enable following configurations

Note :

export HOST_IP=192.168.0.2 # Change HOST_IP value to real host ip
sudo -E env "PATH=$PATH" ansible-playbook site.yml -i local.hosts -v

Installation steps for Delfin : To install Delfin, SRM tool chain and Dashboard using ansible installer, please follow below steps.

sudo apt-get update && sudo apt-get install -y git
git clone https://github.com/sodafoundation/installer.git
cd installer/ansible
git checkout v1.8.0 # you may choose specific release version also
chmod +x install_dependencies.sh && source install_dependencies.sh
export PATH=$PATH:/home/$USER/.local/bin

Enable following configurations

export HOST_IP=192.168.0.2 # Change HOST_IP value to real host ip
sudo -E env "PATH=$PATH" ansible-playbook site.yml -i local.hosts -v

Uninstall

sudo -E env "PATH=$PATH" ansible-playbook clean.yml -i local.hosts -v

Tools used

Ubuntu 20.04

root@ubuntu2004:~/installer/ansible# ansible --version
ansible [core 2.13.5]
  config file = /etc/ansible/ansible.cfg
  configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /root/.local/lib/python3.8/site-packages/ansible
  ansible collection location = /root/.ansible/collections:/usr/share/ansible/collections
  executable location = /root/.local/bin/ansible
  python version = 3.8.10 (default, Jun 22 2022, 20:18:18) [GCC 9.4.0]
  jinja version = 3.1.2
  libyaml = True
root@ubuntu20:~/installer/ansible# python3 -m pip show ansible
Name: ansible
Version: 5.10.0
Summary: Radically simple IT automation
Home-page: https://ansible.com/
Author: Ansible, Inc.
Author-email: info@ansible.com
License: GPLv3+
Location: /usr/lib/python3/dist-packages
Requires: ansible-core
Required-by:

root@ubuntu20:~/installer/ansible# docker version
Client: Docker Engine - Community
 Version:           20.10.21
 API version:       1.41
 Go version:        go1.18.7
 Git commit:        baeda1f
 Built:             Tue Oct 25 18:02:21 2022
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.21
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.18.7
  Git commit:       3056208
  Built:            Tue Oct 25 18:00:04 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.9
  GitCommit:        1c90a442489720eec95342e1789ee8a5e1b9536f
 runc:
  Version:          1.1.4
  GitCommit:        v1.1.4-0-g5fd4c4d
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
root@ubuntu20:~/installer/ansible# docker compose version
Docker Compose version v2.12.2

Ubuntu 18.04

test@T:~/installer$ ansible --version
[DEPRECATION WARNING]: Ansible will require Python 3.8 or newer on the controller starting with Ansible 2.12. Current version: 3.6.9 
(default, Jun 29 2022, 11:45:57) [GCC 8.4.0]. This feature will be removed from ansible-core in version 2.12. Deprecation warnings can be 
disabled by setting deprecation_warnings=False in ansible.cfg.
ansible [core 2.11.12]
  config file = None
  configured module search path = ['/home/test/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /home/test/.local/lib/python3.6/site-packages/ansible
  ansible collection location = /home/test/.ansible/collections:/usr/share/ansible/collections
  executable location = /home/test/.local/bin/ansible
  python version = 3.6.9 (default, Jun 29 2022, 11:45:57) [GCC 8.4.0]
  jinja version = 3.0.3
  libyaml = True
test@T:~/installer$ python3 -m pip show ansible
Name: ansible
Version: 4.10.0
Summary: Radically simple IT automation
Home-page: https://ansible.com/
Author: Ansible, Inc.
Author-email: info@ansible.com
License: GPLv3+
Location: /home/test/.local/lib/python3.6/site-packages
Requires: ansible-core
Required-by:

test@T:~/installer/ansible$ docker version
Client: Docker Engine - Community
 Version:           20.10.21
 API version:       1.41
 Go version:        go1.18.7
 Git commit:        baeda1f
 Built:             Tue Oct 25 18:02:00 2022
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/version": dial unix /var/run/docker.sock: connect: permission denied
test@T:~/installer/ansible$ docker compose version
Docker Compose version v2.12.2

Documentation

https://docs.sodafoundation.io

Quick Start - To Use/Experience

https://docs.sodafoundation.io

Quick Start - To Develop

https://docs.sodafoundation.io

Latest Releases

https://github.com/sodafoundation/installer/releases

Support and Issues

https://github.com/sodafoundation/installer/issues

Project Community

https://sodafoundation.io/slack/

How to contribute to this project?

Join https://sodafoundation.io/slack/ and share your interest in the ‘general’ channel

Checkout https://github.com/sodafoundation/installer/issues labelled with ‘good first issue’ or ‘help needed’ or ‘help wanted’ or ‘StartMyContribution’ or ‘SMC’

Project Roadmap

We envision to provide fully automated, single click installation or deployment for SODA Solutions using all the projects integrated.

https://docs.sodafoundation.io

Join SODA Foundation

Website : https://sodafoundation.io

Slack : https://sodafoundation.io/slack/

Twitter : @sodafoundation

Mailinglist : https://lists.sodafoundation.io