DevOps

Vikipediya, açıq ensiklopediya
Keçid et: naviqasiya, axtar

DevOps ("Development" və "Operations" ingilis sözlərinin qısa forması) proqramçılar və sistem administratorlar arasında qarşılıqlı əlaqə və əməkdaşlıq nəticəsində yaradılan tətbiqi proqamların hazırlanması prosesidir. Həmçinin bu prosesə hazırlanmış proqramların inteqrasiyası, testi, serverdə yerləşdirməsi və gələcəkdə lazım olarsa hər hansı digər bir mühitə daşınması prosesinin avtomatlaşdırılması da daxildir. Bu prosesin və ya mədəniyyətin formalaşdırılmasında əsas məqsəd proqram təminatının daha sürətli və etibarlı şəkildə hazırlanması, lazımi dəyişikliklərin edilməsi və sifarişçiyə çatdırılmasıdır.

Tarixi[redaktə | əsas redaktə]

Agile 2008 konfransında, Andrew Shafer və Patrick Debois "Agile Infrastructure" təqdim elədilər.[1] DevOps anlaylşı 2009-cu ildə isə Belçikada keçirilən və bir neçə gün davam edən "devopsdays" (devops günləri) konfrasından sonra məşhurlaşmağa başladı. O vaxtdan bəri dünyanın bir çox ölkələrində bu tipli konfranslar keçirilməkdədir.

DevOps-un məşhurluğu son illərdə daha da artaraq əlavə digər OpsDev, WinOps və BizDevOps kimi qollariın yaranmaslna gətirib çıxarmışdlr

Ümumi baxış[redaktə | əsas redaktə]

Venn diagram showing DevOps as the intersection of development (software engineering), operations and quality assurance (QA)

Adətən funksional olaraq şöbələrə və ya qruplara ayrılmış təşkilatlarda demək olar ki, İT əməliyyatları arasında inteqrasiya olmur. Lakin DevOps elə bir proseslər və metodlar çoxluğu ortaya qoyur ki, tətbiqi proqramların yardilması, testi və proqramı təhvil alındıqdan sonra olan əməliyyatlar daima bir biri ilə əlaqəli şəkildə inkişaf etsin.

DevOps alətlər zənciri[redaktə | əsas redaktə]

Illustration showing stages in a DevOps toolchain
Illustration showing stages in a DevOps toolchain

Devops əməkdaşlıq nəticəsində formalaşan bir prosess olduğundan konkret unikal "DevOps aləti" mövcud deyil. Bu daha çox bir neçə alətlərdən ibarət olan (və ya "DevOps toolchain") bir sistemdir. Ümumiyyətlə DevOps alətləri proqram təminatının yaradılması və çatdırılması ilə bağlı aşağıdakl bir və ya bir neçə kateqoriyadan ibarətdir.

  1. Kodlaşdırma — Proqram kodlarının yazılması and nəzərdən keçirilməsi, versiya nəzarəti alətləri, hazır kodların birləşdirilməsi
  2. Kompilyasiya— Davamlı inteqrasiya alətləri
  3. Test — Davamlı test olunma alətləri, hansı ki biznes risklərinin qarşısını alır.
  4. Paket— Artifact repository, application pre-deployment staging
  5. Bitmə— Change management, release approvals, release automation
  6. Konfiqurasiya— Infrastructure configuration and management, Infrastructure as Code tools
  7. İzlənmə— Applications performance monitoring, end–user experience

Though there are many tools available, certain categories of them are essential in the DevOps toolchain setup for use in an organization. Some attempts to identify those basic tools can be found in the existing literature.[2]

Tools such as Docker (containerization), Jenkins (continuous integration), Puppet (Infrastructure as Code) and Vagrant (virtualization platform)—among many others—are often used and frequently referenced in DevOps tooling discussions.[3]

  1. Debois, Patrick. "Agile 2008 Toronto". Just Enough Documented Information. http://www.jedi.be/blog/2008/10/09/agile-2008-toronto-agile-infrastructure-and-operations-presentation/. İstifadə tarixi: 12 March 2015.
  2. Theakanath, Thomas. "DevOps Stack on a Shoestring Budget". devops.com. http://devops.com/2016/02/05/devops-stack-shoestring-budget/.
  3. "Stronger DevOps Culture with Puppet and Vagrant". Puppet Labs. https://puppetlabs.com/blog/stronger-devops-culture-with-puppet-and-vagrant. İstifadə tarixi: 2015-10-22.