This worksheet accompanied a presentation by Steve Breker of Artefactual Systems, delivered as part of AtoM Camp Cambridge, a three-day boot camp held at St John's College, Cambridge University, May 9-11, 2017 For more information, see:
https://wiki.accesstomemory.org/Community/Camps/SJC2017
The presentation focused on the installation of Access to Memory, and the slides from it can be seen here:
https://www.slideshare.net/accesstomemory/installing-and-upgrading-atom
This handout showed attendees how Ansible can be used to automate the deployment process of AtoM, using the publicly available Ansible playbooks. You can find Artefactual's Ansible playbooks at:
https://github.com/artefactual/deploy-pub
These slides accompanied a presentation by Steve Breker of Artefactual Systems, delivered as part of AtoM Camp Cambridge, a three-day boot camp held at St John's College, Cambridge University, May 9-11, 2017 For more information, see:
https://wiki.accesstomemory.org/Community/Camps/SJC2017
These slides are intended for developers who are interested in modifying the default look and feel of AtoM - known as the Dominion theme - and developing a custom theme plugin. They include some theme examples, how to register a plugin in Symfony, and some ideas of the elements you can modify via theming, with examples.
These slides accompanied a presentation by Steve Breker of Artefactual Systems, delivered as part of AtoM Camp Cambridge, a three-day boot camp held at St John's College, Cambridge University, May 9-11, 2017 For more information, see:
https://wiki.accesstomemory.org/Community/Camps/SJC2017
These slides are intended for developers who are interested in modifying the default look and feel of AtoM - known as the Dominion theme - and developing a custom theme plugin. They include some theme examples, how to register a plugin in Symfony, and some ideas of the elements you can modify via theming, with examples.
Behaviour Driven Development con Behat & Drupalsparkfabrik
Il Behaviour Driven Development è una pratica di sviluppo software nella quale i comportamenti della propria applicazione vengono descritti con un linguaggio chiaro e comprensibile a tutti. Grazie a Behat, questi scenari si trasformano in test veri e propri che possono essere eseguiti sulle nostre applicazioni Drupal.
https://github.com/Alfresco/alfresco-ng2-components
In this slides we are going to see how to easy customize:
Customize Document List
Customize Viewer
Customize Login
Python Flask app deployed to OPenShift using Wercker CIBruno Rocha
This talk will show you how to create a really
simple Flask API application. Keep its source
code on Github and have wercker CI to
automatically deploy successful commits to
an OpenShift application
CODE on github: https://github.com/rochacbruno/flask-openshift-wercker
Behaviour Driven Development con Behat & Drupalsparkfabrik
Il Behaviour Driven Development è una pratica di sviluppo software nella quale i comportamenti della propria applicazione vengono descritti con un linguaggio chiaro e comprensibile a tutti. Grazie a Behat, questi scenari si trasformano in test veri e propri che possono essere eseguiti sulle nostre applicazioni Drupal.
https://github.com/Alfresco/alfresco-ng2-components
In this slides we are going to see how to easy customize:
Customize Document List
Customize Viewer
Customize Login
Python Flask app deployed to OPenShift using Wercker CIBruno Rocha
This talk will show you how to create a really
simple Flask API application. Keep its source
code on Github and have wercker CI to
automatically deploy successful commits to
an OpenShift application
CODE on github: https://github.com/rochacbruno/flask-openshift-wercker
Introduction to Ansible - (dev ops for people who hate devops)Jude A. Goonawardena
This presentation covers the fundamentals of Ansible and it is useful for the people who are seeking information to start using Ansible, what it is capable of and how to use it right. I purposely made syntax errors in certain slides to demonstrate how to fix such errors and giving the idea of the importance to write syntax right. If you have any questions please don't hesitate to contact me over my mail address judeashan@gmail.com. All the best!!
Introduction to Ansible - Peter HalliganCorkOpenTech
Cork Open Technology Presentation, 20th November 2018.
Ansible is an open source automation language. It’s also a deployment and orchestration tool. We will look at some of the core concepts and use cases, rolling updates, version controlled deployment and Infrastructure as code.
Zero Downtime Deployment with Ansible - learn how to provision Linux servers with a web-proxy, a database and automate zero downtime deployment of a Java application to a load balanced environment.
These are the slides from a tutorial held at the Velocity Conference in Barcelona November 19th, 2014.
Git repo: https://github.com/steinim/zero-downtime-ansible
Introduction
Definitions
Why ansible
Understanding YAML
YAML Data presentation syntax
Basics getting started
Setting up ansible
Managing configuration and Inventory
Ad-hoc commands
Working with modules
Understanding playbooks
Variables, includes, imports and facts
Understanding Jinja2 templates
Working with roles
Understanding role structure
Creating roles
Deploying roles with ansible galaxy
Using the ansible galaxy CLI utility
This presentation is an introduction to Ansible, an IT automation tool which can configure systems, deploy software, and orchestrate more advanced IT tasks such as continuous deployments or zero downtime rolling updates.
1,2편에서 다룬 chroot와 pivot_root를 통해서 root filesystem을 isolation하였습니다. 마운트 네임스페이스는 파일시스템 마운트를 isolation 하는 것으로 이미 pivot_root에서도 사용하였지만, mount 처리를 격리함으로써 컨테이너 내부의 파일시스템 구조를 독립적으로 유지합니다. 실제 도커 컨테이너의 이미지 tarball을 이용하여 pivot_root와 mount namespace까지 적용하여 실제 도커 방식과 유사하게 컨테이너를 기동하여 봅니다. 그리고, 컨테이너 이미지 용량/중복을 해결하기 위한 overlayFS 에 대하여 다룹니다.
https://netpple.github.io
These slides were first publicly shared as part of the 2019 AtoM Camp, held at the University of Westminster in London, UK, July 15-17, 2019.
They provide users with guidance on how to prepare archival descriptions for import into Access to Memory (AtoM) via CSV import. These slides were prepared against AtoM 2.5, and are accurate for versions 2.3-2.5. Earlier versions may require some minor changes; later releases may introduce changes to the CSV templates not covered here.
You can find the latest CSV import templates for AtoM on our wiki, here:
- https://wiki.accesstomemory.org/Resources/CSV_templates
For more information about Access to Memory (AtoM), see:
- https://www.accesstomemory.org
These slides were first publicly shared as part of the 2019 AtoM Camp, held at the University of Westminster in London, UK, July 15-17, 2019.
The slides include tips, tricks, workarounds, warnings, and gotchas about AtoM that can help orient new users - and hopefully even teach experienced users a couple new things!
For more information about Access to Memory (AtoM), see:
* https://www.accesstomemory.org
These slides were presented by Dan Gillean, AtoM Program Manager with Artefactual Systems, to provide an update on the AtoM 2.5 release and long-term AtoM3 news to the UK regional AtoM users group meeting held in Glasgow on May 17, 2019. For more information on this group see:
https://wiki.accesstomemory.org/Community/Groups/UK
Fore more information on the AtoM 2.5 release, please see:
https://wiki.accesstomemory.org/Releases/Release_announcements/Release_2.5
Access to Memory (AtoM) is an open source web application for standards-based archival description and access - learn more at:
https://www.accesstomemory.org
To provide users with an easy to install local environment for testing and development, Artefactual maintains a version of AtoM that can be installed on a laptop or home computer, regardless of operating system. We have slides that will explain what Vagrant is and how to install the AtoM Vagrant box here:
http://bit.ly/AtoM-Vagrant
These slides will help users create a re-usable set of data for use in a local AtoM Vagrant environment. Having a set of data that can easily be reloaded will make the AtoM Vagrant box more useful to local testers and developers.
The slides were originally created by Dan Gillean, AtoM Program Manager, for use in a series of training workshops delivered July 9-13, 2018 at the University of the Witswatersrand in Johannesburg, South Africa. The slides are based on current functionality in AtoM release 2.4 - they have been tested in the AtoM 2.4.0.2 and 2.5.0.0 Vagrant boxes.
Access to Memory (AtoM) is an open source web application for standards-based archival description and access - learn more at:
https://www.accesstomemory.org
These slides will provide users with an overview of how search works in AtoM, along with a detailed walkthrough of using the Advanced search panel, and performing Expert searches in AtoM.
The slides were originally created by Dan Gillean, AtoM Program Manager, for use in a series of training workshops delivered July 9-13, 2018 at the University of the Witswatersrand in Johannesburg, South Africa. The slides are based on current functionality in AtoM release 2.4.
Building the Future Together: AtoM3, Governance, and the Sustainability of Op...Artefactual Systems - AtoM
Slides accompanying a presentation given by Dan Gillean on June 7th, 2018 at Open Repositories 2018, held in Bozeman, MT.
Access to Memory is a web-based open source application for standards based description and access. AtoM was first released in 2008 and much of the codebase is now relying on deprecated frameworks and libraries – and at the same time, new standards and technologies are changing how our profession approaches description and access. Currently Artefactual Systems, a Canadian based company, uses a services model to support the project. Artefactual is looking ahead to AtoM3, and considering building a linked data driven platform for archival description and access. As we consider AtoM's next generation, we are also examining governance and maintenance models to sustain the project and better empower our user community as Artefactual wasn't originally intended to be AtoM's organizational home. This presentation will offer some thoughts on existing open source project governance models, challenges, and possibilities for the future. How do we ensure community engagement and project sustainability over time?
These slides accompanied a presentation by Dan Gillean and Sara Allain of Artefactual Systems, delivered as part of AtoM Camp Cambridge, a three-day boot camp held at St John's College, Cambridge University, May 9-11, 2017 For more information, see:
https://wiki.accesstomemory.org/Community/Camps/SJC2017
In this session, we took a quick tour of some examples of how AtoM is being implemented by our global community of users. We looked specifically at interesting themes, customizations, or the creative use of existing features such as static pages or repository theming as a way of exploring some of the different ways AtoM can be used. Participants were then invited to come up and show off their AtoM site to the attendees as well.
These slides accompanied a presentation by Dan Gillean and Sara Allain of Artefactual Systems, delivered as part of AtoM Camp Cambridge, a three-day boot camp held at St John's College, Cambridge University, May 9-11, 2017 For more information, see:
https://wiki.accesstomemory.org/Community/Camps/SJC2017
In this session, Dan Gillean covered some of key considerations when preparing to migrate data from a legacy source system into AtoM. The slides cover the steps involved, paying specific attention to AtoM's data model and behaviors that should be considered when preparing your data for import into AtoM.
These slides accompanied a presentation by Dan Gillean and Sara Allain of Artefactual Systems, delivered as part of AtoM Camp Cambridge, a three-day boot camp held at St John's College, Cambridge University, May 9-11, 2017 For more information, see:
https://wiki.accesstomemory.org/Community/Camps/SJC2017
In this session, we looked at the history of the AtoM project, the current governance and maintenance model for AtoM that Artefactual Systems maintains, as well as several other open source business models and stakeholders as we consider ways in which governance and maintenance might look different in the future. Finally, we looked at the state of the application at present with an eye to the future - exploring how changes in international standards and web technologies provide an opportunity to consider what AtoM 3 might look like. The session was followed by open discussion.
These slides accompanied a presentation by Dan Gillean of Artefactual Systems, delivered as part of AtoM Camp Cambridge, a three-day boot camp held at St John's College, Cambridge University, May 9-11, 2017 For more information, see:
https://wiki.accesstomemory.org/Community/Camps/SJC2017
In 2013, with the introduction of AtoM 2.0, Artefactual began a fresh rewrite of all the Access to Memory documentation, using Sphinx Documentation as the primary platform. These slides provide some context and background for this change, introduce Sphinx and reStructuredText, and go on to outline step by step how AtoM users can contribute to the AtoM documentation.
These slides accompanied a presentation by Steve Breker of Artefactual Systems, delivered as part of AtoM Camp Cambridge, a three-day boot camp held at St John's College, Cambridge University, May 9-11, 2017 For more information, see:
https://wiki.accesstomemory.org/Community/Camps/SJC2017
These slides are intended for programmers interested in developing new features for Access to Memory. They first provide an overview of the feature development proccess, and then look at the different types of development typically pursued (plugins, CLI tasks, Background jobs, and core features), with tips and suggestions for each.
These slides accompanied a presentation by Steve Breker of Artefactual Systems, delivered as part of AtoM Camp Cambridge, a three-day boot camp held at St John's College, Cambridge University, May 9-11, 2017 For more information, see:
https://wiki.accesstomemory.org/Community/Camps/SJC2017
These slides provide advanced users with an overview of AtoM's data model, and demonstrate how a graphical user interface application such as MySQL Workbench can be used to explore the AtoM MySQL database from the back-end. The slides include a number of example queries.
These slides accompanied a presentation by Steve Breker of Artefactual Systems, delivered as part of AtoM Camp Cambridge, a three-day boot camp held at St John's College, Cambridge University, May 9-11, 2017 For more information, see:
https://wiki.accesstomemory.org/Community/Camps/SJC2017
These slides provide developers and system administrators with some suggestions on how to install, maintain, and upgrade Access to Memory. They are intended to supplement the offficial installation documentation, found in the Atom Administrator's Manual:
https://www.accesstomemory.org/docs/latest/
These slides accompanied a presentation by Steve Breker of Artefactual Systems, delivered as part of AtoM Camp Cambridge, a three-day boot camp held at St John's College, Cambridge University, May 9-11, 2017 For more information, see: https://wiki.accesstomemory.org/Community/Camps/SJC2017
These slides introduce users to the Access to Memory codebase. You can find AtoM's code at: https://github.com/artefactual/atom/
These slides were presented by Dan Gillean at the first ever AtoM Camp, held at the SFU Harbour Centre in Vancouver, BC, Canada, March 20-22, 2017. For more information on the Camp, see:
https://wiki.accesstomemory.org/Community/Camps/SFU2017
These slides introduce some of the primary Command Line tasks available in Access to Memory (AtoM), which can be used to support site maintenance and troubleshooting. For further information on AtoM CLI tasks, see:
* https://www.accesstomemory.org/docs/latest/admin-manual/maintenance/cli-tools/
* https://www.youtube.com/playlist?list=PLZiwlG5eSMeyeETe15EsEBSu5htPLK-wm
The CLI tasks introduced in these slides are based on the 2.4 AtoM release - some tasks or task options may not be available in earlier releases; tasks may be changed in future releases.
These slides were presented by Dan Gillean at the first ever AtoM Camp, held at the SFU Harbour Centre in Vancouver, BC, Canada, March 20-22, 2017. For more information on the Camp, see:
https://wiki.accesstomemory.org/Community/Camps/SFU2017
These slides introduce participants to basic commands in the linux/unix command-line interface, for navigation and basic tasks such as reading, creating, deleting, and moving files. The slides were intended as an initial introduction for archivists unfamiliar with using the command-line, prior to teaching them about the command-line tasks available in Access to Memory (AtoM), which can be used for maintenance and troubleshooting.
AtoM and Vagrant: Installing and Configuring the AtoM Vagrant Box for Local T...Artefactual Systems - AtoM
These slides introduce AtoM users to Vagrant, and walk users through the process of installing the the AtoM Vagrant box for local testing and development on a home computer or laptop, regardless of what operating system you use.
WARNINGS:
These slides were last updated in May 2017, using the AtoM 2.4 Vagrant box, which is installed using Ubuntu 16.04. and PHP 7.0. Future versions of AtoM may use a different version of Ubuntu and PHP, which might change some of the command-line tasks used to update the box in Part 2. Be sure to check the AtoM documentation for the most up-to-date information: https://www.accesstomemory.org/docs/latest/
The AtoM Vagrant box is designed for local testing and development - it is NOT PRODUCTION READY and should not be used for long-term data storage. Please see the AtoM documentation for instructions on how to install AtoM on a server for use in your institution.
Slides accompanying a day-long introduction to AtoM and Archivematica, presented by Dan Gillean and Justin Simpson at the UK National Archives as part of an AIM25 and Higher Education Archive Programme Network Meeting, December 2, 2016.
Slides accompanying a day-long AtoM and Archivematica workshop, delivered October 17, 2016 at the VII Congresso Nacional de Arquivologia in Fortaleza, Brazil.
These slides introduce AtoM (short for Access to Memory), a flexible, open-source application for standards-based description and access in a multilingual, multi-repository environment.
For more information, visit https://accesstomemory.org/
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Installing AtoM with Ansible
1. AtoM Camp: Installing AtoM with Ansible
Document author: David Juhasz
Date and time: Tuesday, 09 May 2017, 1pm - 2pm
Instructor: Steve Breker
1. Quick overview of Ansible
○ Automation and orchestration - like Chef, Puppet
○ FOSS, Project now managed and copyrighted by RedHat
○ Written in python and PowerShell
○ Agentless structure - no minimal software required on installation nodes (python
is required)
○ Idempotent (unless you do it wrong)
○ Uses SSH for secure connection and communication with remotes
○ Config uses YAML and Jinja templates.
2. Install ansible
○ Centos/Redhat:
$ sudo yum install ansible
○ Ubuntu/Debian:
$ sudo apt-get install software-properties-common
$ sudo apt-add-repository ppa:ansible/ansible
$ sudo apt-get update
$ sudo apt-get install ansible
○ MacOSX: Install with pip
$ sudo pip install ansible
○ Windows: not supported (for control machine)
3. Clone https://github.com/djjuhasz/deploy-pub/tree/dev/add-ufw-role
$ git clone -b dev/atomcamp-deploy
git@github.com:djjuhasz/deploy-pub.git
$ cd deploy-pub/playbooks/atom-xenial/
4. Overview of ansible directory structure and file types:
○ No hard and fast rules as far as I can tell. There are many variations on the
“recommended” directory structure shown below.
2. production # inventory file for production servers
staging # inventory file for staging environment
group_vars/
group1 # here we assign variables to particular
group2 # groups
host_vars/
hostname1 # if systems need specific variables, put
hostname2 # them here
library/ # if any custom modules, put them here
(optional)
filter_plugins/ # if any custom filter plugins, put them here
(optional)
site.yml # master playbook
webservers.yml # playbook for webserver tier
dbservers.yml # playbook for dbserver tier
roles/
common/ # this hierarchy represents a "role"
tasks/ #
main.yml # <-- tasks file can include smaller files
if warranted
handlers/ #
main.yml # <-- handlers file
templates/ # <-- files for use with the template
resource
ntp.conf.j2 # <------- templates end in .j2
files/ #
bar.txt # <-- files for use with the copy resource
foo.sh # <-- script files for use with the script
resource
vars/ #
main.yml # <-- variables associated with this role
defaults/ #
main.yml # <-- default lower priority variables for
this role
meta/ #
main.yml # <-- role dependencies
library/ # roles can also include custom modules
lookup_plugins/ # or other types of plugins, like lookup in
this case
○ playbook - top level of ansible script hierarchy - a collection of roles that are run
again a set of hosts.
○ roles - second level script files used to define a set of steps for deploying for a
particular “role” (e.g. atom, elasticsearch, mysql).
3. ■ Roles can be defined locally, or can be linked and downloaded via a
“requirements.yml” file.
■ Roles can all be deployed to one host or split among multiple hosts.
■ Include tasks, handlers, variable files and more.
○ tasks - third level of script file hierarchy. Smaller units of code, that define the
tasks required for a deployment (e.g. copy config file, restart php, install
imagemagick package)
○ blocks - a single command within a task file, using multiple lines to split up
parameters, calls, options, etc.
○ handlers - tasks that are run once no matter how many times they are called
(triggered by a “notify” block)
○ vars - variables for roles and tasks
○ defaults - defaults for variables and config settings; “vars” overwrite these
defaults.
○ templates - config file templates for installed apps. Written in “Jinja” templating
language (.j2)
○ meta - metadata about playbook (author, license, etc.)
5. Not included in “recommend” structure, but used in Artefactual playbooks
○ hosts.yml - inventory file. A list of host systems that can be targets for
deployment. Groups of hosts (e.g. “webservers”) can be used to target playbooks
to a number of hosts simultaneously (e.g. updating nginx for all webserver hosts).
○ requirements.yml - manifest file of roles required for a playbook.
○ LICENSE
○ README.md
6. Download remote roles
○ Many are from https://github.com/artefactual-labs
$ ansible-galaxy install -f -p roles/ -r requirements.yml
7. Edit local config variables
○ hosts.yml
[atom]
192.168.1.1
○ vars-singlenode.yml
8. Deploy!
$ ansible-playbook singlenode.yml
--inventory-file="./hosts.yml"
--user="root"
--extra-vars="atom_flush_data=yes"
--verbose
4. 9. Ansible ecosystem
○ Galaxy - community roles
○ Vault - At rest encryption of sensitive data
○ Tower - Paid GUI management and reporting tool
10. Questions and troubleshooting