IT/IT 이야기

[용어정리] 프로비저닝과 CI / CD

오달달씨 2022. 12. 9. 18:53
728x90
반응형

프로비저닝 (Provisioning) 

프로비저닝은 IT 인프라를 설정하는 프로세스로 데이터와 리소스에 대한 엑세스를 관리하는 데 필요한 단계를 지칭한다.

사용자의 요구에 맞게 시스템 자원을 할당, 배치, 배포해 두었다가 필요 시 시스템을 즉시 사용할 수 있는 상태로 미리 준비해두는 것

 

서버 프로비저닝

필요한 리소스를 기반으로 네트워크에서 사용될 서버를 설정하는 프로세스로 새로운 시스템을 생성한 후 가동상태로 만드는 데 필요한 모든 작업은 물론, 해당 시스템에 대해 원하는 상태를 정의하는 작업.

새로운 시스템을 생성한 후 가동 상태로 만드는 데 필요한 모든 작업은 물론, 해당 시스템에 대해 원하는 상태를 정의하는 작업.

데이터센터에 물리적 하드웨어 설치, 소프트웨어 설치 및 설정, 운영 체제 및 애플리케이션 포함, 미들웨어와 네트워크 및 스토리지 연결로 구성

 

사용자 프로비저닝

액세스 권한과 인증 권한 모니터링하는 Identity관리 유형

직원, 공급업체, 계약자와 같은 사용자 오브젝트와 사용자 속성을 통해 정의됨. 제공되는 서비스는 이메일, 데이터베이스 액세스, 네트워크 액세스 등이 있다.

 

네트워크 프로비저닝

사용자, 서버, 컨테이너, IoT 기기가 액세스할 네트워크를 설정하는 작업으로 구성될 수 있다. 

네으워크 프로비저닝이란 필요한 장비와 배선을 비롯해 사용자에게 통신 서비스를 제공하는 것을 지칭한다.


CI(Continuous Integration)

CI란 지속적 통합이라는 뜻으로 빌드/테스트 자동화 과정을 말한다. CI는 개발을 진행하면서 프로젝트의 품질(Quality)를 지속적으로 관리할 수 있도록 하는 것을 말하며, 여러 명이 하나의 코드에 대해서 수정을 진행해도 끊김 없이 통합적으로 관리하는 것을 의미한다.

 CI를 성공적으로 구현했을 때, 우리는 프로젝트에 대한 새로 코드 변경 사항이 정기적으로 빌드 및 테스트할 수 있고, 공유 레포지토리를 통항해 여러 개발자들이 동시에 프로젝트 개발을 충돌없이 진행할 수 있다.

 

CI의 순서는?

1. 개발자가 구현한 코드를 기준 코드와 병합한다.

2. 병합된 코드가 올바르게 동작하고 빌드되는지 검증한다.

3. 테스트 결과 문제가 있다면 수정하고 다시 1로 돌아간다. 문제가 없다면 배포를 진행한다.

 

CD(Continuous Deployment, Continuous Delivery)

 CD는 지속적 배포 / 지속적인 서비스 제공 라는 뜻으로 배포 자동화 과정을 말한다. CD는 소프트웨어가 항상 신뢰 가능한 수준에서 배포될 수 있도록 관리하자는 개념이다.

 CD를 성공적으로 구현했을 때, 코드 변경이 파이프라인의 이전 단계를 모두 성공적으로 통과하면 수동 개입 없이 변경 사항이 자동으로 배포할 수 있다. 또한 간단한 코드 변경이 정기적으로 마스터에 커밋되고, 자동화된 비드 및 테스트 프로세스를 거치며 다양한 사전 프로덕현 환경으로 승격되며, 문제가 발견되지 않으면 최종적으로 배포된다.

 

CI/CD 관련 참고한 사이트

https://tecoble.techcourse.co.kr/post/2021-08-14-ci-cd/

 

CI/CD가 뭔가요? - 이론편

tecoble.techcourse.co.kr

https://seosh817.tistory.com/104

 

[CI/CD] CI/CD란? - 지속적 통합(Continuous Integration)/지속적 배포(Continuous Deployment) 기본개념

매번 개발자가 코드를 수정하고 빌드와 테스트를 하고 배포까지 한다면 상당히 많은 시간이 소요됩니다. 하지만 git에 코드를 올리는 것만으로도 누군가가 빌드와 테스트, 배포까지 해준다면,

seosh817.tistory.com

 

728x90
반응형