Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Kubespray | 13,655 | a day ago | 140 | apache-2.0 | Jinja | |||||
Deploy a Production Ready Kubernetes Cluster | ||||||||||
Ansible For Devops | 6,699 | 18 days ago | 90 | mit | Python | |||||
Ansible for DevOps examples. | ||||||||||
Detectionlab | 4,097 | a month ago | 29 | mit | HTML | |||||
Automate the creation of a lab environment complete with security tooling and logging best practices | ||||||||||
Trellis | 2,409 | 7 days ago | 20 | mit | Jinja | |||||
WordPress LEMP stack with PHP 8.1, Composer, WP-CLI and more | ||||||||||
Ansible Tuto | 2,113 | 21 days ago | 9 | other | Shell | |||||
Ansible tutorial | ||||||||||
Infrastructure As Code Tutorial | 2,065 | 4 months ago | 11 | apache-2.0 | ||||||
Infrastructure As Code Tutorial. Covers Packer, Terraform, Ansible, Vagrant, Docker, Docker Compose, Kubernetes | ||||||||||
Ansible Vagrant Examples | 1,988 | 4 months ago | 1 | mit | ||||||
Ansible examples using Vagrant to deploy to local VMs. | ||||||||||
Boilerplates | 1,727 | 9 days ago | mit | HCL | ||||||
This is my personal template collection. Here you'll find templates, and configurations for various tools, and technologies. | ||||||||||
Learning Tools | 1,412 | 25 days ago | 4 | mit | Python | |||||
A collection of tools and files for learning new technologies | ||||||||||
Drupal Vm | 1,391 | 121 | 10 | a month ago | 99 | May 28, 2021 | 16 | mit | Jinja | |
A VM for Drupal development |
_________ .__ _____ __ .__
/ _____/_ _ _|__|/ ____\/ |______ ____ __ __| | _____ _______
\_____ \\ \/ \/ / \ __\\ __\__ \ _/ ___\| | \ | \__ \\_ __ \
/ \\ /| || | | | / __ \\ \___| | / |__/ __ \| | \/
/_______ / \/\_/ |__||__| |__| (____ /\___ >____/|____(____ /__|
\/ \/ \/ \/
This repository will create a virtualized OpenStack Swift cluster using Vagrant, VirtualBox, Ansible.
Note this will start seven virtual machines on your computer.
$ git clone [email protected]:curtisgithub/swiftacular.git
$ cd swiftacular
# Checkout some modules to help with managing openstack
$ git clone https://github.com/openstack-ansible/openstack-ansible-modules library/openstack
$ vagrant up
$ cp group_vars/all.example group_vars/all # and edit if desired
$ ansible-playbook site.yml
Ubuntu 14.04 is probably the most tested version right now, then Ubuntu 12.04, followed up by Redhat/CentOS 6.5+.
The Vagrantfile has the above boxes in place with Ubuntu 12.04 being the default uncommented box. To use one of the other operating systems as the basis for Swiftacular, simply uncomment the OS you would like to use in the Vagrant file, and make sure the other boxes are commented out.
Seven Vagrant-based virtual machines are used for this playbook:
Each vm will have four networks (technically five including the Vagrant network). In a real production system every server would not need to be attached to every network, and in fact you would want to avoid that. In this case, they are all attached to every network.
Because this playbook configures self-signed SSL certificates and by default the swift client will complain about that fact, either the --insecure
option needs to be used or alternatively the SWIFTCLIENT_INSECURE
environment variable can be set to true.
You can install the swift client anywhere that you have access to the SSL termination point and Keystone. So you could put it on your local laptop as well, probably with:
$ pip install python-swiftclient
However, I usually login to the package_cache server and use swift from there.
$ vagrant ssh swift-package-cache-01
[email protected]:~$ . testrc
[email protected]:~$ swift list
[email protected]:~$ echo "swift is cool" > swift.txt
[email protected]:~$ swift upload swifty swift.txt
swift.txt
[email protected]:~$ swift list
swifty
[email protected]:~$ swift list swifty
swift.txt
If you want to redo the installation there are a few ways.
To restart completely:
$ vagrant destroy -f
$ vagrant up
# wait...
$ ansible-playbook site.yml
There is a script to destroy and rebuild everything but the package cache:
$ ./bin/redo
$ ansible -m ping all # just to check if networking is up
$ ansible-playbook site.yml
To remove and redo only the rings and fake/sparse disks without destroying any virtual machines:
$ ansible-playbook playbooks/remove_rings.yml
$ ansible-playbook site.yml
To remove the keystone database and redo the endpoints, users, regions, etc:
$ ansible-playbook ./playbook/remove_keystone.yml
$ ansible-playbook site.yml
This playbook was developed in the following environment:
There is an swift-ansible-modules directory in the library directory that contains a couple of modules taken from the official Ansible modules as well as the openstack-ansible-modules and for now both have been modified to allow the "insecure" option, which means self-signed certificates. I hope to get those changes into their respective repositories soon.
See the issues in the tracking system on Github for Swiftacular with the enhancement label.
See the issues in the tracking tracking system on Github for Swiftacular.