0% found this document useful (0 votes)
412 views

DevOps Notes

The document outlines a development and deployment workflow involving developers writing code on individual systems, committing to a central Git repository, code being built and promoted through Dev, QA, UAT, PreProd, and Prod environments contingent on passing integration and testing at each stage, and details database build processes involving generating DDL scripts during development and merging them along with code commits. It also discusses using containers across clustered environments, monitoring servers, containers, databases and applications, performing backups of containers, databases and configs/settings, and having a deployment process to move changes through the environments.

Uploaded by

abishekvs
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
412 views

DevOps Notes

The document outlines a development and deployment workflow involving developers writing code on individual systems, committing to a central Git repository, code being built and promoted through Dev, QA, UAT, PreProd, and Prod environments contingent on passing integration and testing at each stage, and details database build processes involving generating DDL scripts during development and merging them along with code commits. It also discusses using containers across clustered environments, monitoring servers, containers, databases and applications, performing backups of containers, databases and configs/settings, and having a deployment process to move changes through the environments.

Uploaded by

abishekvs
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 2

Prod

PreProd (Performance Testing)


-----------------------------------
UAT (Smoke test, Business Test)
QA (Test Cases)
Dev (Integration Test)
-----------------------------------
Dev1 (Developer, PC/Laptop, NAS/NFS/S3 (Dedicated share)|Eleminate local storage,
Coding, Unit Test)
Dev2
Dev3
Dev4
....
....

DevOps
~~~~~~
Development & Build Workflow

Developers write code commit to git (gitlab) [Individual user commits]


Daily/Weeky Code Merge -> Build and push to Dev env.
Integration Test passed -> Build promoted to QA for QA Testing
QA Test passed -> Build promoted to UAT for Business testing ( includes smoke test)
UAT Passed -> Build promoted to prod and preprod (Preprod will have earlier
backups)

>> Developers work on individual systems, however code is saved on central share
(NAS Filer/NFS/S3)
>> Developers connect to dedicated databases for DB access during development
(Instance on central server, each developer has own DB which is cloned from the
Dev)
>> Developers have to generate DDL scripts for their respective DB artifacts and
push it git (gitlab) along with their commits
>> Developers are responsible for additional/ad-hoc DB backups (recommended before
generating DDL)

DB Build workflow
~~~~~~~~~~~~~~~~~
>> Before commiting code developer generates DDL script
>> DDL script commited to gitlab along with regular code
>> During code merge identify conflicts in DDL scripts
-> Simple approach is generate DDL script with only CREATE statements (NO
DROPS)
-> Run all scripts on a stage DB (built from last Dev DB)
-> Errors are reported back
-> Developer performing Merge request reviews errors and resolves conflicts
-> Generate a master DDL SQL script which is committed to the merge which
will be deployed on Dev

>> On higher envs starting with Dev, current DB is renamed -> new DB is deployed
>> DBs are backedup on daily basis and retained for 30 days
>> 60 unused DBs are retained, 61st DB will push the oldest one for deletion

Containers
~~~~~~~~~~
Server Clusters
DEv + Staging
QA + UAT
PreProd + Prod

Monitoring
----------
Server
Container
Database
Application

Backup
-------
Container
Database
Config/Settings

Deployment process
-------------------

You might also like