skip to Main Content

아코디언으로 CI/CD 구축하기 #3 – git과 아코디언 연동

이전 포스트 (아코디언으로 CI/CD 구축하기 #2 – git과 eclipse로 spring boot 개발 시작)​ 만든 git을 이용해 아코디언과 연동해보도록하겠습니다. spring boot 프로젝트를 container로 서비스하기 위해서는 2가지 (서비스가 되는 jar 파일의 정의, 도커 이미지를 만들기 위한 Dockerfile)가 필요합니다. 1. 서비스가 되는 jar…

Read More

아코디언으로 CI/CD 구축하기 #2 – git과 eclipse로 spring boot 개발 시작

이번 포스트에서는 이전 포스트 (아코디언으로 CI/CD 구축하기 #1 – gitlab 설치 )에서 만든 gitlab을 이용해서 프로젝트를 생성하고 ide와 연동해보도록 하겠습니다. 아코디언을 통해 웹 서비스를 제공하려고 하는데요, 간단하게 Spring boot로 샘플 프로젝트를 만들어 보도록 하겠습니다. Spring boot는 설정이 복잡한 Spring을 좀 더 쉽게 사용할 수 있도록 기본적인 설정을 추가하고…

Read More

아코디언으로 CI/CD 구축하기 #1 – gitlab 설치

개발주기가 빨라지면서 많은 회사들이 CI/CD를 도입하고 있습니다.CI/CD란 Continuous Integration / Continuous Delivery(Deploy)의 약자로 지속적인 통합과 배포를 의미하고 있습니다. 즉 빌드와 테스트, 배포를 자동화 함으로써 Human Error를 줄이고 개발에서 배포까지의 시간을 단축시킬 수 있습니다. CI/CD 환경을 구축하면 많은 장점이 있지만 기존의 개발환경에서 CI/CD를 구축하다보면 생각보다 많은 문제가 발생할 수 있습니다.소스를 관리하기 위해서 svn이나 git과 같은 형상관리 툴을 도입해야하고 빌드 및 테스트를 자동화 하기 위해서는 jenkins, travis-ci와 같은 툴이 필요합니다. 또한 운영서버로 배포하기 위해서 ansible과 같은 도구가 필수적입니다. 이렇듯 여러 툴들이 함께 유기적으로 조합되어야 하기에 CI/CD 도입에 어려움이 있을 수 있지만 아코디언을 이용하면 보다 간단하게 CI/CD 환경을 구축하고 손쉽게 운영할 수 있습니다.이번 포스트에서는 아코디언을 이용해서 CI/CD 환경을 구축하고 간단한 샘플 프로젝트를 배포하는 과정에 대해서 알아보도록 하겠습니다. 우선, 구축할 CI/CD 환경은 다음과 같습니다.1) 형상관리 – git(gitlab)2) 빌드 및 테스트 – jenkins (아코디언에 내장)3) 배포 – kubernetes (아코디언에 내장) CI/CD 환경구축을 위한 첫번째 단계로 형상관리 툴인 gitlab을 설치해보도록 하겠습니다. gitlab은 웹으로 관리 할 수있어 편하다는 큰 장점이 있지만, 다른 git 서버들보다 설치하기가 복잡한 편입니다. 하지만, 아코디언을 이용한다면 매우 손쉽게 설치할 수 있습니다. 그럼 이제부터 아코디언으로 gitlab을 설치해보도록 하겠습니다. (1) 어플리케이션 템플릿 작성gitlab이라는 웹앱을 만들기 위해 템플릿을 작성합니다. 아코디언의 “설정 > 템플릿” 메뉴에 가면 템플릿을 생성할 수 있습니다.  “템플릿 생성”을 클릭하고 다음과 같이 내용을 입력하고 저장합니다. 1.템플릿 이름과 아이콘으로 이용할 이미지를…

Read More

아코디언에서 Wildfly / MySQL 서비스 배포

이번 포스트에서는 가장 보편화된 구조인 WAS/DB를 아코디언을 통해 구성해보도록 하겠습니다. WAS는 JBoss EAP의 커뮤니티 버전인 Wildfly를 배포하고 DB는 MySQL을 사용하여 자바 애플리케이션을 배포하는 방법에 대해 알아보겠습니다. Wildfly란? 와일드 플라이(WildFly, 이전 이름: JBoss)는 자바 기반 오픈 소스 미들웨어입니다. Java EE 스펙을 지원하고  현재 40개 이상의 다양한 프로젝트가 있으며, 커뮤니티에 의해 개발 운영되고 있습니다. 2006년부터는 Redhat에서 인수하여 프로젝트를 운영하고 있으며 Redhat에서는 각종 컴포넌트 보증 및 통합 품질 테스트를 완료되면 JBoss Enterprise로 제공하고 있습니다. 2014년 11월 20일부터는 커뮤니티 JBoss 이름을 와일드 플라이(WildFly)로 변경하여서 사용하고 있습니다. MySQL 란? MySQL은 가장 많이 쓰이는 오픈 소스 관계형 데이터베이스 관리 시스템(RDBMS)입니다. 다중 스레드, 다중 사용자를 지원하며, 구조 질의어 형식의 데이터베이스 관리 시스템입니다.  MySQL 배포하기 먼저 [앱 메뉴]에서 mysql을 선택합니다. mysql은 기본 제공하고 있지 않으나 [설정 – 템플릿] 기능을 통해 원하는 Docker 이미지를 등록할 수 있습니다.  이름을 입력하고 [추가 옵션]을 체크하여 MySQL에 필요한 환경 변수를 추가합니다. MySQL의 패스워드와 데이터베이스 이름을 입력합니다. MySQL을 설정하기 위한 환경 변수 이름은 이미 MySQL docker libary (https://hub.docker.com/_/mysql)에 지정되어있습니다. MYSQL_ROOT_PASSWORD와 MYSQL_DATABASE를 입력합니다.  모든 정보 값을 입력하고 [생성] 버튼을 클릭하면 [앱] 화면에 MySQL이 배포된 것을 볼 수 있습니다. Wildfly 배포하기 다음은 Wildfly를 배포해보겠습니다. 아코디언에서는 Tomcat과 Wildfly를 기본으로 제공하며 기술 지원하고 있습니다. 아코디언에서 제공하는 Wildfly를 선택하고 [다음] 버튼을 클릭합니다. 먼저 [이름]을 입력하고 애플리케이션은 Java Spring Framework – petclinic(https://github.com/mantech-accordion/spring-framework-petclinic) 을 배포해보도록 하겠습니다. [소스 타입]은 Git으로 선택하고 [Repository URL]을 입력합니다. [Git Reference]를 입력하지 않으면 기본값 master입니다. [라우터 설정]을 체크하고 [Host name]을 입력합니다.여기서 주의해야…

Read More

Kubernetes와 JMeter를 사용한 부하테스트

최근 Docker 기반으로 애플리케이션을 개발했다면 애플리케이션 부하테스트 또한 Docker를 사용하여 쉽게 진행할 수 있습니다. Apache JMeter는 로드 테스트와 성능 측정을 위해 설계된 오픈 소스 소프트웨어 Java 애플리케이션입니다. 일반적으로 JMeter 서버 1대를 통해 부하테스트를 진행할 수 있지만 보다 효과적인 테스트를 위해…

Read More

아코디언을 활용한 어플리케이션 배포#git

4차 산업혁명 시대를 맞이하며 클라우드가 재조명 받고있습니다.IaaS, PaaS, SaaS가 계속 언급되고 있고 Google의 Kubernetes 가장 화두에 오르고 있습니다.Kubernetes는 어플리케이션 컨테이너의 배포, Auto Scale, Docker 컨테이너 오케스트레이션 자동화 오픈소스입니다. 아코디언은 PaaS 플랫폼으로 CI/CD 자동화 및 APM 기능을 제공하고 있습니다. 또한, Kubernetes를 사용하여…

Read More

Draft를 사용하여 Kubernetes에 애플리케이션 배포하기

Kubernetes에 사용자가 만든 컨테이너를 쉽게 배포해 주는 Helm Chart라는 툴이 있습니다. (Helm 참고 사이트 : https://helm.sh/) Helm Chart는 사용자가 정의한 kubernetes 배포 스크립트를 Tiller 서버를 통해 쉽게 배포하는데 목적이 있습니다. 오늘은 Draft라는 툴을 사용하여 kubernetes에 배포하는 방법을 소개해 드리도록 하겠습니다.…

Read More

도커와 컨테이너 제대로 알기

도커(docker) 컨테이너 기술이 흐름으로 받아지면서 도커 기술에 대한 관심이 갈수록 커지고 있다. 도커에 대해 많이 들어봤으나 모르고 지나칠 수 있는 부분과 혼동하기 쉬운 부분에 대해 정리해보도록 하겠다.   혼동하기 쉬운 용어   가장 혼동하기 쉬운 오류는 “컨테이너” 라는 용어와 “도커” 를 같은 개념으로 생각하는…

Read More

에이텍 (제조기업)

에이텍, 컨테이너 통합 관리 솔루션 아코디언 도입 <기업소개> 에이텍은 LCD 응용 제품 제조업체로, 첨단 TFT LCD를 이용한 공공 ICT분야의 지속적인 기술개발과 끊임없는 신제품 개발로 국내외 시장에서 높은 기술력과 고품질의 제품력을 인정받고 있습니다. 또한, 기존 PC 크기를 획기적으로 줄이며 궁극의 보안…

Read More

현대오일뱅크

현대오일뱅크, 컨테이너 통합 관리 솔루션 아코디언 도입 2019년, 현대오일뱅크는 컨테이너의 효율적 관리를 위해 맨텍 아코디언을 도입하였습니다. 현대오일뱅크는 1964년 설립을 시작으로 ‘Good Service Bank’라는 슬로건과 함께 차별화된 고객 서비스를 제공하는 국내 최초의 민간 정유 회사입니다. 대한민국 에너지 산업의 주역으로 경제 발전을…

Read More