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

CCS342 DevOps Unit 1 Part-A

The document provides an overview of DevOps, detailing its definition, goals, lifecycle phases, and popular tools. It discusses the advantages and disadvantages of DevOps, compares cloud services from AWS, GCP, and Azure, and explains key concepts such as version control, continuous integration, and automation. Additionally, it highlights the core principles of DevOps and their significance in enhancing software development processes.

Uploaded by

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

CCS342 DevOps Unit 1 Part-A

The document provides an overview of DevOps, detailing its definition, goals, lifecycle phases, and popular tools. It discusses the advantages and disadvantages of DevOps, compares cloud services from AWS, GCP, and Azure, and explains key concepts such as version control, continuous integration, and automation. Additionally, it highlights the core principles of DevOps and their significance in enhancing software development processes.

Uploaded by

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

(Approved by AICTE-New Delhi, Affiliated to Anna University, Chennai)

(Accredited with NAAC ‘A’ Grade)


DEPARTMENT OF INFORMATION TECHNOLOGY
Subject Code / Name: CCS342 / DevOps
PART-A
1. What is DevOps? Why do we need it?
DevOps is a set of practices that aims to improve collaboration and communication
between software development (Dev) and IT operations (Ops) teams. It is needed to
enhance efficiency, accelerate the software development life cycle, and enable continuous
delivery of high-quality software.

2. Enlist the goals of DevOps.


The goals of DevOps include achieving continuous integration, continuous delivery, faster
time to market, improved collaboration between development and operations teams, and
increased overall efficiency in software development processes.

3. State the difference between Agile and DevOps approaches.

4. List the popularly used DevOps tools.


Popular DevOps tools include Jenkins for continuous integration, Docker for containerization,
Ansible for configuration management, Git for version control, and Kubernetes for container
orchestration.
5. State the various phases of the DevOps lifecycle.
The DevOps lifecycle comprises Planning, Coding, Building, Testing, Deployment, Monitoring,
and Feedback, providing a structured approach to software development and delivery.

6. What are the pros/cons of DevOps?


Pros:
• Faster development and deployment of applications.
• Faster response to the market changes to improve business growth.
• Business profit is increased as there is a decrease in software delivery time and
transportation costs.
• Improves customer experience and satisfaction.
• Simplifies collaboration as all the tools are placed in the cloud for customers to access.
• Leads to better team engagement and productivity due to collective responsibility.
Cons:
• Less availability of DevOps professionals.
• Infrastructure cost is high for setting by DevOps environment.
• Lack of DevOps knowledge can lead to problems in the continuous integration of
automation projects.
7. State the AWS applications.
AWS applications include Amazon EC2 for computing, Amazon S3 for storage, Amazon
RDS for databases, Amazon Lambda for serverless computing, and many more.

8. Represent the DevOps Architecture.

9. What are the GCP services provided by Google?


GCP services include Compute Engine for virtual machines, App Engine for platform-as-
a-service, Cloud Storage for object storage, and BigQuery for data analytics.

10. What is Azure? Enlist its features.


Azure is Microsoft's cloud computing platform. Features include Virtual Machines, Azure
Blob Storage, Azure Functions for serverless computing, and Azure Active Directory for
identity and access management.

11. Azure vs AWS vs GCP. Discuss.

12. What is Git? State its benefit.


Git is a distributed version control system that tracks changes in source code during
software development. Its benefits include version history, collaboration support, and
decentralized architecture.

13. State the purpose of the staging area in Git.


The staging area in Git is where changes are prepared for the next commit. It allows
selective inclusion of changes before committing, providing flexibility and control.
14. State the idea behind tracked and untracked files in Git.
Tracked files in Git are part of the version control system, whereas untracked files are not
yet included. This distinction allows developers to manage and selectively include
changes in their projects.

15. Why do we need the "git status" command?


The "git status" command provides an overview of the current state of the repository,
indicating untracked, modified, or staged files. It helps developers understand the status
of their changes.

16. Illustrate the purpose of GitHub.


GitHub serves as a platform for hosting Git repositories, enabling collaborative
development through features like pull requests, code reviews, and issue tracking.

17. How will you add files to the staging area?


To add files to the staging area in Git, you use the "git add [file]" command. This prepares
the changes for the next commit.
Ex: $ git add *.java
warning: LF will be replaced by CRLF in Hello.java.
The file will have its original line endings in your working directory

18. Explain the concept of Continuous Integration (CI).


Continuous Integration is the practice of automatically integrating code changes from
multiple contributors into a shared repository. It involves frequent automated builds and
tests to detect and fix integration issues early in the development process.

19. Name two popular configuration management tools used in DevOps.


Ansible and Puppet are used to automate and manage infrastructure.

20. Mention one key benefit of implementing DevOps practices.


One key benefit of implementing DevOps practices is the acceleration of the software
development life cycle, leading to faster time-to-market for software products.

21. Mention a popular cloud computing service offered by Microsoft Azure.


One popular cloud computing service offered by Microsoft Azure is Azure Virtual
Machines, providing scalable computing resources in the cloud.

22. What is the purpose of version control in software development?


The purpose of version control in software development is to track changes made to
source code over time, facilitating collaboration, code history review, and the ability to
revert to previous states.

23. What is a "commit" in Git?


In Git, a "commit" is a snapshot of changes made to the repository. It represents a point in
the version history and is accompanied by a commit message describing the changes.
Ex: $ git commit -m "First commit"
[master (root-commit) 5b1fcbf] First commit
1 file changed, 8 insertions(+)
create mode 100644 Hello.java
24. Explain the role of a repository in Git.
A repository in Git is a storage location that holds the entire version history and codebase
of a project. It allows developers to track changes, collaborate, and manage different
branches of development.
Ex: $ git init
Initialized empty Git repository in C:/Users/KEC/JavaProgram/.git/

25. Differentiate between Git and GitHub.

26. Name two types of version control systems.


Two types of version control systems are centralized version control systems (CVCS),
where a central server stores the version history, and distributed version control systems
(DVCS), where each user has a complete copy of the repository.

27. List a few DevOps challenges and provide the solution for the same.
Challenges Solution
Waiting time for code deployment Continuous integration
Difficult to maintain uptime of the
Containerization/Virtualization
production environment
No. of servers to be monitored increases Continuous Monitoring
Tools to automate infrastructure
Configuration Management
management are not effective

28. Define the terms: a) Virtualization b) Containerization.


Virtualization is the process of creating a virtual version of hardware, software, or storage
to run multiple instances on a single physical machine.
Containerization is a lightweight form of virtualization that encapsulates applications and
their dependencies into containers for consistent deployment and scalability.

29. Illustrate the purpose of “git init” and “git config” commands.
"git init" initializes a new Git repository in a directory, creating the necessary data
structures.
Ex: $ git init
Initialized empty Git repository in C:/Users/SUBI/JavaProgram/.git/
"git config" is used to configure Git settings, such as user details or aliases.
Ex: $git config --global user.name "sample"
$ git config --global user.email [email protected]
$git config --list
pack.packsizelimit=2g
user.name=sample
[email protected]

30. Why do we need Jenkins and Selenium open-source tools?


Jenkins is used for continuous integration and continuous delivery, automating the
building, testing, and deployment of code. Selenium is used for automated testing of web
applications, ensuring quality and reliability.
31. Find an example service offered by Google Cloud Platform (GCP) and its
application in real world scenario.
Ex: Media Streaming Platform - A media company like Spotify or Netflix can use Google
Cloud Storage (GCS) to store and distribute audio and video files efficiently.
1. Storage & Scalability – GCS provides highly scalable object storage for music, movies,
and TV shows.
2. Content Delivery – It integrates with Cloud CDN to reduce latency and provide
smooth streaming.
3. Security & Backup – Automatic encryption and versioning protect against data loss.
4. Data Analytics – Integrated with BigQuery, it helps analyze user preferences for
personalized recommendations.

32. List out the essential features of DevOps.


➢ Continuous Integration (CI) – Merging code changes frequently to detect issues early.
➢ Continuous Delivery (CD) – Automating software deployment to production/staging.
➢ Infrastructure as Code (IaC) – Managing infrastructure using code (e.g., Terraform,
Ansible).
➢ Automation – Automating testing, deployment, and monitoring for efficiency.
➢ Collaboration & Communication – Bridging the gap between development and
operations teams.
➢ Monitoring & Logging – Tracking system performance using tools like ELK Stack.
➢ Security (DevSecOps) – Integrating security practices into the DevOps workflow.
➢ Microservices Architecture – Breaking applications into smaller, independent
services.
➢ Version Control – Using Git for source code management and tracking changes.
➢ Scalability & Flexibility – Adapting to changes quickly.

33. State the difference between AWS and Azure.


AWS Azure
Amazon's on-demand cloud computing
Microsoft's public cloud infrastructure.
service.
Adaptable pricing system. Pricing structure is less adaptable.
Amazon Elastic Compute Cloud (EC2) is Pay per minute for Azure Infrastructure
a pay-per-hour cloud computing service. Services.
Organizations can link local servers with
AWS is continually improving its Hybrid
Cloud instances, which benefits in the
Cloud solutions.
hybrid cloud space.

34. Define the core principles of DevOps and why they are important in software
development?
Principles Importance
Seamless interaction between development and
Collaboration & Communication
operations teams.
Speeds up development, reduces errors, and
Automation
enhances consistency.
Continuous Integration (CI) & Leads to faster releases, early bug detection, and
Continuous Delivery (CD) improved software quality.
Ensures consistency, scalability, and quick
Infrastructure as Code (IaC)
recovery from failures.

You might also like