DevOps Interview Questions

Category: DevOps Posted:Nov 16, 2017 By: Ashley Morrison

DevoOps Interview Questions

1. Mention the key aspects or principle behind DevOps.

The key aspects or principle behind DevOps are,

  • Infrastructure as code
  • Continuous deployment
  • Automation
  • Monitoring
  • Security

2. What are the core operations of DevOps with application development and infrastructure?

Following are the core operations of DevOps with application development and infrastructure:

  • Application development
  • Code building
  • Code coverage
  • Unit testing
  • Packaging
  • Deployment
  • Provisioning
  • Configuration
  • Orchestration
  • Deployment

3. Explain how “Infrastructure of code” is processed or executed in AWS?

The steps involved in execution of Infrastructure of code are mentioned below:

  • The code for infrastructure will be in simple JSON format
  • This JSON code will be organized into files called templates
  • These templates can be deployed on AWS and then managed as stacks
  • Later the CloudFormation service will do the Creating, deleting, updating, etc. operation in the stack

4. Explain how DevOps is helpful to Developers?

DevOps can be helpful to Developers to fix the bug and implement new features quickly.  It also helps for clearer communication between the team members.

5. List out some popular tools for DevOps.

Some of the popular tools for DevOps are,

  • Jenkins
  • Nagios
  • Monit
  • ELK (Elasticsearch, Logstash, Kibana)
  • io
  • Jenkins
  • Docker
  • Ansible
  • Git
  • Collectd/Collectl

6. How would you handle revision (version) control?

My approach to handle revision control would be to post the code on SourceForge or GitHub so that everyone can view it. Also, I will post the checklist from the last revision to make sure that any unsolved issues are resolved.

7. Which is the quicker way to open an Ubuntu terminal in a particular directory?

To open Ubuntu terminal in a particular directory you can use a custom keyboard shortcut. To do that, in the command field of a new custom keyboard, type genome – terminal – – working – directory = /path/to/dir.

8. How can you get the current color of the current screen on the Ubuntu desktop?

You can open the background image in the Gimp (image editor) and then use the dropper tool to select the color on the specific point. It gives you the RGB value of the color at that point.

Learn DevOps from Industry Experts

9. How you create launchers on desktop in Ubuntu?

To create launchers on desktop in Ubuntu you can use ALT+F2 then type “gnome-desktop-item-edit –create-new~/desktop “, it will launch the old GUI dialog and create a launcher on your desktop.

10. Mention some important features of Memcached.

Important features of Memcached includes –

  • CAS Tokens: A CAS token is attached to any object retrieved from cache. You can use that token to save your updated object.
  • Call-backs: It simplifies the code.
  • Get Delayed: It reduces the delay time of your script which is waiting for results to come back from server.
  • Binary protocol: You can use binary protocol instead of ASCII with the newer client.
  • Igbinary: Previously, client always used to do serialization of the value with complex data, but with Memcached you can use igbinary option.

11. Explain whether it is possible to share a single instance of a Memcache between multiple projects.

Yes, it is possible to share a single instance of Memcache between multiple projects. Memcache is a memory store space, and you can run memcache on one or more servers. You can also configure your client to speak to a particular set of instances. So, you can run two different Memcache processes on the same host and yet they are completely independent. Unless, if you have partitioned your data, then it becomes necessary to know from which instance to get the data from or to put into.

12. You are having multiple Memcache servers, in which one of the memcache servers fails, and it has your data, will it ever try to get key data from that one failed server?

The data in the failed server won’t get removed, but there is a provision for auto-failure, which you can configure for multiple nodes. Failover can be triggered during any kind of socket or Memcached server level errors and not during normal client errors like adding an existing key, etc.

13. How you can minimize the Memcached server outages?

  • When one instance fails, several of them goes down, this will put larger load on the database server when lost data is reloaded as client make a request. To avoid this, if your code has been written to minimize cache stampedes then it will leave a minimal impact
  • Another way is to bring up an instance of Memcached on a new machine using the lost machines IP address
  • Code is another option to minimize server outages as it gives you the liberty to change the Memcached server list with minimal work
  • Setting timeout value is another option that some Memcached clients implement for Memcached server outage. When your Memcached server goes down, the client will keep trying to send a request till the time-out limit is reached

14. How you can update Memcached when data changes?

When data changes you can update Memcached by –

  • Clearing the Cache proactively: Clearing the cache when an insert or update is made
  • Resetting the Cache: It is similar to the first method but rather than just deleting the keys and waiting for the next request for the data to refresh the cache, reset the values after the insert or update.

15. Explain what is Dogpile effect? How can you prevent this effect?

Dogpile effect is referred to the event when cache expires, and websites are hit by the multiple requests made by the client at the same time. This effect can be prevented by using semaphore lock. In this system when value expires, first process acquires the lock and starts generating new value.

16. How Memcached should not be used?

Memcached should not be used in the following ways:

  • Memcached common misuse is to use it as a data store, and not as a cache.
  • Never use Memcached as the only source of the information you need to run your application. Data should always be available through another source as well.
  • Memcached is just a key or value store and cannot perform query over the data or iterate over the contents to extract information.
  • Memcached does not offer any form of security either in encryption or authentication.

17. When server gets shutdown, does data stored in Memcached is still available?

Data stored in Memcached is not durable so if server is shutdown or restarted then all the data stored in Memcached is deleted.

Register for DevOps Free Live Webinar

18. What is the difference between Memcache and Memcached?

  • Memcache: It is an extension that allows you to work through handy object-oriented (OOP’s) and procedural interfaces. It is designed to reduce database load in dynamic web applications.
  • Memcached: It is an extension that uses libmemcached library to provide API for communicating with Memcached servers. It is used to increase the dynamic web applications by alleviating database load. It is the latest API.

19. Why has DevOps gained prominence over the last few years?

Big players such as Netflix and Facebook are investing in DevOps to automate and accelerate application deployment.

Then the Netflix which is a streaming and on-demand video company follows similar practices with fully automated processes and systems. Facebook has 2 billion users while Netflix streams online content to more than 100 million users worldwide.  These are great examples of how DevOps can help organizations to ensure higher success rates for releases, reduce lead time between bug fixes, streamline and continuous delivery through automation, and an overall reduction in manpower costs.

20. What is the need for DevOps?

DevOps fulfils all these requirements and helps enterprises in achieving seamless software delivery like Etsy, Google and Amazon which have adopted DevOps to achieve levels of performance that were unthinkable even five years ago. They are doing tens, hundreds or even thousands of code deployments per day while delivering world class stability, reliability and security.

24 X 7 Customer Support X

  • us flag 99999999 (Toll Free)
  • india flag +91 9999999