ααΆααααΆααααααααααΆαα DevOps ααααΌαααααα’αααααΆααααΆαααα αΆααααααΆααα’αααα
αΆααααααΎαααααΌαα
DevOps ααΆαααααΆαααΆ panacea αααααΆααααααΎαααΆαα’αα·ααααααααΊαααα ααααΆα αααααΆαααααα αα·ααααα αΆααααααα ααα»ααααα’αααααααΌαααΆαα ααααααΉααα·α αα½α αααα»ααα αααα»α DevOps α ααΆααΉαααααααααααααΎααααααα·αααΌα ααΆαααααααααΆαα DevOps αα·ααααααααααΎααα½ααααα»αααααΆαααα αΆαα αααβαα·αβαααβααΆβααααα»αααααααβαααβαααβαα ααα»ααααβααΆαβαα "ααααΈ" ααα»αααααβαααβα’αΆα βαααααΈαβααΆαα α αΌαα αΆααααααΎαααΆαα½αααΉααααααααα·ααΆαααααα
ααΆαααααΆααααααααα»αα αααα DevOps
αααα»αααααΆααααααΎααΆαααΆαα½αααααα
Citi Group αα·ααααααΎααααααα·ααΈαααααΆα IaaS ααΎααααΈαααααααααα αααααΆαα
ααΆααααααααααααααα Citi ααα»αααααααα»ααααααα
αΆααα’αΆααααααααΎαα·ααΈαααααΎαααααα·αααααΆααααααααααΆααα’αα·αααααα αα·ααααααα’ααααααααααα»αα
ααααα’αααα’αα·ααααααα Greg Lavender αααααΆ CTO ααααααΎααααααΆααααααΆααααααααααα αα·αα αααααΆαα
ααΆαααααααα ααΆαααααΆαααααα
αααααααααα»αα
ααΆααΆααα ααΆαααααααααα αΆαααΈααΆαααΉαααΆααααααααα»αα αα»ααααα ααααααααααΈα
ααΎ Amazon, Google αα·α Netflix ααααααααααααααααααΆααΎααααΈα αΆααααααΎαα αααααΆαα αααΎα? α αΎαααΆααΆααααα αα½αααααΆααααα·ααΈαααααΎααααααααααΆαα DevOps ααααΎαααααα’α₯αααα ααα
α’αααΈαααΆαααΆααα»αααααΆααααΆαααααααΆαααα½αααΎααα Citi αα αΌααααααΎαααααΌααα DevOps α αααααΆαααααααα»ααααααααα»αααΆαααα·ααααΆαααααααααααΆ ααα»ααααααΎαααΆααααααΌααα ααΆαααααΆαααΈαααα’αα·αααααααααααα α’αααα’αα·ααααααααΆααα’ααααΆααα·αααα·α αΌαααααΎαααΆαααΈαααα’αα·αααααααααα½αααααααααα’ααααΎ IBM WebSphere Application Server Community Editionα ααΆαα½αααΉαααΆαααααΆααΆααααα»ααααααααΆαααααΆααΎααααΈα ααα αΆα ααααααΆαααΈααα "ααααΆααα α»α" α αΎαααΆααααααααααΎαααααΌα "ααΊα αΆαα" α αα αΆαααα»αα αααααααα½αααΎαα ααΎαααααΆαααΆαααααααααααααΌααα·ααααααααααΆααααΆαα½αααΉαααΆαααααΎααααα ααααΎαααΆαααΉααααααΌαααααααααα αααΆααααα αααΎα αα·αααααΆααα·ααΈααΎααααΈααΆαααΆαααΆαα ααα αΆαααΌαααααααα½αααΈαα·α αα ααΆααα½αα ααα½α α¬αααααΌαααΆαα’αα·αα·αααααααα
ααΆα αααΆααααΆααααΆ α’αααΈαααααααΌαααααΎααΆαααααΆαα α αΎααααα»αααΆαααααΎααα·ααααα½αααΆαααΆααααααΆααααα·αααΌα ααααΆα ααΎαααΆααααααα α α·ααααααααΎααααααααααΆαα DevOps ααααΌαααΆαα½αααααΆ - ααΆααααΆααααααΎααααΆαααΈααα·αααα·α αα·ααααΆαααΈααααααααα·ααΈ Tomcat α αΎααααα»αααΆαααΎααα Jenkins ααΆααα½ααααα αΌαααΆαα½α Atlassian Jira αα·α BitBucket ααααΌα ααΆααΆαααααααααααααΌαααΆαα½αααΉαααΆαααααΎαααααα αααααααααααα½αααΆαααααααα ααΎαααΆαααααΎααααααααααααα·αααααααααααααΆααα’αα·αααααααααΆααααααα αααααα ααΆαααααΎααα 100% ααααααααααΎααΆααα ααΎαααΆαααΈαααα’αα·αααααα α’αΆα αααα½ααα·αα·ααα αα·ααααααα’ααΆαααααααααααααΌαααΆαα½αααΉαααΆαααααΎααααα α αΎαααΆααΆ Git α’αΆα ααααΌαααΆαα αααααΆαααα ααΉαααΆαα ααα αΆα αα·ααααα αΆαααα Jira α α αΎαααααΎαααααΆααα’ααααα§ααααααααααΎαααααΎααΎααααΈαααααΎααααααααααΆαα DevOps ααΊααΆαααααααΎαα αα α
ααΆααα·α αααααααααΆαααααααααΌαααΆαααααΎα±ααααΆαααα ααΈαααααααΎααα·αααΆαααΌααααΈααα’αα»ααααααΆααααααααααα·αααααααααααααΎ Jenkins α¬ Ansible α ααα»ααααβααΎαβααΆαβααααααα αααα ααααΆαααααΆαααααααααααααΆααα
ααΆααα·αααααΆαααααααα DevOps αα·α CI/CD Chain
DevOps ααΆααα·αααααααααααααααΆα DevOps ααΌα ααΆ Agile αα½αααΆααα·ααααΆααΆααααααααααΆα ααα»ααααααΆαα αααΎαααΉααααααααααΉααα·αααααααΆααααααα DevOps ααΊααΆαα·ααΈααΆααααααα½α α¬ααααααΈαα·αααααΆαα’αα·αααααααααααα·ααΈ αααααΆαααααΆαααααααΆααααΊαααααΎαααααααααααα’αααα’αα·αααααα αα·ααα»ααααα·ααααααααα "αα ααΎαααααΌα ααααΆ" ααΆαααΆααααααααΊααααααααααααα·α ααα»ααααααααααααΆααααΎα’αααΈααααα½αααααα’αααα»α ααΆαααΉαααΆααααααΆαα ααα αΆαααΎαα‘αΎα ααα·αααΆαααΆαααΆαααΎαα‘αΎα ααΆαααααααααΎαα‘αΎαα
αααααααααα§αααααααααααΆααα―ααα·ααααααααααΆααααΎααααΈαααααΎαααα·ααααΆα DevOps αα½αααΆαα·αα’αΆα ααααααΆαα α’αααΈαααααααΆαααααα»ααααααΊααΆααα½ααααα αΌαααΆαααα αα·αααΆαα ααα αΆααααα (CI/CD)α ααΆαααααΆααααΆαααααααααααΆαα αααα»ααααααααααΆαααααααΆααααα·ααααΆαααΈαα½αα (α§. DEV (ααΆαα’αα·αααααα), INT (αααΆα αααααα), TST (ααΆαααααΎααααα), QA (ααΆαααΆααΆαα»αααΆα), UAT (ααΆαααααΎαααααααα½αααα’αααααααΎααααΆαα), STG (ααΆααααα α), PROD (ααΆαααααΎααααΆαα)) αα·α αα ααΆααααααααΊααααααααααααα· α’αααα’αα·ααααααα’αΆα ααα·αααΌααα»αααΆα α ααα αΆαααΆ αα·αα’αΆα αααααΎαα‘αΎααα·αααΆααααΆαααΆααααα½αα
ααααααααααΆααααααα·αααααΆα’αααΈαααααααααΎααααααααααΆαα DevOps ααΆααααΆαααα αΆα ααΌα αααα αΆααααα»αααΌαααΆαααΆαααααα αααααααΎα§ααααααααααααΎαα αα α
αααα α»ααααααΈα
ααα αΆαααΈ 1α CI/CD Platform
ααααΌαα’αααααααΌαααΆαα§ααααα CI/CD α Jenkins ααΊααΆα§αααααααΎαα αα α CI/CD αααααΆαα’αΆααααΆαααααααΈ MIT αααααααΌαααΆααααααααΆααΆααΆ Java αααααΆαααααΎα±ααα αααΆ DevOps ααααα·αα αα·αααΆαααααΆαααΆαααααααΆαααΆααααααααααααΆαα CICD α
ααΎ Jenkins ααΆα’αααΈ? αααααααΆα’αααααΆαααααΆαααααααΆααααααααααααΆααααααΆαααα αα·αα§αααααααααααα ααααααα½αααΆααααΆαα α§ααααα CI/CD ααΌα ααΆ Jenkins ααΊααααΆααααααααααα ααα»ααααααΆαα½αααΉαα§ααααα αα·αααααΆαααααααααα ααΆααααΆαααΆααΆαααααΆααα’ααα
ααααααααΈααΎ Jenkins ααΆαα§ααααααααααααΎαα αα ααΆα αααΎαααα ααααΎαααΎαααΆαα½αα
αααααΆα’αααΈαααααααΎαααΆα DevOps ααΎααα ααΌα ααΆα§ααααα CI/CD
α’αααααΆαα§ααααα CI/CD αα αααα»α localhost ααα»αααααα·αααΆαα’αααΈααααΌαααααΎα αααΎαααα ααααααααα ααα αΆααααααΆααα
ααα αΆαααΈ 2: αααα
αααααααΆαααααα’αααα»α (αα·αααΆααααα½ααααα»α) ααΎααααΈααΆαααααααΆαα’ααα αΆαααααα§ααααα CI/CD ααΊααααΌααααα αΌαααΆααΆαα½αα§ααααααααααααααααααα (SCM)α α ααα»α’αααΈααΆαααΆα’αααααααΌαααΆαααΆαααααααααααααα? α§αααΆααΆα’ααααααα»ααααααΎααααααα·ααΈα α’ααααααααααΆααΆααΆααΆ Java, Python, C++, Go, Ruby, JavaScript α¬ααΆααΆαααααααααααααΆαααααα»α αα·αααααααΌα αα½αα α’αααΈαααα’ααααααααααααΌαααΆαααα α ααΆααΌααααααα ααααΌαα‘αΎα ααΆαα·αααααααα·αααΎα’αααααααΎααΆαααααααΆααα―α α’αααα’αΆα αααααΆαα»αα’αααΈαααααααααΆααα αααα»ααααααα»ααααα»αα ααα»αααααα ααααααααααααααΈαα ααααΎα αα·αααΆαααα»αααα αΌααα½αααΆααααα αααΎα α’αααααααΌαααΆααα·ααΈα αααααααααΆαααααΆααααααΌαααΌα ααα»αααααααααΆαααΆααααααααα·α αα ααααααα αΌαααΆαααααΆααααααΌαα α αΎαβα’αααβααβααααΌαβααααΎβααΌα ααααα βααΎααααΈβααααΆαβααααβαα»αβαααβαα·αβααααΎβααΆαβααααα»αβαα»α αα·αβααααΎβαα·ααΈβα ααααβαα·αααααΆααβαααααΆααβα―αααΆαβααΌαα
α αΎααα ααΈααααααααααΆα SCM αααααααΈααααααα SCM αααααΆαα»αααΌααα αααα»αααααΆαα αααααααααααααααααααΆ αα·ααααααααααα½αααΆαααα»αα ααααα’αααα’αα·ααααααα
ααΆαα§ααααα SCM ααΆα αααΎα ααα»αααα Git ααααΉαααααΆαααΆαααααααΆαααΆαααααααα αααα»αααααΆαα’αααα±ααααααΎααΆ ααα»ααααααΆααααααΎαααααααααα
αααααΊααΆα’αααΈαααααααα DevOps ααΎααα ααΌα ααΆαααααΆααααΈαααααα SCM α
α§ααααα CI/CD α’αΆα ααααααααααααα·ααααααΆααααα αα αα·αααΆαααααΌαααααα αα·αααΆααα ααΆαααΆαααα»αα αα·αα’αΆαααααβαα? ααα»ααααα₯α‘αΌααααααΎααααΎααΌα ααααα ααΎααααΈααααΎα±αααααααα·ααΈααααΎαααΆαααΈααα, αααα‘αΆαααααα’αααααααΎααααΆααααΆααααΆααααΆαααΆαα?
ααα αΆαααΈ 3: αααααΎαα§αααααααααααααααααα·αααα
α’αααΈαααααΎαααΆαααΌα αααααΆαα½αααα α’αααα’αΆα αααα ααααΌα αα·αααααΎααΆαααααΆααααααΌαα ααααααΆααααααααααααααα αα·αα’ααααΎααα·αααααααα·α±ααααααΎααΆαααΆαα½αα’αααα ααα»ααααα’ααααα·αααΆααααΆααααααα·ααΈαα α‘αΎαααα ααΎααααΈα±ααααΆααΆαααααα·ααΈαααααΆα ααΆααααΌαααααααΌαααΆαα ααααα αα·αααα ααα αααααααΆααα ααα αΆα α¬ααααΎαααΆαααΆαααααα·ααΈαααα’αΆα ααααα·ααααα·ααΆαα (ααΆααΆααααααααααα·ααΈαααααΆαααααααααΌα ααΆ JavaScript α¬ PHP αα·αα αΆαααΆα αααααΌαααΆαα αααααααα )
ααααΎα§ααααααααααΎαααααααααααααα·ααααα α§αααααααΆαα½ααααα’αααααααΎαααΎα ααΆααΉααααααΌααααα»αααΌααααα»αααααααααααΉαααααΌα αα·ααααααααααααααααα· ααΆααααα’αΆα ααΆαα ααααα ααΆαααααΎααααα αα·αααΆαα ααα αΆαα α§ααααααααααΎααα»αααααΆααΆαααΆααΆ ααα»αααααααααΎααααααααΎαα αα ααΆααααααααααΌαααΆαααααΎααααΆααααΆααΌαα α
ααα’α₯αααα αα! α₯α‘αΌαβαααβααΎαβαααα αΌαβα―αααΆαβαααααβαα ααΆβααααααααβα§αααααβαααααΎαβαααααβαααααααα·βαα βαααα»αβααΆαβαααααααααβααααα ααΌα ααααβα§ααααα CI/CD αααααΎαβαα½αααΆα
ααΆβααΆαβα’αΆααααααβααα’α ααα»ααααβααΎβα’αααΈαβααΆααβα’ααβαααβααααΌαβαααα ααβαα βα―ααΆβα₯α‘αΌαβααα?
ααα αΆαααΈ 4: αααΆαααΈααααααααα·ααΈαααααΆα
ααΌα αααα α’αααβααΆαβα―αααΆαβααα ααβαααβα’αΆα βααααΌαβααΆαβααααα·ααααα· α¬βααΆααβα ααα ααΎααααΈα±αααααααα·ααΈααΆααααααααααα·αααααΆαα ααΆααααΌαααααΆαααααααααααααΆαααα α¬α ααα»α αααααΆαααα½αα ααα½α ααα»ααααα’αααααααΌαααΆααααΆααΆααα’αααα ααααααααΆαα½αα
αααααα·ααΈαααααΆαα’αΆα ααααΌαααΆααααα αααα ααΎαααΆαααΈααααααααα·ααΈααα αααααα αααΆαααΈααααααααα·ααΈαααααααΌαααα·ααΆααΆααααα’αααα’αΆα ααααα·ααααα·αααααα·ααααΆαααααΆαααα ααα αα αααα αΆαα ααα»α αααααΆαα αα·ααααα αΆαααααΆααααααα αααααααΆαααααα α’αααααααΌαααΆααααΆαααΈααα HTTP αα·αααα·ααααΆααα½αα ααα½ααααααααα (α§ααΆα ααααααΆαααΈααα·αααα·α) ααΎααααΈααα‘αΎααααΆαααΈααααααααα·ααΈα αααααΆαααααααα α αΌαααααΎαα»αααΆα’ααααααα»ααααααααΆαα’αααΈαααΆααα’ααααααα αααα’ααααα (αααααΈααΆαααα»αααΉααα·ααΆαα’αααΈαα»αααΆααααααααααα)α
ααΆααααΆαααΈααααααααα·ααΈααα αααααααΎαα αα ααΆα αααΎαα
ααΎαααΆααααααααααΆαα DevOps αααααααΎαααααααΎαααΆααα½α α αΎαα ααααΎβααΆαβααα’!
ααΆαααααΆααα α’αααα’αΆα ααααα ααΈααα αααααΆααααα’αααα’αΆα αααααααΆαααΆααααααα½αα―α ααα»ααααααΆααΆαααααααα·ααΆαα’αααΈαα»αααΆαααααΌαα
ααα αΆαααΈ 5: ααΆαααααΎααααααααααααααα
ααΆαααααΎαααααααααΌαααΆααααααααΆ αα·αααΆααα·αααααααΉααααααα αααΎα ααα»ααααααΆααΆααΆααααααΎααααα»αααΆααααααααααα α»αααααΆαα αα·ααααααα’ααΌαααΎααααΈααααΆααα α·αααα’αααααααΎααααΆααα α»ααααααα α ααααααααααααααααΆαα§αααααααΎαα αα ααΆα αααΎααααααΉααα·αααααΉαααααΆαααααααΌαααα»αααααααααα»αααααααααΆαααααααααααΌααααΆαα’αααΈαααααααααα’ααΆαααααα α§ααααα CI/CD ααΆαα αααΎαα’αΆα αααα αΌααα αααα»αα§αααααααΆααααα αα·αααααΎα±ααααααΎαααΆααααααααααααααααα·α
ααΆαααααΎαααααααααΌαααΆααααα ααααΆααΈααααααα αααααααααααΆααααααααααΆααααΆαααααα αα·αααΆαα’αα»ααααααΆαααααΎααααα αα·αα§ααααααααααΆαααΆαααααΆαααΎααααΈαααααΎααα»αααΆαααΌαα
αααααααααααΆααααα
α§ααααααααααΆαααΆαααααΆαα’αααΈαα»αααΆα
α§ααααα αα·ααααααααααααΆαααααααΆαα αααΎαααααΌαααΆαααααααααααΆαα Java, Python αα·α JavaScript αααααΆααα C ++ αα·α C# ααΆααααααα·αααα· (αααααΈααΆ GCC ααΊααΆαααααααΎαα αα ααααα) α
ααΎαααΆαα’αα»ααααα§αααααααααααααααααΎααΆαααααΎααααα α αΎαα₯α‘αΌαααα ααααααααα αΌα DevOps αα½αααααΎααα ααΌα ααΆααΌαααΆααα ααΎαααααΌααααααααα
ααα αΆααααααα
.ΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ
ααΌα ααααααα»αααΆααα·ααΆα αααΆαααΈααααααααα·ααΈα’αΆα ααααΌαααΆααααα αααα ααΎαααΆαααΈααα·αααα·α α¬αααΆαααΈααα ααα»αααααα»αααΊαααααΆααααααΆαααα·αααΆαααΆαα
αααααΆαααα»ααααα»α Docker αα·α Kubernetes ααΆααααααΆααααΌαααΆααααα αααααΈααΆααΆααααααΎααααααααααααααα
α’αΆαα’αααααα’αααΈ Docker αα·α Kubernetes αα
ααΎ Docker ααΆα’αααΈ? ααΆαααααΆαα’αααΈ Docker ααΎ Kubernetes ααΆα’αααΈ? Kubernetes ααΈααααΌα
α§αααααααααααααααααα·ααααααααα
αααααααααΆαα DevOps ααααααΎαααΊαααααααΎααΆααααΆααα·α αα αα ααΆα αα·αααΆαα ααα αΆααααααα·ααΈ ααα»ααααααΆαααΏααα½αα±ααα αΆααα’αΆαααααααααααααααααα’αααα’αΆα ααααΎααΆαααΆαα½αα§ααααα DevOps α ααΆα§ααΆα ααα ααααΎααααΆαα Infrastructure as Code (IaC) tools αααααααΌαααΆαααααααΆααααΆααΆ Middleware automation toolsα α§αααααααΆααααααα½αααααααααααααα·ααααααΆαααα‘αΎα ααΆαααααααααα αα·αααΆααα·α αα αααααααααααααΆααα§ααααααααααΆαα α§ααΆα ααα α§αααααααααααααααααα·ααααα’αΆα αααααααα·ααΈ (αααΆαααΈααααααααα·ααΈαααααΆα ααΌαααααΆααα·αααααα α§ααααααααα½ααα·αα·ααα) ααΆαα½αααΉαααΆααααααααααΉαααααΌα α αΎααα»ααα½αααΆαα αααΆαααΈααααααααα·ααΈα
αααααΊααΆαααααΎααα½αα ααα½ααααααΆααα§αααααααααααααααααα·ααααααααααααααΆαααΎαα αα α
ααααααΆααααα’α·ααα
αααα»αα’ααααα
Ansible ααΆαααααΆαα’αααΈααΆαα αΆααααααΎα αα»αααααΆαααααααααΆαααΆαααααααΆαααααααααααααα·ααααααΆαα½α Ansible ααααΌα 5 α§ααααααααααααααααΆαααααααα ααΆαααααααα
α₯α‘αΌααααα’αααΈααα?
αααααααΆααααααΆα
α»αααααΆααααΉαααααα»αααααα αααααααααΆαα DevOps α’αΆα
ααααΎααΆαα
αααΎαααΆααααα α
αΆααααααΎαααΆαα½αα§ααααα CI/CD α αΎαααΎαα’αααΈαααααααααααα’αααα’αΆα
ααααααααααααα·ααΎααααΈααααΎα±ααααΆαααΆαααααα’αααααΆααααααΆααααα½αα αα»αααααα
α’αααΈ
αααααΊααΆα’ααααα DevOps ααα’αα½αα ααα½αααααααααΆααα’αααα αΆααααααΎαααααΌαα
ααΎ DevOps ααΆα’αααΈ? ααααΆα 5 ααααα’αααα’αα·αααααα DevOps DevOps αααααΆααα’αααααΆααααααΆ ααΆαααααΆαα’αααΈααΆααα·ααΆαααααΆαααααα αααα»α DevOps
α’αααααα’αΆα αα½ααααα αΌα DevOps ααΆαα½αααΉαα§ααααα agile ααΎαα αα αααααα
ααΎα’αααΈαα ααΆααΆααα αααα α½α? 4 ααα αΆαααΎααααΈαααααααααααΆααα αααα α½α
ααααα: www.habr.com