Get involved in the game: the MAZE DevOps game by ITSumma
We already talked a little about how we arrange quests for participants in IT conferences. Today we are launching an online game for admins (the idea of the quest has been revised and supplemented) - the Maze. Under the cut - her story. Get involved!
At our booth at Highload and RIT, dozens of curious people solved non-trivial tasks - like “the admin quit, the site crashed, everything needs to be fixed urgently.” It all started with what we thought - admins love tricky problems, and not the next routine “create me an FTP account”. As a task for the participants, they took an example from our practice - and we had to deal with a lot of outstanding cases. Everyone liked it, but we liked the hype:
Therefore, it was decided to make the game online - to bring together such tasks, divide them into three difficulty levels, and bring competitive spirit.
For conferences, we did everything on ordinary virtual machines in the flop, but this is slow and redundant, so we chose LXC containerization for a complete solution - this allows you to cheaply emulate Linux fully.
Now the game is a server with LXC-based virtual machines that are deployed from prepared images using Ansible playbooks. Images are prepared manually, of varying complexity, with different types of inherent problems.
The user logs in via Facebook, selects the difficulty level of the task, he is given SSH access to the prepared environment and a link to the site where you can see the results of his work. The task takes 15 to 45 minutes (depending on complexity), after the allotted time the virtual machine is reset, the access is disabled.
In the first public version, the tasks are quite simple, but it will only be a break-in of the main mechanics. So far, there are only three tasks - one for each difficulty level. After the launch, we will spend some time evaluating the loads and successes of the players, and based on the data received, we will expand the range of tasks and their complexity.
Then we will release more complex and interesting versions, measure the time for solving problems, and roll out the table of records.
The main plan is, of course, to increase the number and diversify the tasks. We have accumulated quite a lot of baggage of very different non-standard problems - there is definitely something to share with you :)
I would also like to experiment with the semi-automatic generation of task templates from pre-prepared small blocks of “problems”. So far, there are only theoretical assumptions on how this could be implemented, and it is not entirely clear whether everything will work out, but not using this opportunity would be a crime.
And finally - to give the opportunity to perform tasks directly on the site: to make a separate screen on which the console would be in the right container, a timer, labels of fixed and not fixed problems.
Ivan Svezhentsev is a leading web developer responsible for the current release. Everything will break, and he will not sleep (do not break, please!).
Sergey Sporyshev - a leading web developer, author of the game interface. So far, of course, quite modest, but, given future plans, he will still have more work to do. He was previously seen as the main developer of Project1917.
Cyril Fatin - senior system administrator from our support team, was engaged in the design and development of the entire core of the game, accumulated knowledge on various tricky admin issues that we encountered throughout our work.
The game is here .
The throughput of a server with games is ten light, five medium and three complex tasks at the same time. If it doesn’t let you in, wait a bit, look at the spinner. There is no queue as such, from whom ajax first flew away, they will give it a car :) We are
really looking forward to feedback and suggestions, both on assignments and on the format of the game itself. If you break or find a vulnerability - this is also very interesting, be sure to write. And share the results!
How did we come up with the game
At our booth at Highload and RIT, dozens of curious people solved non-trivial tasks - like “the admin quit, the site crashed, everything needs to be fixed urgently.” It all started with what we thought - admins love tricky problems, and not the next routine “create me an FTP account”. As a task for the participants, they took an example from our practice - and we had to deal with a lot of outstanding cases. Everyone liked it, but we liked the hype:
Therefore, it was decided to make the game online - to bring together such tasks, divide them into three difficulty levels, and bring competitive spirit.
For conferences, we did everything on ordinary virtual machines in the flop, but this is slow and redundant, so we chose LXC containerization for a complete solution - this allows you to cheaply emulate Linux fully.
What ultimately happened
Now the game is a server with LXC-based virtual machines that are deployed from prepared images using Ansible playbooks. Images are prepared manually, of varying complexity, with different types of inherent problems.
The user logs in via Facebook, selects the difficulty level of the task, he is given SSH access to the prepared environment and a link to the site where you can see the results of his work. The task takes 15 to 45 minutes (depending on complexity), after the allotted time the virtual machine is reset, the access is disabled.
In the first public version, the tasks are quite simple, but it will only be a break-in of the main mechanics. So far, there are only three tasks - one for each difficulty level. After the launch, we will spend some time evaluating the loads and successes of the players, and based on the data received, we will expand the range of tasks and their complexity.
Then we will release more complex and interesting versions, measure the time for solving problems, and roll out the table of records.
Future plans
The main plan is, of course, to increase the number and diversify the tasks. We have accumulated quite a lot of baggage of very different non-standard problems - there is definitely something to share with you :)
I would also like to experiment with the semi-automatic generation of task templates from pre-prepared small blocks of “problems”. So far, there are only theoretical assumptions on how this could be implemented, and it is not entirely clear whether everything will work out, but not using this opportunity would be a crime.
And finally - to give the opportunity to perform tasks directly on the site: to make a separate screen on which the console would be in the right container, a timer, labels of fixed and not fixed problems.
Starring
Ivan Svezhentsev is a leading web developer responsible for the current release. Everything will break, and he will not sleep (do not break, please!).
Sergey Sporyshev - a leading web developer, author of the game interface. So far, of course, quite modest, but, given future plans, he will still have more work to do. He was previously seen as the main developer of Project1917.
Cyril Fatin - senior system administrator from our support team, was engaged in the design and development of the entire core of the game, accumulated knowledge on various tricky admin issues that we encountered throughout our work.
Go!
The game is here .
The throughput of a server with games is ten light, five medium and three complex tasks at the same time. If it doesn’t let you in, wait a bit, look at the spinner. There is no queue as such, from whom ajax first flew away, they will give it a car :) We are
really looking forward to feedback and suggestions, both on assignments and on the format of the game itself. If you break or find a vulnerability - this is also very interesting, be sure to write. And share the results!