CoTech Hack 2018/CoTech and Ansible
Jump to navigation
Jump to search
Links
PLain text from the pad:
----------------------------------------------------------------------------
___ _____ _ _ _ _ _
/ __\___/__ \___ ___| |__ _ /_\ _ __ ___(_) |__ | | ___
/ / / _ \ / /\/ _ \/ __| '_ \ _| |_ //_\\| '_ \/ __| | '_ \| |/ _ \
/ /__| (_) / / | __/ (__| | | | |_ _| / _ \ | | \__ \ | |_) | | __/
\____/\___/\/ \___|\___|_| |_| |_| \_/ \_/_| |_|___/_|_.__/|_|\___|
----------------------------------------------------------------------------
https://pad.vvvvvvaria.org/cotech-infra
# Agenda (1 hour)
* Who Is Here, Introductions. (5 mins)
* Survey: How do you use Ansible in your coop. (10-15 mins)
* Ansible Galaxy and Sharing Infrastructure. (30-40 mins)
* Ansible Project And CoTech. (5 mins) (optional)
Agenda forming! Add your points, shuffle times, whatever.
# Who Is Here?
* Autonomic: Leo
* Aptivate: Alice, Luke, Tom, Martin, Daniel
* Web Architects: Chris, Nick
* Media Blaze: Liam
* Stephen: Agile Collective
* Outlandish: Matt
# Survey: How do you use Ansible in your Coop?
Useful to know who is doing what. Let's take a minute and see what is useful to know.
* Since when are you using Ansible in your coop?
* How do you use Ansible (across the board, or just application deployment, etc.)?
* How many machines do you manage with Ansible (roughly).
* Who has roles that could potentially be shared?
* What distributions are targetted?
* WebArchs: Debian Stretch
* Outlandish: Ubuntu 16.04
* Aptivate: CentOS 7
* Agile Collective: Ubunutu 18.04
* Autonomic: Debian Stable
* MediaBlaze Hosts: Ubuntu 16.04 + 18.04 (looking to implement Ansible)
Autonomic:
* server provisoning, pass integration
* https://gitlab.com/autonomic-roles (libre roles)
* Finding it hard to find the time to update our libre roles. Roles used internally are more up to date.
Aptivate:
* started to use in last few months, moving from puppet based infra management. AH
* https://git.coop/aptivate/ansible-roles
* https://git.coop/aptivate/ansible-plays
Media Blaze:
* Not currently using, but interested to get into it
Web Architects / Outlandish (Nic):
* Experienced user
* Many roles that can be shared
* https://git.coop/webarch
Outlandish:
* AWS provisioning and app deployment
Agile Collective:
* Moving from puppet to Ansible
# Ansible-Galaxy And Sharing Infrastructure
* https://galaxy.ansible.com
* https://molecule.readthedocs.io
* https://github.com/ansible/ansible-lint
* Matt: difficulty using molecule. Big chunks
* Limitations with Docker. Using AWS driver which works.
* But it is slow. Issue with credentials (protected branches).
* Cost issue with running.
* Matt: Molecule and testinfra seems most useful.
* Leo: Autonomic a tough time setting Molecule up.
* Nick: What if git.coop had a special runner to run tests on a clean VM?
* Luke: Aptivate created a driver? to spin up temporary vms on provider using API (Linode).
* Alice: What about sharing roles - trust? Who has control?
* AWX can do this (RedHat solution, recently Free Software). Ansible Tower?
* AWX has team/prg access controls, which member ran a playbook.
* Each coop can maintain their own repos - use the typical fork/pull request model.
* Stephen: Public roles typically, used as inspiration to write own roles.
* Nick: How do we find a middle ground between global public and 'it works for my machine'
* Alice: Everyone run their fork and only merge changes that they have reviewed.
* Chris: Would make sense to have separate roles for different OS's
* Chris: we could work towards common strategies for structuring our roles
* Luke's brain: we have common parts, but different OSes support (for example).
* What if there was some way to plug in and out the bits that are specific for our own setups?
* Nick: examples of 'external/internal/...' where our setups differ
* Nick: Can we get going with a best practices document which we can start to share.
* This could be very useful.
* Luke: How do we standardise documentation for our roles and hook 'what it says it does' to molecule.
* Nick: pluralistic documentation rather than "one true way"
* Chris: Chris from Barcelona who is working on coop cloud and are using web arch's roles
* Matt: Outlandish roles are done by me and can be shared
* Matt: can we share how we are doing deployments? This would be useful!
* Stephen: We have a monolith repository so it is hard to share this
* Matt: we use ansistrano? for deploying applications
* Leo: its a good stratergy to share roles that do very specific things
* Matt: testinfra on the play level! Quick, easy, helps give guarantees.
* Is the bloody webserver still up?
### Conditions for Sharing
* Tested
* Some way generally standardised (docs, roles, etc. - guide might help this)
* "UNIX thinking" - best practice? This is a design choice.
* VERSIONING (galaxy supports this - also releases etc.)
* change logs are important
- overhead is there but also better than things breaking
- lets stop writing lets encrypt roles
- does galaxy support signing?
* Luke: Ansible galaxy is almost ready for self hosting. A few issues right now but devs are working on it.
* https://galaxy.ansible.com/
* Matt: self hosted galaxy would be really useful
* Nick: we can already share roles and we shouldn't wait for galaxy to get sorted before we start sharing
* Alice: does ansible galaxy implement any signing?
* Leo: probably just TLS
* Matt: does anyone have worries about IBM by out of Red Hat affecting galaxy?
* Consensus that it will be ok becayse GPL
* Group temporaily distracted by Ansible swag including tshirts and stickers
* Chris: if we setup galaxy, we should to co-ops internationally
## co-op ansible stuff to browse
* https://gitlab.outlandish.com/ansible-roles
* https://git.coop/webarch/
* https://git.coop/aptivate/ansible-roles
* https://git.coop/aptivate/ansible-plays
* https://github.com/gcoop-libre?utf8=%E2%9C%93&q=ansible
* https://gitlab.com/autonomic-roles
ACTION: git.coop/cotech/ANSIBLE/best-practices etc. one foo.md with some docs
##LIAM##
Sorry guys cant really hear you so ill drop call here and catch up via this etherpad if thats ok just hearibg a lot of background noise
Ok! Sorry, damn london noise pollution .
no problems haha
* Sharing Infrastructure
* Why aren't roles shared more? What makes you not re-use roles?
* What would make roles more feasible for re-use?
* What are concerns around sharing roles across coops? Blockers?
# The Ansible Project And CoTech
* https://docs.ansible.com/ansible/devel/dev_guide/.
* https://github.com/ansible/community/wiki/linode (example of working group run with Aptivate members).
* Why is this relevant for Coops?
# Meta
* https://community.coops.tech/t/cotech-gathering-ansible-and-shared-infrastructure-session/1107
* https://wiki.coops.tech/wiki/Main_Page
* https://www.meetup.com/Ansible-London/events/254878934/
__NOPUBLISH__