DevOps란? (데브옵스의 이해,등장)
·
IT/IT 기초 지식
DevOps란 개발과 운영 팀간의 지속적인 커뮤니케이션, 협업, 통합을 의미한다. DevOps는 왜 등장하게 된 것일까? 예전에는 역할별로 팀이 나뉘어 졌다. 하드웨어를 관리하는 팀은 운영팀(Ops), 소프트웨어를 개발하는 팀은 개발팀(Dev)라 불렀다. 개발팀 : 애플리케이션 개발하여 운영팀에게 전달한다. 인프라운영팀 : 애플리케이션을 어떻게 배포하고 운영할 것인지 결정한다. 서버를 랙에 설치하거나 네트워크 케이블을 설정하는 등, 하드웨어를 물리적으로 설치하는 일을 수작업으로 하였다. 오늘날에는 조직에서 데이터센터를 직접 운영하는 대신에 AWS, Azure, GCP 같은 클라우드 서비스를 사용하기 시작했다. 수많은 운영팀들이 하드웨어에 많은 돈과 노력을 투자하는 대신 Chef(셰프), Puppet(퍼핏..
Terraform의 provisioner(프로비저너)란?
·
DevOps/Terraform
Provisioner 테라폼 프로비저너(provisioner)는 테라폼을 실행할 때 부트스트랩, 구성 관리 또는 정리 작업을 수행하기 위해 로컬 시스템이나 원격 시스템에서 스크립트를 실행하는데 사용된다. 프로비저너에는 로컬 시스템에서 스크립트를 실행하는 local-exec , 원격 리소스에서 스크립트를 실행하는 remote-exec, 원격 리소스에서 셰프 클라이언트를 실행하는 chef 및 원격 리소스로 파일을 복사하는 file 등이 있다. 프로비저너는 terraform apply명령에 대해 생성할 때만 실행되고 그 뒤에 업데이트되거나 하지 않는다. 그래서 provisioner가 실패하면 리소스가 잘못되었다고 판단해 다음 terraform apply할 때 제거하거나 다시 생성한다. provisioner에서..
Terraform 이란 (프로비저닝 도구와 코드형 인프라)?
·
DevOps/Terraform
코드형 인프라 코드형 인프라란 코드를 작성 및 실행하여 인프라를 생성, 배포, 수정, 정리하는 것을 말한다. 이는 서버를 물리적으로 설치하는 등의 하드웨어 측면을 포함하여 운영의 모든 측면을 소프트웨어적으로 생각하는 중대한 사고 전환을 보여준다. 실제로 데브옵스의 핵심은 서버, 데이터베이스, 네트워크, 로그 파일, 애플리케이션 구성, 문서, 자동화된 테스트, 배포 프로세스 등 거의 모든 것을 코드로 관리할 수 있다는 것이다. 코드형 인프라 도구에는 다섯 사지 범주가 있다. 애드혹 스크립트 //배시쉘 스트립트 구성 관리 도구 //앤서블 서버 템플릿 도구 // Docker , Packer, Vagrant 오케스트레이션 도구 // Docker , Packer, Vagrant 프로비전 도구 // Terrafor..