good answer(that does not negate the fact that all the other respondents are right, too)
Devops is practice. This is not a set of tools( tools are used at certain stages, the implementation of which is necessary for the approximation to the ideal), however, certain necessary tools again still there.
About devops you can read a lot of information, but I as admin (win-admin :D) see the situation for you, as well as any, with optovoi basis, like this:
- Fat you have identified the questions which you here right now don't play the slightest role. @leland.Wes and @Leonard wrote why: depends on the project.
- Testament any ops-a: automate everything you can
If the choice is between configuration management (chef, ansible, puppet, etc) and scripts - it is better than the first. Although there is debatable, in my project chef-th automated is not very used in the last stage of delivery in prod, since we are still printing the car up and running in AWS asg without post-configuration. Here it is possible to blue in the face arguing this is good or not, but the scripts in a perfect world lose DSL
- You write code to automate
You will need git (which pulls a git hosting: bitbucket, github, networks , etc). and skills to work correctly with git. For tracking and planning changes - will need some task tracker (jira, task tracker built into networks, something else).
- Infrastructure as code
Automate all means deployment automation infrastructure
Here already come into effect the features of your environment - in the cloud you likely going to want to use terraform or, for example, CloudFormation in the AWS - built-in orchestration, or will all at once start in containers - docker , kubernetes using appropriate tools.
Without correct and suitable to your product monitoring(+logging) to live. And this was before DevOps trend is a classic administration. Nothing here will advise with Zabbix-Ohm himself did not get along, moved on influx and attached (TICK stack). For logging - graylog, ELK. In some parts of the used prometheus which including for Kubera comfortable. In General what will be good friends.
It's just something that you should already know and it will be easier for them to start.
Will be good to navigate (not only know, but also to choose the right tools to be able to build the right pipeline) - you would kill to have, despite the fact that you can be weak in other areas (testing, build, etc.).
For the sake of understanding cycles, you can look at (the picture is relatively random,there are many, two years ago, I focused on another, more fitting with I a list of tools, but I can not find =( )
P. S. I want to reiterate that the above is based on personal experience and that of moving to devops from the ops. There are those who immediately try to build all on devops parallel study optovoi part and development( seen, not at all out ). There are those who are moving in devops from the Dev. Everyone will have different opinions of what is important in order to begin