Understanding internal operations is crucial in financial services. Are public interfaces running smoothly? Are the back-end business systems as productive as they could be? Are infrastructure resources being allocated correctly based on business need? These are exactly the kind of questions that organizations must be able to answer but, surprisingly, they struggle with these questions. Called The Salamander, the tool has provided the bank an unparalleled ability to optimise and simplify business IT processes, which ultimately saves costs and leads to an improved customer experience. The Salamander team designed a solution running on a cloud computing architecture with several NoSQL solutions as Neo4J, MongoDB, REDIS,.... With these repositories they generate data visualisations that clearly demonstrate the relationship between among operations. The front-end and back-end of the application communicate via RESTFUL APIs and NodeJS-based servers provide elasticity when accessing the stored data. The new challenges are related with the need of load and use specific result sets stored and useful to diagnosis but not for immediate reading. At this point appears Docker appears as a solution to offer fast and easy custom database service.
In this talk we are going to present why Zoe, the Container Analytics as a Service, was born, its architecture and the problems it tries to solve. Zoe would not be there without Swarm and Docker and we will also talk about some of the stumbling blocks we encountered and the solutions we found, in particular in transparently connecting Docker hosts through a physical network. Zoe was born as a research prototype, but is now stable and is currently being used to run real jobs from users in our research institution. Application scheduling on top of Swarm and optimized container placement will also be covered during the presentation.
Bity is an internet money gateway built by Swiss Bitcoin Exchange ( SBEX ). To trade bitcoin the entire infrastructure of Bity is running in Docker containers. All the components of the infrastructure are using Docker, from the frontend applications and load balancer, the Django based backend, replicated Postgres database, Bitcoin daemon and remittance engine. All software goes through a CI pipeline that starts with Docker images being built on private repositories in Docker hub. Developers take also advantage of a docker-compose definition that allows them to run the entire infrastructure on a single laptop. Finally the production deployments happen thanks to the Ansible Docker module on a CloudStack based public cloud. Everything has been automated to ease re-deployment and operations. This presentation will go through every component and how Docker has enabled us to go production in 4 months.
Oxford University Press (OUP) recently started the Oxford Global Languages (OGL) initiative (http://www.oxforddictionaries.com/words/oxfordlanguages) which aims at providing language resources for digitally under represented languages. In August 2015 OUP launched two African languages websites for Zulu (http://zu.oxforddictionaries.com) and Northern Sotho (http://nso.oxforddictionaries.com). The backend of these websites is based on an API retrieving data in RDF from a triple store and delivering data to the frontend in JSON-LD.
The entire micro-service infrastructure for development, staging, and production runs on Docker containers in Amazon EC2 instances. In particular, we use Jenkins to rebuild the Docker image for the API based on a Python Flask application and Docker Compose to orchestrate the containers. A typical CI workflow is as follows:
- a developer commits code to the codebase
- Jenkins triggers a job to run unit tests
- if the unit tests are successful, the Docker image of the Python Flask application is rebuilt and the container is restarted via Docker Compose
- if the unit tests or the Docker build failed, the monitor view shows the Jenkins jobs in red and displays the name of the possible culprit who broke the build.
A demo of this CI workflow is available at http://www.sandrocirulli.net/continuous-integration-with-jenkins-docker-and-compose
Docker is an amazing technology. In particular, its build-once-run-anywhere model unlocks the world of cluster schedulers like Mesos and Kubernetes. These solve many of the problems of running high-scale websites, but introduce new challenges that need addressing.
In this talk, Evan will describe PaaSTA, a PaaS built on top of open source tools including Docker, Mesos, Marathon, and Chronos. PaaSTA provides tooling for developers to quickly turn their microservice into a monitored, highly available application spanning multiple datacenters and cloud regions. Evan will give an overview of the open-source technologies that power PaaSTA, discuss how Yelp has glued these together to give developers control without burdening them with the complexities of the infrastructure, and show the workflow used by developers to update and maintain their services on PaaSTA.