当前位置:网站首页>30 Devops interview questions and answers
30 Devops interview questions and answers
2022-07-01 14:17:00 【TAOXC( ̿ ▀ ̿ ̿Ĺ̯̿̿ ▀ ̿ ̿】
If you are looking for devOps Work , Then you are making good career decisions , Because it is now a highly paid and demanding job . In this paper , We will introduce what you may expect from the interviewer DevOps Interview questions . Many problems , We can't list them all , But after reading this article , You should have a better understanding of the problems waiting for you and what you should prepare .
Basic questions
1) Development and operation ! How can you define it in your words ?
It is used by software developers and IT operating / Efficient daily collaboration between network operation engineers , To generate a working system or release software .
devOps Implementation is usually consistent with agile methods , Among them, deploying working software to production is usually the highest priority . In agile implementation , The focus is on people, not processes , therefore DevOps Engineers must be willing to work closely with agile development teams , To ensure that they have support for automated testing 、 The environment required for continuous integration and continuous delivery . In the absence of DevOps Traditional implementation of , Operations teams are usually isolated from developers , Usually work under the help desk model under the general service level agreement that the system operation team regards developers as customers . This is a validated model , Obviously it can work well , But in DevOps Environment ,
2) Why do we need DevOps ?
Companies are now faced with delivering more 、 The need for faster and better applications , To meet the increasingly urgent needs of conscious users , To shorten “ Time to market ”.Devops Usually helps with rapid deployment .
3) What is agile development and Scrum?
Agile development is used as an alternative to waterfall development practices . In agility , The development process is more iterative and incremental , There are more tests and feedback at every stage of development , Not the last stage of the waterfall .
Scrum Used to manage complex software and product development using iterative and incremental practices .Scrum Has three roles , Product owner 、Scrum Master And team .
4) We can DevOps As an agile method ?
Of course !DevOps It is a movement that starts with coordinated and synchronized development and production through a series of good practices . Its emergence is driven by profound changes in business needs , They want to accelerate change to be closer to the needs of business and customers .
5) DevOps What are the responsibilities of engineers in agile development ?
DevOps Engineers work closely with agile development teams , To ensure that they have support for automated testing 、 The environment required for continuous integration and continuous delivery .DevOps Engineers must maintain continuous contact with developers , And make all necessary parts of the environment work seamlessly .
Technical problems
6) What is a container ?
Containers are a form of lightweight virtualization , Than chroot heavy , But lighter than the hypervisor . They provide isolation between processes when using the same kernel as the host , And provide cgroups function . But there are differences between container formats , Some formats offer more similar VM Experience , Others simply container applications .
LXC Containers are most like virtual machines , The heaviest , and Docker It used to be lighter , Originally designed for a single application container . But in the latest version ,Docker The containerization function of the whole machine is introduced , So now Docker It can be used in both directions . And from CoreOS Of rkt And from the Canonical Of LXD, It is based on LXC above .
7) What is? Kubernetes? explain
It is from Google Large scale extensible tools for managing containers . It is used internally for large deployments , Therefore, it may be the best choice for container production . It supports self-healing by repeating non responsive containers , It packs containers in a less resource intensive manner and has many other excellent functions .
8) CI( Continuous integration ) What is the function of the server ?
CI The server function is to continuously integrate all changes made by different developers, submit them to the repository and check for compilation errors . It needs to build code many times a day , It's best after every submission , In this way, it can detect which submission caused the damage , If damage occurs .
Be careful : Other available and popular CI The tool is Jenkins、TeamCity、CircleCI、Hudson、Buildbot etc.
9) What is continuous delivery ?
It's in CI( Continuous integration ) The practice of delivering software for testing immediately after the server is built ? It requires extensive use of version control systems , So that developers and testers can always use .
10) What is? Vagrant, What is its purpose ?
Vagrant It is a kind of virtualization that can create and manage software for testing and development ( Or containerization ) Tools for the environment . At first ,Vagrant Use virtualbox As a hypervisor of virtual environment , But now it also supports KVM.
11) Have you ever used any scripting language ?
In terms of scripting language , The simpler, the better . in fact , The language itself is not like understanding design patterns and development paradigms ( Such as the program 、 Object oriented or functional programming ) So important .
at present , There are several scripting languages available , So there is a problem : Best fit DevOps What is the language of the method ? Simply speaking , It depends on the context of the project and the tools used , for example Ansible Whether it is used in Python Good knowledge of , And whether it applies to Chef Whether to use Ruby.
12) Configuration management tools are in devops What is the role of ?
Automation plays a crucial role in server configuration management . So , We use CM Tools , They store information about versions and builds of software and test pieces , And provide traceability between software and test pieces .
13) CM What is the purpose of the tool ? Which one do you use ?
The purpose of configuration management tools is to automatically deploy and configure software on a large number of servers . majority CM Tools usually use a proxy architecture , This means that every managed machine needs to install agents . My favorite tool is the one that uses agent-free architecture ——Ansible. It just needs SSH and Python. If you use the original module , You don't even need to Python, Because it can run the original bash command . Other available and popular CM The tool is Puppet、Chef、SaltStack.
14) What is? OpenStack?
OpenStack It is often called cloud operating system , This is not far from the fact . It is deployment IaaS Complete environment , Allows you to create something like AWS Own cloud . It is highly modular , It consists of many sub projects , So you can choose the function you want .OpenStack The distribution is available from Red Hat、Mirantis、HPE、Oracle、Canonical And many other companies get . It is a completely open source project , But some vendors have made proprietary distributions .
15) Classify cloud platforms ?
Cloud computing software can be divided into software as a service or SaaS、 Infrastructure is service or IaaS And platform as a service or PaaS.
SaaS It is the software running on the remote server through the network , Only the user interface is exposed to the user , Usually in Web Browser . for example salesforce.com.
Infrastructure as a service is a cloud environment , It will VM Exposed to users for use as an entire operating system or container , You can install anything you want on the server . for example OpenStack、AWS、Eucalyptus.
PaaS Allow users to deploy their own applications on the pre installed platform , It is usually the application server framework and the developer tool suite . An example of this is OpenShHeroku.
16) What is the easiest way to build a small cloud ?
VMfest Yes, immediately from VirtualBox Virtual machine creation IaaS One of the cloud options . If you want a lightweight PaaS, have access to Dokku, It's basically a bash Script , It makes PaaS Divorced from Dokku Containers .
17) What is? AWS( Amazon Web Services )? Have the opportunity to work on Amazon tools ?
AWS It provides a set of flexible services , It aims to enable the company to use AWS and DevOps Practice creating and delivering products with faster speed and reliability . These services simplify debugging and infrastructure management 、 Application code deployment 、 Automate the software release process and monitor the performance of applications and infrastructure .Amazon Used AWS CodeCommit、AWS CodeDeploy、AWS CodePipeline Tools such as , These tools help simplify development operations .
18) What is? EC2?
Amazon EC2 Container Service (ECS) It is a highly scalable container management service and high performance , It supports Docker Container and allows you to use it by Amazon EC2 Easily run applications on an instance managed cluster .
EC2 Service is inseparable Amazon Machine Image-AMI The concept of .May It's really an image of a virtual machine that will be executed .EC2 be based on XEN virtualization , That's why will XEN Server migration to EC2 Very easy reason .
19) You find using NoSQL Database is better than RDBMS What are the advantages ?
Typical Web Applications are built using a three-tier architecture . To carry the load , Just add more after the load balancer Web Server to support more users . The ability to scale horizontally is a key principle in Cloud Computing , You can easily add or delete VM Examples to meet requirements become more and more important .
however , In the data layer , relational database (RDBMS) It is not allowed to lead to simple scale , Nor does it provide a flexible data model . Managing more users means adding more servers , Large servers are very complex , Owners and costs are disproportionately high , This is related to low-cost hardware 、“ Commodity hardware ”、 The architecture in the cloud is in sharp contrast . Organizations are beginning to find performance problems with relational databases for existing or new applications . Especially as the number of users increases , They realize the need to be faster 、 A more flexible foundation . Now is the time to evaluate and adopt NoSQL It's time for the database , Just like in their Web Same in application .
20) NoSQL The main SQL What are the difficulties of migration ?
According to the schema, each record in the relational database - Have a fixed number of fields ( Column ), Each field ( Column ) With the specified object and data type . Every record is the same . The data is denormalized in several tables . The advantage is that there is less duplicate data in the database . The downside is that changes in the schema mean multiple “ Change table ”, This requires expensive locking multiple tables at the same time to ensure that changes do not leave the database in an inconsistent state .
On the other hand , For database data , Each document can have a completely different structure from other documents . No additional management of the database is required to manage changes in the scheme .
21) NoSQL What are the benefits of database documentation ?
The main advantages of document databases are as follows :
- Flexible data model data can be inserted without defining a schema , The inserted data format can be changed at any time , Provide great flexibility , Ultimately, it brings significant agility to the business .
- Agreement 、 High performance advanced NoSQL Database technology is transparently putting cached data into system memory ; Completely transparent behavior to developers and the team responsible for operation .
- Some easy to expand NoSQL The database automatically propagates data between servers , No application involvement is required . You can add and remove servers without interrupting applications , Data and I/O Distributed on multiple servers .
22) Git be relative to CVS What are the main advantages of ?
The biggest advantage is Git It's distributed , and CVS It's centralized .CVS The changes in are specific to each file , and Git Changes in ( Submit ) It always refers to the whole project .Git The tools provided are better than CVS A lot more .
23) The difference between containers and virtual machines ?
Every VM Instantiation requires starting a complete operating system . Virtual machines occupy a lot of system resources . This will soon add a lot RAM and CPU cycle . Container host uses linux The process and file system isolation feature of the kernel .
24) What is? CoreOS, What alternatives are there ?
CoreOS Is a compact for running containers Linux Distribution version , It mainly has its own rkt Format , But other formats are also supported . It was originally based on ChromeOS And support Docker. The alternative is canonical Of ubuntu snappy or red hat Enterprises linux atomic host . Of course ,Containers It can also run in regular Linux On the system .
25) What is? Kickstart?
This is an automatic installation based on Red Hat Systematic approach . During manual installation ,Anaconda The installer will create files anaconda-ks.cfg, And then you can use system-config-kickstart The tool automatically installs the same configuration on multiple systems .
26) What is a network monitoring tool ? List a few
for example ,Nagios、Icinga 2、OpenNMS、Splunk and Wireshark. These tools are used to monitor network traffic 、 Network quality and detect network problems before they occur . Among those listed , Only Splunk It's proprietary , Others are open source .
27) Juju What is it? ?
Juju Is mainly used for ubuntu Orchestration tools for , Used in Ubuntu Manage on the system 、 Configuration and configuration . It started with Python Compiling , Later used Go Rewrote .
28) Give me an example of how you will handle the project ?
As a DevOps The engineer , I'll show you right DevOps A clear understanding of the project management strategy , And work with the team to set goals 、 Simplify the workflow 、 Scope of maintenance 、 Research and introduce new tools or frameworks 、 Translate requirements into workflow and follow up . I will turn to CI、 Release management and other tools to keep interdisciplinary projects on track .
29) What is an autopsy meeting ?
This is a meeting , We discussed what went wrong and what steps should be taken , So that failure doesn't happen again . The post analysis meeting is not to find out who should be blamed , It's about preventing further disruptions and planning to redesign the infrastructure , In order to minimize downtime . This is about learning from mistakes .
30) How much do you know about the serverless model ?
No server refers to the model that hides the existence of the server from developers . This means that you no longer need to process capacity 、 Deploy 、 Expansion and fault tolerance and operating system . It will fundamentally reduce maintenance work , And allows developers to quickly focus on developing code .
The sample is Amazon AWS Lambda and Auth0 No service platform .
Devops Example : Use Ansible Deploy application
Ansible It's a lightweight 、 Scalable solutions , For automating your application configuration .Ansible except Python and SSH There are no dependencies other than . It does not need to set up any agents on the remote host , No trace will be left after running . It allows you to create simple based on YAML Script to significantly simplify our operations . It facilitates configuration Automation 、 Deployment and orchestration .
Ansible The components of
Playbooks: Ansible playbooks It is a method of sending commands to remote computers by script . You can configure the entire complex environment by passing scripts to one or more systems , Instead of using it alone Ansible The command configures the computer remotely from the command line .
Ansible playbook With YAML Data serialization format writing . If you don't know what the data serialization format is , Think of it as a programming data structure ( list 、 Array 、 Dictionary, etc ) The method of converting to a format that can be easily stored to disk . You can then use this file to recreate the structure later .JSON Is another popular data serialization format , but YAML Easier to read .
Let's take a look at one that allows us to install in multiple hosts Web Applications (nginx) The basic script of :
hosts: webservers
tasks:
- name: Installs nginx web server
apt: pkg=nginx state=installed update_cache=true
notify:
- start nginx
handlers:
- name: start nginx
service: name=nginx state=started
hosts file :( Default in /etc/ansible/hosts Next ) This is a Ansible Inventory file , It stores hosts and their to host groups ( Network server 、 Database etc. ) Mapping
[webservers]
10.0.15.22
# example of setting a host inventory by IP address.
# also demonstrates how to set per-host variables.
[repository_servers]
example-repository # Example of setting up a host by hostname . Need to be in /etc/hosts # or DNS Local search in .
[ database server ]
db01
SSH secret key : For the first run , We need to tell ansible SSH and Sudo password , Because one of the common roles is to configure no password sudo, And deploy SSH secret key . So in this case ,ansible It can be on the remote node ( host ) In the implementation of playbook Command and deploy Web Applications nginx.
Conclusion
These are some questions you may encounter in the interview , But learning DevOps Conceptual time , You should never just focus on those reading all with Linux Something related to open source , And try any software that works for you . Thank you for reading .
边栏推荐
- sqlilabs less-8
- This paper introduces an implementation scheme to enhance the favorite transaction code management tool in SAP GUI
- Research Report on the development trend and competitive strategy of the global electromagnetic flowmeter industry
- 开源实习经验分享:openEuler软件包加固测试
- Research Report on the development trend and competitive strategy of the global axis measurement system industry
- A new book by teacher Zhang Yujin of Tsinghua University: 2D vision system and image technology (five copies will be sent at the end of the article)
- 小程序- view中多个text换行
- Dragon lizard community open source coolbpf, BPF program development efficiency increased 100 times
- 玩转MongoDB—搭建MongoDB集群
- [repair version] imitating the template of I love watching movies website / template of ocean CMS film and television system
猜你喜欢
【修复版】仿我爱看电影网站模板/海洋CMS影视系统模板
Use of Oracle database objects
Basic operation of queue (implemented in C language)
队列的基本操作(C语言实现)
[commercial terminal simulation solution] Shanghai daoning brings you Georgia introduction, trial and tutorial
Use lambda function URL + cloudfront to realize S3 image back to source
Play with mongodb - build a mongodb cluster
Interpretation of R & D effectiveness measurement framework
[NLP] pre training model - gpt1
QT社团管理系统
随机推荐
QT社团管理系统
既不是研发顶尖高手,也不是销售大牛,为何偏偏获得 2 万 RMB 的首个涛思文化奖?
Etcd summary mechanism and usage scenarios
sqlilabs less13
[commercial terminal simulation solution] Shanghai daoning brings you Georgia introduction, trial and tutorial
Station B was scolded on the hot search..
Applet - applet chart Library (F2 chart Library)
开源实习经验分享:openEuler软件包加固测试
逻辑是个好东西
Use lambda function URL + cloudfront to realize S3 image back to source
Leetcode (69) -- square root of X
Go integrates logrus to realize log printing
百度上找的期货公司安全吗?期货公司怎么确定正规
Force deduction solution summary 241- design priority for operation expression
【 剑指 Offer】55 - I. 二叉树的深度
Research Report on the development trend and competitive strategy of the global ultrasonic scalpel system industry
Fiori applications are shared through the enhancement of adaptation project
So programmers make so much money doing private work? It's really delicious
Oracle-数据库对象的使用
Research Report on the development trend and competitive strategy of the global indexable milling cutter industry