Giter Club home page Giter Club logo

rciam-deploy's Introduction

Ansible Playbooks for deploying AAI for Research and Collaboration

A collection of playbooks for setting up a proxy-based Authentication & Authorisation Infrastracture (AAI) for Research and Collaboration.

Currently, the master playbook (site.yml) supports setting up the following components:

  • IdP/SP proxy based on one or more instances of SimpleSAMLphp (see authservers.yml playook)
  • cluster of memcached servers for caching user sessions in a distributed way to enable load-balancing and fail-over (see cacheservers.yml playbook)
  • reverse proxy based on nginx to support HTTP request load balancing among multiple SimpleSAMLphp web front-ends that use the back-end matrix of memcached servers (see webproxyservers.yml playbook)

Managed Node Requirements

On the managed nodes, you need a way to communicate, normally ssh, which by default uses sftp. If this is not available you can switch to scp in ansible.cfg. You will also need the following packages:

  • python (version 2.4 or later)
  • python-simplejson (only if you are running less than Python 2.5)
  • sudo (unless the default ansible become_method is overriden)

Control Machine Requirements

On the control machine, you need a recent version of Ansible. We recommend installing Ansible via โ€œpipโ€, which is the Python package manager (though other options are also available):

pip install ansible==1.9.6

Configuration

  • Set the hostnames/IP addresses of managed nodes in inventories/ENV/inventory, for each target environment, e.g. testing, staging, production, etc.
  • DO change the default SimpleSAMLphp admin password in inventories/ENV/group_vars/authservers
  • Modify variables in inventories/ENV/group_vars/authservers to generate the metadata of the IdP/SP proxy

Executing the Playbook

Assuming root access to the target machines, simple run the following command to execute the master playbook using the inventory file at the default location (see ansible.cfg):

ansible-playbook -v site.yml

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.