The Goal Working in a professional service organization, one might be called to the helm to help out with a task for the common good, in this case setting a build process for a straight forward node.js project. Being familiar with setting up a build and deploy process with Jenkins,...
Brought in to FNDA to fill the gap, after the previous DevOps engineer left The goal of the project is the perform IT and DevOps tasks at FDNA while helping out hiring the future DevOps personal. The main technical objectives of the project was maintaining and setting up Dev, Staging and Production environments at FDNA The highlight of the project was moving FDNA Production from Rackspace to AWS , and the Development environment from Azure to AWS In addition there are other variants of the system environment that reside at customers on premise and on the physical servers in the Herzelia office - these needed to be maintained and their deployment automated The greatest challenge was getting the full deployment of the system up and running automatically (mostly) with Ansible in AWS, including replacing the old Nagios monitoring system with Cloudwatch, moving from On-Server MySQL to RDS, automating the setup of a mongo cluster, automating the setup of a VPC in AWS, and setting up Jenkins for CI with system testing and deployment Jobs to unify the deployment to production procedures We, the team of two DevOps engineers and a manager mainly focused on Automatic testing, got this up and running by the end of October 16 In addition to the challenge of getting to know Ansible with regard to setting up servers and the specific AWS, Git, database mondules, there is a challenge of getting a team of very different people to work together. In addition to these there were IT challenges, setting up DNS, VPN, office IT, application accounts for users and so on.
helped improve CI processes with Jenkins and Gradle and CD processes with AWS ECS & Docker. AOL recently acquired Vidible to improve their Video offering, being new to the Java eco system I was brought in to help support the development efforts, streamline the Continuous Integration with Gradle and Jenkins and later help set up Development, Staging and Production environments with AWS EC2 Container Service (ECS) and Docker in the Continuous Deployment effort. In addition the developers in Israel require Git and Gradle support At the moment I am working on documenting the Jenkins Slaves and other Servers with Chef and Packer. The set up of Staging and Production container environment with AWS ECS & Docker was of particular interest as it involved learning a whole new skill set with Containers, specifically Docker and in addition learning a relatively new service in AWS, i.e. ECS that in itself is not a straight forward Docker setup. The project involved getting fuzzy specs from development regarding the setup of three micro services, that eventually required further setup of Mongo and Redis databases and access to AWS S3. Specifically I had to get a mongos client in place on a docker container to save the development work required to do this with Node.js drivers. The project required work on AWS IAM, S3, Route53 and EC2 AutoScale services.
- Migrating Perl build scripts to Gradle.
- Standardizing Gradle build scripts so that can run by developers as well as automation tools (Jenkins).
- Build up of CI environment with Jenkins, Build Slaves and Artifactory.
- Setting up Artifactory repos to handle the build process and custom artifacts.
- Setting up automatic lab management with VMWare vCenter.
- Automating deployment testing in Vms.
- Enabling automation of unit, integration & system testing in the organization.
- Setting up build dependency testing matrices.’n * Documenting system setup from bare bones to working system.
- Maintaining DevOps blog (devops.judes.co.il) and contributing to Tikal knowledge ALM site.
- Participating in an internal lectures and workshops of cutting edge deployment / orchestration tools such as Chef, Puppet, Vagrant, Ansible etc.
Wrapping bash scripts to support automation of GIT flow.