á¡áœááºááá¯ááºážá¡ááŒáááºá¡áááºááᯠááŒáá¯áẠáá áááºá០áá áááºá¡áá áá»ááºážááááºááŒá
áºáááºá
DevOps áááºáááºážááᯠááá¯ááºááá¯ááºááá·áº á¡ááááááºáá°ááŸá¬- "á¡ááœááºá áááºáááºá á¬ážá áá¬áá±á¬ááºážáááºá áá»áœááºá¯ááºááá¯á·ááá¯áá¹ááá®ááœáẠáááºážááᯠá¡áá±á¬ááºá¡áááºááá±á¬áºááá¯ááºááá·áºá¡ááœáẠááá¬ážá áá¬áááºá" áá¬áá¬ááºá á®áá¶ááá·áºááœá²áá°áá áºáŠážááẠá¡ááœá±á¡ááŸá áºááá±á¬áá»ááºáá áºáá¯ááœáẠá¡áá±á¬ááºá¡ááẠáá±á¬áºááá¯ááºááá·áº á¡ááŒá±áá»á¬ážááᯠáá»áœááºá¯ááºááá¯á· ááŸá¬ááœá±áá±áá«áááºá
áááºáááºážáááº-
- DevOps á¡áá±á·á¡áá»áá·áºáá»á¬ážááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºááá¯áá±á¬ á á®áá¶ááá·áºááœá²áá°áá»á¬ážá
- áá±ážáááºááŒá®áž ááŸááºážáááºážáá±á¬ááŒá±ááŸááºážáá»á¬ážááŒáá·áº DevOps áááºáá»á±ážááŸá¯áá®ááá¯á· ááœá±á·áá»á¬ážááá¯áá±á¬ áá¯áá¹ááá®áá»á¬ážááŸáá·áº á¡ááœá²á·áá»á¬ážá
- á¡áá±ážá á¬áž á á®áá¶ááá·áºááœá²áá±áž áá¯ááºáááºážáá»á¬ážááᯠááœááºáááºá áœá¬ ááŒá±ááŸááºážáááºááŸáá·áº áá¯ááºáááºážááœááºáá¯á¶áž á¡ááœá²á·á¡ááœáẠá¡ááœá²á·áá±á«ááºážáá±á¬ááºáá®ááá¯á· ááŒááºážááŸááºážá áœá¬ ááœá¶á·ááŒáá¯ážááá¯ážáááºáá¬á á±ááẠ"á á®áá¶ááá·áºááœá²áá° á¡ááŒá±á¬ááºážá¡áá¬áá»á¬áž" ááᯠáá¬ážáááºááá¯áá±á¬ developer áá»á¬ážá
DevOps áááááá¬áá»á¬ážááᯠááááŒá®ážá¡áá¯á¶ážááŒá¯áá°áá»á¬ážá¡ááœáẠáááºáááºážááẠá¡áá¯á¶ážááááºáá«á á¡áá áºá¡áááºážááœá±ááᯠááẠáááºáá°ááá¯ááºááŸá¬ ááá¯ááºáá«áá°ážá
á¡áœááºááá¯ááºážá¡ááŒáááºá¡áááºááẠááŒá áºáááºááŸááºá¡áá áºááá¯á¶á á¶áá áºáá¯ááŒá áºáááºá áááºážááẠáá±á¬áºá ááá¯ááá¯á·ááœá¬ážáááºááŒááºážáááŸááá² (áááºážááẠá¡áá»áá¯á·á¡ááœáẠá¡áá±á«ááºážááŸáá·áº á¡ááŒá¬ážáá°áá»á¬ážá¡ááœáẠá¡áá¯ááºááá¹ááá¬) áá®ážáá«ážáá»áŸáá¬ááŸááá±á¬ á¡á±á¬á·ááºááá¯ááºážá¡ááŒáááºá¡áááºáá»á¬ážáá²á·ááá¯á· áá°áá®áá±á¬ááŸá áºááŒáŸá¯ááºááŸá¯ááá¯áá±ážáááºá
áá»áœááºá¯ááºááá¯á·ááẠDevOps ááœáẠáááºáááºážááᯠááŸá
áºááŒáááºááŒá¯áá¯ááºáá²á·ááŒá®áž áááºááá¯ááºááá»áŸ ááŒá®ážáá¬ážáá±á¬ááá¯ááºáá»ááºá¡á¬ážáá¯á¶ážááᯠá
á¯áá±á¬ááºážáá²á·áááºá
á¡áááááŒá¿áá¬ááŸá¬ á
áááºáá»ááºááœááºáá»áŸá±á¬áºááá·áºáá»ááºááŒá
áºáááºá ááá¯á·ááŒá±á¬áá·áº áááºáááºážááœáẠááá«áááºáááá·áºá¡áá¬áá»á¬ážááᯠáá»ááºáá»ááºážááŒá±á¬ááŒáá«áááºá
á¡áá±á¬ááºážáá¯á¶áž á¡áá±á·á¡áá»áá·áºááœá± ááŸááá±á¬á·ááŸá¬ ááá¯ááºáá«áá°ážá á¡áá±á¬ááºážáá¯á¶ážá¡áá±á·á¡áá»áá·áºáá áºáá¯á¡ááŒá±á¬ááºážááᯠááœá²ááŒááºážá áááºááŒá¬ááŒáá·áºáá«áááºá á¥ááá¬á¡á¬ážááŒáá·áºá áááºááẠáá áºáááºááŒá¬ á¡áá°ážááŒááºáááºáááºáááºážááᯠá¡ááœááºááá°ááŒá¯áá¯ááºááá¯ááºááá·áº CI/CD áá±á«ááºážá ááºáá áºáá¯ááẠ4 áá¬áá®ááŒá¬ááŒáá·áºáááºá á€áá¬áá¡ááœááºáž á¡ááŒá±áá¶áá»á¬ážááᯠáááºááŒáááŒá®áž ááá¯ážááŸááºážáá±á¬ááá¯ááºááá¯ááºážáá áºáá¯ááᯠáááºáá±á¬ááºááá¯ááºáá±á¬áºáááºáž ááá°áá®áá±á¬ááá á¹á áá»á¬ážá¡ááœáẠá¡áá±á¬ááºážáá¯á¶ážá¡áá±á·á¡áá»áá·áºáá»á¬ážááᯠááœá²ááŒááºážá áááºááŒá¬ááááá«á
ááá á¹á ááœá±áááºáž ááŸáááŸá¬ ááá¯ááºáá°ážá ááá á¹á áá»á¬ážááẠáá®áá¬áá¶á¡ááœáẠáá±á¬ááºáá¯ááºááŒá áºáááºá á¡á²áá®á·ááŸá¬ áááºážááá á¡ááŒá áºá¡áá»ááºáá áºáá¯á¡ááŒá±á¬ááºáž áá áºáá¬áá®áá±á¬áẠááŒá±á¬ááá¯ááºáááºá Slurm ááœááºá ááááááẠ"á€á¥ááá¬ááᯠáá»áœááºá¯ááºáá¡áá±á·á¡áá»áá·áºááŸáá°áááº" áá¯ááŒá±á¬ááá¯ááºáááºá áá±á¬ááºáááºáá¬áá»áŸáááŸáá
áá áºáŠážáá»ááºáž ááœá²ááŒááºážá áááºááŒá¬áá²á· á¡áá±á·á¡áá»áá·áº ááŸáááŸá¬ ááá¯ááºáá«áá°ážá á¡áá±á·á¡áá»áá·áºááẠáááºážááœáŸááºááŒááºážááá¯ááºá ááááááŒá®ážáá±á¬áẠáááºáá«ááá²áá²áá¯ááºáá±ááŒááºážááŒá áºáááºá á¡áá±á·á¡áá»áá·áºááááºááœááºáá»ááºááŸá¬ ááá·áºá ááºážáááºááŸá¯áá»á¬ážááœáẠáá°áááá»á¬ážáá±á¬ á¡áá¯ááºááœá±ážáá»ááºááŸá¯áá áºáá¯á០á áááºááẠá¡ááœáá·áºá¡áááºážáá áºáá¯áá±ážáááºááŒá áºáááºá á¡ááŒááºážá¡áááºáá¯ááºááŒá®ážáá±á¬ááºá áááºááẠááŸááºá á¯áá»á¬ážááᯠááŒááºáááºáá¯á¶ážáááºááŒá®áž áááºááá¯ááºááá¯áẠáá±á·áá»áá·áºááŸá¯ááᯠááŒááºáá¯ááºááá¯ááºáá«áááºá áá«á á¡ááŒáá·áºáá¯á¶ážááááºááœá±ááᯠáá±ážáá«áááá·áºáááºá
Kubernetes ááŸááááºááá¯ááºáá«á â áááºážááẠDevOps áááááá¬áá
áºáá¯ááŒá
áºáá±á¬áºáááºáž áá»áœááºá¯ááºááá¯á·ááœááºááŸááááºá
áá¬ááŒá áºááá²?
ááœá á»áááá»á·ááá» Tools ááœá±ááᯠá¡á ááá± ááá¡á±á¬ááºáá¯ááºáá«á á¡ááŒá±áá¶á¡áá±á¬ááºá¡áŠáá»á¬áž áááºáá±á¬ááºááŒááºážá¡ááœáẠááŒá±ááŸááºážáá»áẠá¡ááŒáá·áºá¡á á¯á¶á
ááá¬ááŸááºááœá±áá®á áá¯á¶ááŒááºáá áºáá¯ááºááŸááááºá áááááá¬áá»á¬ážááᯠá¡ááŸááºááááºá¡áá¯á¶ážááŒá¯ááŒááºážá áááá¬áááºáá»á¬ážá á€áááºááŸá¬ áááºá¡ááŒá²áááºáž á á¬ááœááºá á¬áááºážááŒá¯á á¯ááŒááºážááŸáá·áº ááœá²ááŒááºážá áááºááŒá¬ááŒááºážááá¯ááºáᬠá¡ááŸá®á¡ááá¯áááºážáá±á¬ áá±á·áá¬ááŸá¯ááᯠááá·áºááœááºážááá¯ááºááá·áº á¡ááŒá±áá¶ááŒá áºáááºá
áá±á·ááá¯ááºážááŸááááºá áá±ážááœááºážáá»á¬ážá¡ááœáẠá¡ááŒá±áá»á¬ážá áááºážáá²á· ááá±á¬áá»ááºááœá±á¡ááŒá±á¬ááºáž áá±ážááá¯á·ááááºá
ááœá á»áááá»á·ááá» áá¯á¶á·ááŒááºáá»ááºááŒáá·áº áá¯ááºáá±á¬ááºáááº- áá»áœááºá¯ááºááá¯á·ááẠáá±á·á ááºáá¯á¶á·ááŒááºáá»ááºáá±á¬ááºážáá«áááºá áááŒáá¯ááºáá¬ááŸááºááá»áŸ áá±ážááŒá®áž ááŒááºáá±ážáá«á·áááºá
ááŒá®ážáá±á¬á· ááá¯ážáá¬á¡ááœáá·áºá¡áá±ážáááºáž ááŸááááá·áºáááºá ááá¯ááºáá¶áá°á ááœááºááœá¬ážáá«á áááºáááºážááᯠáá¯á¶ážááááŒáá¯ááºáááº
á¡ááŒáááºá¡ááẠá¡á á®á¡á ááº
áá±á«ááºážá áẠ1- Git ááŒáá·áº á¡ááœá²á·ááá¯ááºáá¯ááºáá±á¬ááºááŒááºážá
- á¡ááŒá±áᶠcommand áá»á¬ážááẠgit init, commit, add, diff, log, status, pull, push
- Git á á®ážáááºážááŸá¯á á¡ááá¯ááºážá¡áááºáá»á¬ážááŸáá·áº áááºáá»á¬ážá áá»á°áá¬áá»á¬ážááᯠáá±á«ááºážá ááºážáá«á
- á¡áá±ážááááºážá¡ááœá²á· á¡áá»á¬ážá¡ááŒá¬ážááŸáá·áº á¡áá¯ááºáá¯ááºááŒááºážá
- GitHub á á®ážáááºážááŸá¯
- áááºáááºážá á¡áá±ážááááºážá áá±á¬ááºážááá¯áá»ááº
- áááááá¹ááá»á¬ážá áá¯ááºáá±ááŸá¯áá»á¬ážá Gitflow ááŸáá·áº á¡ááœá²á·áá»á¬ážááŸáá·áº áááºááœáŸááºáá±á¬ á¡ááŒá¬ážá á®ážáááºážááŸá¯áá»á¬ážá¡ááŒá±á¬ááºáž áá±á¬ááºáá áºááŒáááº
áá±á«ááºážá áẠ2- ááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯ááŸá¯áá±á¬áá·áºá០á¡ááá®áá±ážááŸááºážááŒáá·áº áá¯ááºáá±á¬ááºááŒááºážá
- Python ááœáẠmicroservice ááá¯áá±ážááŒááºážá
- áááºáááºážáá»áẠá¡ááŒá±á¬ááºážá¡áá²áá»á¬áž
- áá±á«ááºážá ááºááŒááºážááŸáá·áº áá°áá áºá á áºáá±ážááŸá¯áá»á¬áž
- ááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯ááœáẠdocker-compose ááá¯á¡áá¯á¶ážááŒá¯ááŒááºážá
áá±á«ááºážá áẠ#3- CI/CD- á¡ááá¯á¡áá»á±á¬ááºá áá áºá¡ááŒá±á¬ááºáž áááá«ááºáž
- Automation áááá«ááºáž
- áááááá¬áá»á¬áž (bashá áá¯ááºá gradle)
- áá¯ááºáááºážá ááºáá»á¬ážááᯠá¡ááá¯á¡áá»á±á¬ááºáá¯ááºáá±á¬ááºááẠgit-hooks ááá¯á¡áá¯á¶ážááŒá¯ááŒááºážá
- á ááºáá¯á¶á ááºážáá±ážááœá²ááá¯ááºážáá»á¬ážááŸáá·áº IT ááœáẠáááºážááá¯á·á áá»áŸá±á¬ááºááœáŸá¬áá»á¬áž
- "á¡ááœá±ááœá±" ááá¯ááºááá¯ááºážáááºáá±á¬ááºááŒááºážáá¥ááá¬
- CI/CD á¡ááœáẠáá±ááºáá®áá±á¬á·ááºáá²ááº- Drone CIá BitBucket Pipelinesá Travis á áááºááá¯á·á
áá±á«ááºážá ááºáá¶áá«áẠ4- CI/CD- GitLab ááŒáá·áº áá¯ááºáá±á¬ááºááŒááºážá
- GitLab CI
- GitLab Runnerá áááºážááá¯á·á á¡áá»áá¯ážá¡á á¬ážáá»á¬ážááŸáá·áº á¡áá¯á¶ážááŒá¯ááŸá¯áá»á¬áž
- GitLab CIá ááœá²á·á ááºážááŸá¯á¡ááºá¹áá«áááºáá»á¬ážá á¡áá±á¬ááºážáá¯á¶ážá¡áá±á·á¡áá»áá·áºáá»á¬áž
- GitLab CI á¡ááá·áºáá»á¬áž
- GitLab CI Variables
- áááºáá±á¬ááºáá«á á ááºážáááºáá«á á¡áá¯á¶ážáá»áá«á
- á á®áá¶ááœááºáá²ááŸá¯ááŸáá·áº ááá·áºáááºáá»ááºáá»á¬áž- áá¬áá»áŸááºá áááºá¡áá»áááº
- áá á¹á ááºážáá»á¬ážááŸáá·áºá¡áá°á¡áá¯ááºáá¯ááº
- .gitlab-ci.yml á¡ááœááºážááŸá ááá°áá¬áá»á¬ážá ááá¯ááºááá¯ááºážá ááá°áá®áá±á¬ á¡á áááºá¡ááá¯ááºážáá»á¬ážááœáẠáá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠááŒááºáááºá¡áá¯á¶ážááŒá¯ááŒááºážá
- ááá¹ááá»á¬áž áá«áááºáá«áááºá
- gitlab-ci.yml á áááá¯áá»á¯ááºááá¯ááºááŸá¯ á á®áá¶ááá·áºááœá²ááŸá¯ (ááá¯ááºáá áºáá¯ááŸáá·áº á¡ááŒá¬ážááá¯ááŸá±á¬ááºáá¬áá»á¬ážááá¯á· á¡ááá¯á¡áá»á±á¬áẠááœááºážááá¯á·áááº)
áá±á«ááºážá áẠ5- á¡ááŒá±áá¶á¡áá±á¬ááºá¡áŠ Code á¡ááŒá áº
- IaC- á¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶ááᯠáá¯ááºá¡ááŒá áºáá»ááºážáááºááŒááºážá
- á¡ááŒá±áá¶á¡áá±á¬ááºá¡áŠáá¶á·ááá¯ážáá±ážáá°áá»á¬ážá¡ááŒá ẠCloud áá¶á·ááá¯ážáá±ážáá°áá»á¬áž
- á áá áºá áááºááŒááºáž áááááá¬áá»á¬ážá áá¯ááºáá¯á¶áááºáá±á¬ááºááŒááºáž (packer)
- á¥ááá¬á¡áá±ááŒáá·áº Terraform ááá¯á¡áá¯á¶ážááŒá¯á IaC
- ááœá²á·á ááºážááŸá¯ááá¯ááŸá±á¬ááºááŸá¯á áá°ážáá±á«ááºážáá±á¬ááºááœááºááŸá¯á á¡ááá®áá±ážááŸááºážá¡ááá¯á¡áá»á±á¬ááºá áá áº
- Ansible playbooks áááºáá®ážááŒááºáž á¡áá±á·á¡áá»áá·áº
- á áááºáá¬ááºáá»ááŒááºážá áá¯ááºáá±á¬áºááŒá±á¬ááá¯ááŒááºáž
- á¥ááá¬á¡áá±ááŒáá·áº Ansible ááá¯á¡áá¯á¶ážááŒá¯á IaC
áá±á«ááºážá ááºáá¶áá«áẠ6- á¡ááŒá±áá¶á¡áá±á¬ááºá¡áŠá ááºážáááºááŒááºážá
- Molecule ááŸáá·áº GitLab CI ááŒáá·áº á ááºážáááºááŒááºážááŸáá·áº á ááºáááºáááŒáẠáá±á«ááºážá ááºááŒááºážá
- Vagrant ááá¯á¡áá¯á¶ážááŒá¯ááŒááºážá
áá±á«ááºážá ááºáá¶áá«áẠ7- Prometheus ááŒáá·áº á¡ááŒá±áá¶á¡áá±á¬ááºá¡áŠ á á±á¬áá·áºááŒáá·áºááŒááºáž
- á á±á¬áá·áºááŒáá·áºááá¯á· áá¬ááŒá±á¬áá·áº ááá¯á¡ááºáá¬áá²á
- á á±á¬áá·áºááŒáá·áºááŸá¯á¡áá»áá¯ážá¡á á¬ážáá»á¬áž
- á á±á¬áá·áºááŒáá·áºáá±ážá áá áºááœáẠá¡áááá±ážáá»ááºáá»á¬áž
- áá»ááºážáá¬áá±á¬á á±á¬áá·áºááŒáá·áºáá±ážá áá áºáá áºáá¯áááºáá±á¬ááºáááºáž
- áá°ááá¯ááºážá¡ááœáẠáá°áá¬ážáááºááá¯ááºáá±á¬ á¡áááá±ážáá»ááºáá»á¬áž
- áá»ááºážáá¬áá±ážá á áºáá±ážááŒááºáž- áááºááááá¬ážááá·áºáááºáá»á¬áž
- á á±á¬áá·áºááŒáá·áºáá±áá¬á¡áá±á«áºá¡ááŒá±áá¶ááŒá®áž á¡ááá¯á¡áá»á±á¬ááºá áá áº
áá±á«ááºážá áẠ#8- ELK ááŒáá·áº áá»áŸá±á¬ááºááœáŸá¬ááᯠááŸááºáááºážáááºááŒááºážá
- á¡áá±á¬ááºážáá¯á¶áž áá áºáá¯ááºááŒááºáž á¡áá±á·á¡áá»áá·áºáá»á¬áž
- ELK stack
áá±á«ááºážá áẠ#9- ChatOps ááŒáá·áº á¡ááŒá±áá¶á¡áá±á¬áẠá¡á¡á¯á¶á¡ááá¯á¡áá»á±á¬ááºáá¯ááºáá±á¬ááºááŒááºáž
- DevOps ááŸáá·áº ChatOps
- ChatOps- á¡á¬ážáá¬áá»ááºáá»á¬áž
- á¡á¬ážááá¬ááŸáá·áº á¡ááŒá¬ážááœá±ážáá»ááºá áá¬áá»á¬áž
- ChatOps á¡ááœáẠáá±á¬á·ááºáá»á¬áž
- Hubot ááŸáá·áº á¡ááŒá¬ážááœá±ážáá»ááºá áá¬áá»á¬áž
- áá¯á¶ááœá¯á¶ááŸá¯
- á¡áá±á¬ááºážáá¯á¶ážááŸáá·áº á¡ááá¯ážáá¯á¶áž á¡áá±á·á¡áá»áá·áºáá»á¬áž
á¡á á®á¡á ááºááᯠáá¯ááºáá±á¬ááºáá±ááŒá®áž á¡áááºážááẠááŒá±á¬ááºážáá²ááá¯ááºáá«áááºá
áá±ážááŸá¯ááºáž : 30 âœ
source: www.habr.com