본문 바로가기
반응형

DevOps76

AWS SES (Simple Email Service) Spring Boot 프로젝트에서 사용하기 안녕하세요? 이번시간에는 AWS의 SES를 Java로 사용해보는 과정을 진행해보려 합니다. 개인 프로젝트 중 email 발송기능이 필요했는데, 생각보다 Java로 AWS SES를 사용하는 방법이 잘 공유되어 있지 않는것 같아서 진행과 동시에 정리하게 되었습니다. 저와 같은 고민을 하시는 분들에게 도움이 되길 바랍니다. 0. 이메일 인증받기 기본적으로 AWS에 가입되어있다는 가정으로, 회원가입은 생략하고 진행하겠습니다. AWS 웹페이지로 접속하여 서비스 항목에서 SES를 검색합니다. SES 관리 페이지에 접속하면 아래와 같은 화면이 등장합니다. 여기서 좌측 Email Addresses를 클릭하면 우측에 이메일 인증 관리 페이지가 등장합니다.좌측 상단의 Verify a New Email Address를 클릭.. 2017. 11. 13.
맥북에서 오라클 사용하기 (docker + intelliJ) 보통 데이터베이스 관련 스터디나 학원의 경우 대부분이 오라클 데이터베이스를 기준으로 합니다. 하지만 저처럼 맥북을 사용하시는 분들은 오라클을 사용할 수 없어 VM머신등을 사용하는등 어려움이 많습니다. (저같은 경우 패스트캠퍼스 SQL 튜닝 캠프에서 오라클 데이터베이스를 기준으로 하여 어쩔수없이 오라클을 사용하게 되었습니다 ㅠㅠ) 그럼 이제 진행하겠습니다.0. 도커 설치도커를 기본적으로 알고 계시면 전혀 문제 될게 없지만, 모르신다 하여도 요즘은 도커 설치가 OS별로 아주 쉽게 되어있어 금방 하실수 있습니다. Docker 사이트에 접속하여 Docker For Mac 설치파일을 받아 설치하시면 됩니다. 1. 도커 컨테이너 생성 및 실행 설치가 끝나시면 터미널을 열어 컨테이너를 받아야합니다. 오라클 11g 이.. 2017. 8. 6.
docker를 이용한 CI 구축 연습하기 (젠킨스, 슬랙) 안녕하세요? 이번 시간엔 도커로 CI 구축 연습하기 (젠킨스, slack) 예제를 진행해보려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 팀내에서 젠킨스로 빌드/배포를 관리하고 있습니다. 여태 CI를 경험해본적이 없어 연습을 해봐야겠다고 생각을 하였습니다. 개인 서버가 별도로 없어서 어디에 구축을 해야하나 고민하던 중, 도커가 생각나서 도커에 구축하여 같이 연습을 하게 되었습니다. 도커와 젠킨스 초보이다보니 잘못된 내용이 있을 수 있습니다. 발견하시면 언제든 댓글 혹은 풀리퀘스트 부탁드리겠습니다.젠킨스 & Github 연동젠.. 2017. 4. 9.
Nginx Cache 문제 해결 시리즈 안녕하세요? 이번 시간에는 제가 최근에 zum.com을 운영하면서 실수했었던 내용들 중, Nginx에 관련된 내용들을 정리하였습니다. (Nginx외에도 정말 많은 실수를 했지만 이번엔 Nginx만 하였습니다^^;) 본문 시작전에 간단히 zum.com의 서버구조를 소개드리면, (아주 간단하게 그린 줌닷컴 구조) L4를 Load Balancer로 사용하여 28대의 서버에 균등하게 요청을 분배하고 있습니다. 이때 각 서버는 Nginx와 Tomcat을 함께 가지고 있으며, Nginx를 리버스 프록시 서버로 사용하고 있습니다. 리버스 프록시 서버란? 일정 수준 이상의 규모를 가진 웹 서비스에서는 웹 서버(Nginx)와 웹 어플리케이션 서버 (Tomcat)를 분리하여 웹 서버를 프록시 서버로 두어 사용자의 요청을 .. 2016. 11. 8.
원격서버 접속해서 root 권한까지 받기 자동화 이번 시간에 진행할 내용은 원격서버로 ssh 접속시 root권한까지 받는 것을 자동화 하려고 한다. 예를 들면 이런 것이다. 리눅스 PC에서 (1) 원격서버에 내 계정 (ssh jojoldu@~~)으로 접근 (2) jojoldu 계정에 대한 비밀번호 입력 및 접속 (3) jojoldu 계정에서 root 계정으로 전환 (su -) (4) root 계정 비밀번호 입력 이건 사실 굳이 스크립트로 작성 안해도 될 정도의 작은 작업량이긴 한데, 그래도 가끔 root 권한이 필요할 때 비밀번호 입력이 귀찮기도 하고, 이것저것 커맨드 날리다보면 history가 잘 관리 안되서 history를 뒤져야 하는 일이 생겨버려서 그냥 스크립트를 작성하게 되었다. 작업 내용은 간단하다. (1) ~ (3) 내용까지를 스크립트로 .. 2016. 10. 25.
망 분리된 상태에서 build 파일 주고 받기 (sftp, sshpass, jq) 이전에 포스팅했던 내용의 확장팩을 진행하려고 한다. 지난 번에는 Gradle을 이용하여 build시 공유서버로 war 파일을 전송하는 것까지가 진행되었었다. 근데 이것만으로 불편함이 크게 감소하진 않았다. 왜냐하면 결국 war의 목적지까지 가야할 길은 많이 남았기 때문이다. 그래서 오늘은 이전 시간에 이어 쉘 스크립트로 추가적인 자동화 작업을 진행하려고 한다. 아래 그림은 대략적인 배포에 필요한 과정을 그린 것이다. (앞에서 가정한 상황을 도식화하였다.) 조건은 아래와 같다고 가정해보자. 인터넷 PC를 제외하고서는 전부 인터넷은 되지 않는다. CI를 구축할수는 없다. 각각의 서버들은 SFTP 프로토콜만 오픈되어 있다. 인터넷 PC와 내부용 PC만 스크립트 작성/실행 권한이 있으며, 공유서버에서는 어떠한 .. 2016. 10. 19.

728x90