Rancher helps TNO spend more time on valuable research projects that benefit society, and less time managing containers and development code.
Research Scientists: Johan van der Geest Mark Bastiaans Edwin Harmsma
- Greater automation of the CI/CD pipeline
- More time for research, less focus on infrastructure
- Cultural shift moving developers and researchers to microservices
The Netherlands Organisation for Applied Scientific Research (TNO) is an independent organization that connects people and knowledge, and aims to create innovations that boost the well-being of society in a sustainable way. TNO employs over 2,600 professionals in research areas spanning industry and energy to urbanization, healthy living, and security.
TNO researchers work closely with stakeholders in other companies, governments, and research organizations. In TNO’s project-based model, team members often come with their own preferred tools and programming languages, and do early work in their own prototyping and development environments. Before adopting containers, TNO researchers found it challenging to move team members’ development work to a production environment.
“We found that instead of virtual machines, if we used microservice architectures with Docker containers, we could be sure that our software would act the same, whether you ran it on your machine, or on a production machine,” explained Johan van der Geest, Scientist Innovator at TNO. “Being able to package our stuff up and move it across development environments to production is hugely beneficial,” adds Mark Bastiaans, Innovator at TNO.
A Fuller Container Management Solution
As TNO started using containers, researchers found they needed more container-related capabilities, including cross-host networking, cluster management, and service orchestration. “I stumbled across Rancher because I was looking for a container management solution for multiple hosts,” says Bastiaans. “We found Rancher, and it really impressed me.” For projects that required multiple hosts, and included a service chain set up with several microservices, “we needed to see how it scaled, and Rancher filled the gap pretty nicely.”
As Rancher’s container management solution continued to evolve, “we made sure to always upgrade our Rancher environment with the latest versions, because its functions would always benefit us. The catalog was added, the load balancing, and we ended up using those in our projects as well,” said van der Geest. And today, “Rancher’s support for different orchestrators - Kubernetes, Swarm, and Mesos - helps us choose a framework that fits the needs of a particular project.”
“Rancher’s support for different orchestrators – Kubernetes, Swarm, and Mesos – helps us choose a framework that fits the needs of a particular project.”
Automating Continuous Integration and Delivery with Rancher
“Before Docker, we already applied continuous integration and continuous delivery within our projects,” explained van der Geest, “but Rancher really helped us with the continuous integration bits of development. We are able to separate the development and production environments, and use GitLab runners for Docker images and our container registry. We utilize the Rancher API to automatically bring up and upgrade services – a developer can just push code to a central Git repository, and after a few minutes it is automatically built, posted, and live.”
“With Rancher,” explained Edwin Harmsma, Research Scientist at TNO, “we were able to implement fully automated integration tests, and with the command line interface, automate the stack from a source code change to a deployment.” And today, adds van der Geest, “we’re able to apply continuous integration very rapidly to new and existing projects. The time it takes to set up development and production environments, and to upgrade services on these environments has decreased significantly.”
“The next step is to use our solution within more projects, and show what we can really do with continuous integration,” says van der Geest.
“Rancher really helped us with the continuous integration bits of development.”
Microservices and Faster Research for Everyone
“What’s great about Rancher is the whole concept of microservices is well-visualized for developers who are not familiar with it, but who want to start using it,” says Bastiaans. “Researchers can be stubborn about the language they use for their work, but you can get them to package up what they make in a container if you show them the whole stack, they become much more aware about what microservices can do.”
“With Docker and Rancher, we can move more researchers into using microservices, and allow them to develop in their favorite language,” says Van Der Geest. “I think that’s a big benefit.” van der Geest is also interested in containerizing existing software, and using Rancher’s catalog feature to quickly deploy that software in different environments.
“The whole container movement for me is about getting more stuff done in a shorter amount of time,” says Bastiaans. “As a research organization, we have the luxury of trying out new stuff all the time. We feel confident enough now to use containers in more projects, and in production.”
Learn more TNO researchers featured here have previously presented their work at the DockerGrunn meetup group; their slides are available online
“We can move more researchers into using microservices…it’s a big benefit.”