DevOps Processes for a Smart Irrigation Front-Runner

A long-standing client entrusts Symfa with their portfolio of projects for DevOps support
undefined

Highlights

TERRAFORM FOR IAC AND KUBERNETES

BITBUCKET PIPELINES FOR AUTOMATED CI/CD

CLOUD MIGRATION AND OPTIMIZATION

PROMETHEUS FOR MONITORING & ALERTS

Customer location
  • Israel Israel
Project duration:
  • 1 year (ongoing)

DevOps support for Symfa's and client's engineers

The client provides controllers and data sensors for irrigation systems installed at agricultural complexes, municipal watering systems and greenhouses. One agricultural complex can have several thousand of such sensors and hundreds of controllers.

A 3rd party service receives data from the data sensors and controllers, communicates with them to control water/fertilizer flow, intensity, valves functioning, etc. On top of that, this is a legacy application which needs a delicate approach.

While 11 engineers develop the system on Symfa's side, the DevOps engineer is in charge of the project infrastructure and CI/CD, and also supports customer's IT talents. 

2

The DevOps scope for the project

The project has high scalability and load balancing needs, as it serves thousands of data sensors and hundreds of controllers. Moreover, it required strong cloud migration and optimization knowledge in order to migrate legacy code to AWS. The DevOps tasks that were posed before Symfa included:

 

IaC, automated pipelines and autotests

For the client's latest project with us, our DevOps engineer built the infrastructure and automated CI/CD pipelines from scratch. He also helped the client choose the most suitable and relevant technologies given high scalability demands of the system.

Initially deployed in AWS, the project has IaC through Terraform and automated CI/CD pipelines through Bitbucket.

IACTerraform allows creating new versions of the environments in a single click.
It nicely matches with Kubernetes, as the project is planned to move to Kubernetes soon.
CI/CDThe automated CI/CD pipelines running in Bitbucket.
The server monitors the repository and automatically downloads all the latest changes. Easy, automated 4-step deployment process.
testAutotests through the Bitbucket Pipelines.
Automated testing for the customer’s QA team and code testing for developers upon creating a Pull Request.

Impressive migration effort from a Symfa’s DevOps engineer

For older projects, the infrastructure and environments for development and testing were running on local servers when we joined the project, while the production environment had already migrated to the cloud. Our DevOps engineer migrated the remaining infrastructure, servers and applications to AWS.

01

Safe update of the OSs and DBs

The operating systems on the servers were outdated (Windows 2008 R2, Windows R2012). Our DevOps engineer safely updated all the systems on the servers, did the system configuration and switched the production to the updated server. All customer’s databases (managed services in AWS) were safely updated.

02

Automated CI/CD

Before Symfa, the legacy project had issues with CI/CD configurations which meant manual deployments to specific environments for the team. For the production and R&D environments, we set up automated pipelines that perform build and deploy processes on a specific server.

03

Jenkins instances

Three Jenkins instances were running on the project. We decommissioned redundant Jenkins instances, centralized the build on one server, connected agents to Jenkins and now each environment builds in its own place – R&D, staging and production.

04

Cloud optimization

Cost optimization and resource re-allocation after the migration process. Containerization for the qualifying assets and optimum load balancing.

Technologies

  • Jenkins
  • Docker
  • Terraform
  • Bitbucket
  • Prometheus
  • AWS

Performance, cost optimization, monitoring & DevSecOps

The post-migration optimization included a series of performance improvements. Such was containerization for microservices, power consumption revision for servers and the implementation of the Prometheus monitoring system (with reboot option for qualifying assets).

undefined

Committed DevOps talent reinforces client loyalty

The introduction of our DevOps talent to the development team made the team play more seamless and processes -- transparent. At the same time, Max is a great asset for the client's team as well -- not only does he provide great CI/CD and infrastructure support, but he also contributes to knowledge sharing and shows commitment to the common goal.

PROACTInew DevOps approaches and templates for the team
VITYadvanced CI/CD and test automation
TEAMpromotion of the knowledge sharing culture
PLAYDevOps research, architecture design

Latest projects

BACK TO PORTFOLIO

Contact us

Our team will get back to you promptly to discuss the next steps