Devops
What is DevOps?
DevOps is the combination of practices and tools designed to increase
an organization's ability to deliver applications and services faster than
traditional software development processes.
DevOps is the future of software development lifecycle automation.
DevOps represents a culture, mindset, and a modern approach to
software development. It focuses on improving collaboration between
Development (Dev) and Operation (Ops) teams.
Best Suited when:
 Requirements are clear and Complete.
 Product definition is Stable.
Best Suited when:
 Requirements are Changes frequently
 Development needs to be fast.
Best Suited when:
 Requirements Changes frequently.
 Development needs to be Agile Model.
 Operations needs to be Agile Model.
Why DevOps Implemented
DevOps Strategy and Implementation
• Speed: Through our DevOps model, we ensure a faster innovation
and speedy execution is key to customer satisfaction and to stay
ahead in the competition.
• Rapid Delivery: Our DevOps implementation involves very frequent
delivery cycles (which could be small updates) and a minimum
recovery time (in case of any failure) through Continuous Integration
practice, thus allowing further and faster innovation.
• Reliability: Through DevOps continuous integration and delivery
practices, we ensure functional, safe and quality output, resulting in a
positive end-user experience. Overall, our DevOps program ensures
the productivity of developers and the reliability of operations.
• Scale: Our Infrastructure as a code practice helps in the efficient
management of all stages of the software product lifecycle
(development, testing and production).
• Improved Collaboration: Veritis DevOps methodology is built on a
cultural philosophy that focuses on development and operations
working in a collaborative environment, which reduces multiple
iterations, inefficiency and time complexity.
• Security: Our DevOps model achieves this factor through
configuration management techniques and automated compliance
policies. Besides, we also work on the concept of DevSecOps, which is
a new integration to address the security challenges in DevOps
implementation.
Dark Launch
• Dark launching is the term for releasing features to a subset of your
users, seeing how they respond, and making updates to your features
accordingly. It’s somewhat like what every project manager does to
monitor application health but focused entirely on a single new
feature. In this modern age of continuous delivery and deployment,
feature releases are happening more frequently than ever before. But
at the same time, we need a way to maintain the quality in our
applications despite this fast-paced release cycle.
DevOps Phases
• Continuous Development
• Continuous Integration
• Continuous Testing
• Continuous Feedback
• Continuous Monitoring
• Continuous Deployment
• Continuous Operations
DevOps Tools
• Docker
• Ansible
• Git
• Jenkins
• Splunk
CI and CD pipeline
• In software engineering, CI/CD or CICD generally refers to the combined
practices of continuous integration and either continuous delivery or
continuous deployment.
• CI/CD bridges the gaps between development and operation activities and
teams by enforcing automation in building, testing and deployment of
applications.
• Modern day DevOps practices involve continuous development, continuous
testing, continuous integration, continuous deployment and continuous
monitoring of software applications throughout its development life cycle. The
CI/CD practice or CI/CD pipeline forms the backbone of modern day DevOps
operations.
CI and CD pipeline
Pros of DevOps
 Cloud-based DevOps makes it easier to collaborate, putting all the
tools in the cloud so they can be accessed by users anywhere.
 DevOps as a Service means faster testing and deployment. Generally,
using cloud services enables increased release frequency. It also gives
developers more computing power and data storage as they need it.
Using cloud services is a more data-driven process where everyone
uses the same data set. This lends itself to better documentation and
tighter quality control.
Cons of DevOps
• Outsourcing a DevOps infrastructure requires a specific level of
software development expertise, including an in-depth understanding
of integration, infrastructure, and orchestrating workflow. You need
the experts along with the tools for DevOps as a Service to succeed.
• Security is always a concern. The security team is usually not part of
DevOps, and the DevOps team tends to choose speed over security
when developing software. Using cloud services can create
unnecessary risks and exposure, especially since it’s the transport
layer that is usually left unsecured; cyber criminals tend to use the
transport layer for spoofing and man-in-the-middle attacks.
DevOps Security Challenges
• Security Teams Struggle to Keep Up With the Pace of DevOps:
DevOps focuses on speed, with very short development cycles. It can take much longer to
review code than it did to produce or update it. Security is often sacrificed for the sake of
speed, allowing misconfigurations, unresolved vulnerabilities, and other flaws to remain
and exposing the software to breaches or malfunctions.
DevOps Teams Neglect Security:
A particularly challenging obstacle to combat is the widespread cultural resistance to
security and testing. This is because developers and operating teams view security as a
nuisance that gets in their way and slows down the development process. However,
retroactive fixes ultimately take more time and effort. Addressing security issues earlier in
the pipeline reduces technical debt and is well worth the initial delay in the SDLC.
Security Practices for DevOps
• Adopting a DevSecOps Model:
Cross-functional collaboration is the key to effectively integrating security into the entire
DevOps lifecycle. This requires a culture in which everyone takes responsibility for adhering
to security practices. You can train security and other professionals so they acquire new skills
and to imbue them with the DevSecOps ethos.
• Implementing Security Policies:
Security policies and governance are essential for ensuring the consistent management of
security risks. You should establish a clear, easy-to-understand set of policies and
procedures for cybersecurity functions like access controls, configuration management,
code review, vulnerability testing, and firewalling.
Security Practices for DevOps
• Automation :
You can automate many of your tools and security processes. This will help scale and
speed up your security operations to keep up with the pace of the DevOps process.
Configuration management, code analysis, vulnerability discovery and fixes, and
privileged access should all be automated. Without automation, it is difficult to perform
comprehensive discovery to identify vulnerabilities and other potential threats..
• Vulnerability Management:
You should have a system in place to scan, assess, and remediate vulnerabilities
throughout the SDLC, and to ensure that all code is secure before deployment. Attack
mechanisms like penetration testing identify weaknesses so you can fix them. After
deployment, security teams should continue to run tests to identify vulnerabilities and
other issues so they can apply the necessary patches.

Devops

  • 1.
  • 2.
    What is DevOps? DevOpsis the combination of practices and tools designed to increase an organization's ability to deliver applications and services faster than traditional software development processes. DevOps is the future of software development lifecycle automation. DevOps represents a culture, mindset, and a modern approach to software development. It focuses on improving collaboration between Development (Dev) and Operation (Ops) teams.
  • 3.
    Best Suited when: Requirements are clear and Complete.  Product definition is Stable. Best Suited when:  Requirements are Changes frequently  Development needs to be fast. Best Suited when:  Requirements Changes frequently.  Development needs to be Agile Model.  Operations needs to be Agile Model. Why DevOps Implemented
  • 6.
    DevOps Strategy andImplementation
  • 7.
    • Speed: Throughour DevOps model, we ensure a faster innovation and speedy execution is key to customer satisfaction and to stay ahead in the competition. • Rapid Delivery: Our DevOps implementation involves very frequent delivery cycles (which could be small updates) and a minimum recovery time (in case of any failure) through Continuous Integration practice, thus allowing further and faster innovation. • Reliability: Through DevOps continuous integration and delivery practices, we ensure functional, safe and quality output, resulting in a positive end-user experience. Overall, our DevOps program ensures the productivity of developers and the reliability of operations.
  • 8.
    • Scale: OurInfrastructure as a code practice helps in the efficient management of all stages of the software product lifecycle (development, testing and production). • Improved Collaboration: Veritis DevOps methodology is built on a cultural philosophy that focuses on development and operations working in a collaborative environment, which reduces multiple iterations, inefficiency and time complexity. • Security: Our DevOps model achieves this factor through configuration management techniques and automated compliance policies. Besides, we also work on the concept of DevSecOps, which is a new integration to address the security challenges in DevOps implementation.
  • 9.
    Dark Launch • Darklaunching is the term for releasing features to a subset of your users, seeing how they respond, and making updates to your features accordingly. It’s somewhat like what every project manager does to monitor application health but focused entirely on a single new feature. In this modern age of continuous delivery and deployment, feature releases are happening more frequently than ever before. But at the same time, we need a way to maintain the quality in our applications despite this fast-paced release cycle.
  • 10.
    DevOps Phases • ContinuousDevelopment • Continuous Integration • Continuous Testing • Continuous Feedback • Continuous Monitoring • Continuous Deployment • Continuous Operations
  • 11.
    DevOps Tools • Docker •Ansible • Git • Jenkins • Splunk
  • 12.
    CI and CDpipeline • In software engineering, CI/CD or CICD generally refers to the combined practices of continuous integration and either continuous delivery or continuous deployment. • CI/CD bridges the gaps between development and operation activities and teams by enforcing automation in building, testing and deployment of applications. • Modern day DevOps practices involve continuous development, continuous testing, continuous integration, continuous deployment and continuous monitoring of software applications throughout its development life cycle. The CI/CD practice or CI/CD pipeline forms the backbone of modern day DevOps operations.
  • 13.
    CI and CDpipeline
  • 14.
    Pros of DevOps Cloud-based DevOps makes it easier to collaborate, putting all the tools in the cloud so they can be accessed by users anywhere.  DevOps as a Service means faster testing and deployment. Generally, using cloud services enables increased release frequency. It also gives developers more computing power and data storage as they need it. Using cloud services is a more data-driven process where everyone uses the same data set. This lends itself to better documentation and tighter quality control.
  • 15.
    Cons of DevOps •Outsourcing a DevOps infrastructure requires a specific level of software development expertise, including an in-depth understanding of integration, infrastructure, and orchestrating workflow. You need the experts along with the tools for DevOps as a Service to succeed. • Security is always a concern. The security team is usually not part of DevOps, and the DevOps team tends to choose speed over security when developing software. Using cloud services can create unnecessary risks and exposure, especially since it’s the transport layer that is usually left unsecured; cyber criminals tend to use the transport layer for spoofing and man-in-the-middle attacks.
  • 16.
    DevOps Security Challenges •Security Teams Struggle to Keep Up With the Pace of DevOps: DevOps focuses on speed, with very short development cycles. It can take much longer to review code than it did to produce or update it. Security is often sacrificed for the sake of speed, allowing misconfigurations, unresolved vulnerabilities, and other flaws to remain and exposing the software to breaches or malfunctions. DevOps Teams Neglect Security: A particularly challenging obstacle to combat is the widespread cultural resistance to security and testing. This is because developers and operating teams view security as a nuisance that gets in their way and slows down the development process. However, retroactive fixes ultimately take more time and effort. Addressing security issues earlier in the pipeline reduces technical debt and is well worth the initial delay in the SDLC.
  • 17.
    Security Practices forDevOps • Adopting a DevSecOps Model: Cross-functional collaboration is the key to effectively integrating security into the entire DevOps lifecycle. This requires a culture in which everyone takes responsibility for adhering to security practices. You can train security and other professionals so they acquire new skills and to imbue them with the DevSecOps ethos. • Implementing Security Policies: Security policies and governance are essential for ensuring the consistent management of security risks. You should establish a clear, easy-to-understand set of policies and procedures for cybersecurity functions like access controls, configuration management, code review, vulnerability testing, and firewalling.
  • 18.
    Security Practices forDevOps • Automation : You can automate many of your tools and security processes. This will help scale and speed up your security operations to keep up with the pace of the DevOps process. Configuration management, code analysis, vulnerability discovery and fixes, and privileged access should all be automated. Without automation, it is difficult to perform comprehensive discovery to identify vulnerabilities and other potential threats.. • Vulnerability Management: You should have a system in place to scan, assess, and remediate vulnerabilities throughout the SDLC, and to ensure that all code is secure before deployment. Attack mechanisms like penetration testing identify weaknesses so you can fix them. After deployment, security teams should continue to run tests to identify vulnerabilities and other issues so they can apply the necessary patches.