Girmiti Software has strong Build, Release and Deployment team which work with customers, engineering and IT teams to take care of the application deployments for Development, Testing, UAT, pre-production and production environments.
Monitoring Tools
Servers
Log Management
Infra Automation
Scripting
Security
Build Tools
Databases
Our Deployment Support team expertise covers:
Services – Data Center, AWS, Google Cloud, Azure Services
Build Tools - Maven, Gradle and Ant
Scripting - Shell Scripting, Perl, Python, Groovy and Node.js
Continuous Integration, Deployment and Delivery Automation - Jenkins, Bamboo and Jenkins Blue Ocean, Ansible
Infra Automation – Cloud Formation, Terraform and Ansible
Repository - Bitbucket, GitHub, Subversion
Web and Application servers - Tomcat, Jboss, Wildfly, WebLogic, WebSphere, Apache and nGINX
Linux - CentOS, Redhat, Ubuntu, Amazon Linux
Databases – Oracle, MySQL, MSSQL, PostgreSQL
Project Tools – Jira, Confluence and Redmine
Centralized Log Management – Elastic Search and Kibana for visualization and Splunk
Infrastructure Monitoring Tools and Alerts – AppDynamics, New Relic, CloudWatch and Nagios, AWS Inspector
Caching Servers – Memcache and Redis
Binary Repository – jfrog Artifactory, Nessus and Archiva
Environments – Data Center and Cloud and Blue/Green Environments and Auto healing, Docker Environment
Security – Trend Micro Deep Security, Security Groups, NACL, Encryption, Cloud Trail, AWS Config, Inspection of Patch management, Checks for Vulnerabilities
CSI secure or benchmarked OS and Application Server deployment
OWASP Application Server
CVE checks with tools for patch management
PCI Security standards for Data center and Cloud Environment
This Process basically follows General Best Practices,
The size and installation complexity of applications can vary greatly, therefore there is rarely a one-size-fits-all solution for deploying and hosting, However, these are some universal best practices to consider when deploying any web application:
Understand the deployment, installation, and configuration characteristics of the application.
Understand application expectations from initial deployment to future scalability,availability, and backup and recovery requirements.
Use automation whenever possible for deployment and other tasks where consistency is important
Leverage source code or application repositories to protect your application.
The first step in the deployment process is to assess your business needs so that the project scope and objectives define. Next, decide how best to use AWS Infrastructure Tools and its best practices to meet those needs. Then, assess current Hardware configurations, determine whether you need to upgrade your hardware or software, and choose the tools for your deployment.
Having made these decisions, you are ready to plan your deployment. An effective plan typically includes the following:
All the details for customizing the setup
A schedule for the deployment
An assessment of your current configuration (including information about customers, infrastructure, and software needs of the product).
Test and pilot plans
A rollout plans
When satisfied with the results in test environment, roll out deployment to a specific Closed User Group to test the results in a controlled production environment (a pilot). Finally, roll out setup to production environment (a Live).
Creating the deployment plan is a cyclic process. As you move through each phase, modify the plan based on your experiences.
The scope is the baseline for creating a specification for your deployment. The scope of deployment is defined largely by answers to the following questions:
What business needs do you want to address?
What are the long-term goals for the deployment?
How will customer interact with your IT infrastructure?
Assessing of Deployment Environment, Tools and Best practices Document deployment environment, looking at project needs and how it supports customer.
Use this assessment to determine readiness for deployment. The three major areas of environment to assess include Instance, software, and network components.
Document Data Center and AWS Infrastructure architecture, size, and traffic patterns. Also, determine which users need access to various applications and data, and describe how they obtain access. Where appropriate, create diagrams to include in plan, two factor authentications.
Does your instance meet the minimum hardware and OS requirements for deployment? In addition to meeting these requirements, all instance must be compatible with applications.
Are your applications compatible with Instance? Make sure that all your applications, including custom-designed software, work with instance provisioned and network components
Roll back-up on the deployment, this will help to test and resolve the issue, if any at the blue environment before swapping the environment to live gracefully. Only rollback applied to files that were deployed, so if the source of the issues is something else, a rollback won’t be of much help.
Critical Bug Fixes: This will ensure that only bug-fix will be deployed to the Production environment without all the other stuff from the development branch that’s not ready yet. The bug-fix production branch code is merged to both the development and production Branches
Our deployment team works from onsite or offshore to suit our customer needs.
For more information, please contact us at info@girmiti.com