NHN Cloud (시스템엔지니어)
2021.07 ~ 2023.03
클라우드 IaaS 인프라와 플랫폼을 제공하는 클라우드 서비스 회사시스템엔지니어로서 IDC 기반 인프라 서비스 배포코드(IaC) 개발 및 운영에 필요한 도구 개발을 담당, 인프라 조직 생산성 향상을 위한 여러 프로젝트 진행
배포 후 기능 테스트 자동화
- IaaS Service 배포 후 운영팀에서의 기능테스트 자동화
- 사람이 관여하여 30분 넘게 걸리는 작업을 사내메신저에 연동하여 원클릭 형태로 자동화
- 배포 업무 시간 단축에 기여, 배포 프로세스에 자동화 테스트 실행 단계를 정식으로 도입
- 배포 프로세스 뿐만 아니라 운영팀의 모든 인프라 변경 작업 프로세스에도 정식으로 도입
- [외부문서링크] Terraform, Jenkins를 활용한 배포 후 테스트 자동화 상세 내용
배포 업무 개선을 위한 스크립트 및 웹 viewer 도입
- 사내 ubuntu repo에 업로드된 debian 패키지를 운영 서버에 설치하는 방식의 배포 업무
- 이를 위해서 ansible과 같은 saltstack이라는 configuration tool을 사용하여 코드로 배포 업무 진행
- 이상적으로는 배포 코드로 인프라를 일괄적으로 변경하는 것이지만, 현실에서는 운영 상 이슈로 몇몇 서버의 경우 형상이 조금 다를 수 있고 이를 무시하고 변경하게 되면 장애로 이어지는 현실
- 이에 따라서 배포 작업시에 형상이 다른 서버들을 쉽게 찾아내는 것이 필요했고, 이를 위한 알고리즘 개발 및 스크립트를 작성
- 알고리즘을 적용한 결과를 웹 화면에서 볼 수 있도록 간단한 웹 viewer 개발 및 도입하여 배포 시간을 30%이상 단축
- [외부문서링크] 배포 작업 개선을 위한 스크립트 작성 상세 내용
운영도구 개발 인프라 개선
- 운영도구 운영서버(cent6) EOL에 따른 운영도구 서버 이전 작업담당
- 웹 애플리케이션 형태의 운영도구가 서버에 프로세스로 운영되고 있었고 이를 이전하는 과정에 많은 시간 소요 (python버전, 가상환경, 의존성)
- 계속해서 프로세스 형태로 운영도구를 유지하면 다음에 또 OS EOL시에 이전하는 작업 필요
- 이를 위해서 컨테이너화 제안 및 일부 환경 컨테이너화 작업 진행
- Dockerfile 작성 및 필요한 환경변수 분리, k8s로의 마이그레이션 작업 수행
- 표준 Dockerfile 작성 및 jenkins, kustomize를 활용한 CI/CD 파이프라인 구축
사내 인프라 제공 도구 개발 및 유지보수
- 사내 개발자, 시스템엔지니어에게 온프레미스 기반의 인프라 자원 제공하는 운영도구 담당
- VMWare 사의 상용 vSphere SDK API 에서 오픈소스인 oVirt SDK API로의 마이그레이션 작업 진행
- VM 생성 작업에 대한 비동기 처리 (Redis Queue 활용), 재시도 로직, DLQ 처리 등 추가 개발
- Django, MySQL 기반의 HTTP API 개발
- Django Template, jQuery 기반의 프론트 개발
- [외부문서링크] 사내 인프라 제공 도구 상세 내용