본문 바로가기

DevOps/Cloud14

[NCLOUD] Spring boot(gradle) & Logback SDK로 Effective Log Search & Analytics 설정하기 이번에 NCUC 4회차 밋업에서 발표자로 참여하게 되었다! 커뮤니티 자체가 처음인데 발표자로 서게 되니 정말... 부담스럽고.. 어려웠지만 다들 좋은 말씀해주셔서 너무 감사하고 유익한 시간이었다ㅎㅎ 로깅에 대해서 전혀 몰라서 이번 기회에 로깅 서비스 사용 후기를 주제로 잡았는데, 아무래도 로깅을 어떻게 설정하는지에 대해 배경 지식이 전혀 없다보니 막막함+반복되는 삽질로 결국 어느정도의 간단한 세팅을 마칠 수 있었다ㅠㅠ 나와 비슷한 상황인 초보자에게 어느정도 가이드가 될 수 있도록 설정을 공유해보고자 한다 😊 사용 기술 spring boot(gradle), Java 11 Logback Effective Log Search & Analytics 🔽 동작 방식을 간단하게 설명해보면.... 1. spring b.. 2023. 12. 22.
Event Driven Architecture는 왜 필요할까? 졸작 미팅을 진행하는 도중에 종인님께서 이벤트 드리븐 디자인에 대해 언급하셨다. 다른 용어들은 그래도 어디선가 들어봤던 개념들이었는데 이 용어는 정말 생소했다. 종인님이 이 내용은 꼭 공부해보라고 하셔서 팀원들과 같이 공유해보고자 블로깅하게 되었따🙌 예전에도 AWS컨퍼런스를 들은 경험이 여러 번 있었는데 항상 도움을 많이 받았기 때문에 이번에도 AWS강연(AWS Summit Online Korea 2020)의 도움을 받아 학습하였다. (믿보AWS) 인용구문 안의 내용은 강연자님이 말씀하시는 내용을 그대로 적어놓은 것이니 일부 내용 중복이 있을 수 있다. 일단 따라 적고 내가 이해한대로 다시 적는 방식으로 진행하는데, 혹시나 내가 이해한 내용에 오류가 있을 수 있어 원본 내용도 같이 첨부하기 때문💁‍♀️ .. 2021. 12. 28.
nohup 설정하기 클라우드 서버를 구매하는 이유는 여러가지가 있겠지만 항상 컴퓨터를 켜놓지 않더라도 서버를 사용하기 위함이 대부분 가장 필요한 부분일 것이다. 그러나 아직까지 우리가 세팅한 환경에서는 git bash를 중지하면 서버도 동시에 꺼져버린다. nohup python app.py & 자신이 실행하려는 파일의 실행코드 앞에 nohup을 붙이고 끝에 &을 붙이게 되면 git bash창을 끄더라도 계속 서버는 사용가능한 것을 확인할 수 있다. 종료하는 방법은 아래와 같다. # 아래 명령어로 미리 pid 값(프로세스 번호)을 본다 ps -ef | grep 'app.py' # ps -ef : 현재 컴퓨터에서 돌아가고 있는 프로세스 확인 # grep 'app.py' : app.py가 포함된 프로세스만 골라서 보여줌 다음 명.. 2021. 6. 30.
[Linux] 포트포워딩 sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 5000 위와 같은 명령어를 실행하게 되면 80포트를 5000포트로 포워딩시켜주는 기능을 한다. 이것을 포트포워딩이라고 부른다. (리눅스 기본 제공) 이전에 우리가 EC2 인스턴스의 보안 그룹에서 규칙편집을 해줄 때 80포트를 열어두었는데, 그 80포트는 http의 포트번호를 말한다. http 요청에서는 80포트가 기본이기 때문에, 굳이 :80을 붙이지 않아도 자동으로 연결된다. 즉, http가 붙은 경우 :80는 생략이 가능하다. (예를 들어 우리가 네이버를 접속하게 되면 네이버의 URL주소를 확인할 수 있다. 네이버의 URL주소는 https://www.n.. 2021. 6. 30.
DB - 서버 연결 및 웹프로젝트 업로드 (Robo3T, FileZilla) Robo3T를 이용한 DB와 서버 연결 1. robo3T를 첫 실행하면 다음과 같은 창이 뜸 -> 새로 DB만들어줄거니까 create누르기 2. name에는 원하는 DB명, Address에는 본인 퍼블릭ip주소 입력 3. Authentication 들어가서 Perform authentication 체크, user name, password란 입력, 하단에 Test버튼 누르기 4. Test누르면 지금까지 입력한 정보를 확인할 수 있음 5. 저장하고 connect하면 서버와 DB가 연결됨 FileZilla에 파일 업로드 1. 업로드할 python파일에 아래 명령어 추가 client = MongoClient('mongodb://test:test@localhost', 27017) # client = MongoC.. 2021. 6. 30.
git bash에서 EC2접속 및 서버 세팅하기(Window) Git bash에서 EC2 접속 1. git bash에 접속해서 아래의 명령어로 EC2 접속 $ ssh -i /c/Users/sun990520/Desktop/sparta/sparta.pem ubuntu@3.35.207.244 $ ssh -i 키페어경로 ubuntu@퍼블릭 IPv4 주소 키페어경로는 자기 aws키페어를 드래그해서 붙여넣으면 됨 2. FileZilla에서 파일 업로드 FileZilla : 파일을 업로드, 다운로드 시켜주는 프로그램 (1) 파일질라에 접속하면 저 노란색 형광펜으로 칠해놓은 부분('사이트관리자 열기')을 클릭 (2) New site 눌러서 이름 설정하고 (3) 프로토콜을 SFTP로 설정 (4) 호스트에 EC2 인스턴스 퍼블릭 IP주소 입력 / 포트번호는 22 (5) 로그온 유형을.. 2021. 6. 30.
[AWS] EC2, RDS를 이용한 데이터베이스 작업 저번 포스팅에서 예고했던 것 처럼 이번 포스팅에서는 파라미터값을 작성할 수 있도록 HTML코드를 입력한 PHP파일을 생성하고 DB에 데이터를 넘겨주는 실습을 해볼 것이다. 좀 더 구체적으로 말하자면, 1. RDS에 웹페이지에서 입력받을 EC2데이터의 타입에 맞도록 테이블을 생성 2. PHP파일을 DB에 연결하기 위해 Mysql 연동 라이브러리 설치 3. PHP파일을 생성하여 웹페이지로 데이터를 입력하고 데이터가 정상적으로 입력되었는지 DB에서 확인 하는 작업을 해볼 것이다🙄 [실습 참고 내용] 솔루션 : EC2 - ubuntu / RDS - MySQL 아키텍처 : 웹서버 / DB서버 현재 RDS에는 root유저만 생성되어있다. 그러나 root유저는 meta data로서 작업을 피하는 것이 좋기 때문에 새.. 2021. 6. 8.
[AWS] PHP설치, RDS 인스턴스 생성 이전 실습에서는 하나의 EC2에 OS(Ubuntu), 웹 서버(Apache), DB서버(Mysql)까지 설치해봤다. 그러나 사실상 회사에서는 하나의 서버에서 여러가지를 한꺼번에 관리하는 것이 아니라 각각의 기능에 따라 서버를 분리해두게 된다. 이를 토대로 이번 실습에서는 DB서버를 새로 만들어주는 작업을 해볼 것이다. DB는 AWS의 RDS를 사용한다. RDS 인스턴스를 생성하여 저번 포스팅에서도 사용한 Toad for MySQL로 접속해보고, DB에 접근하기 위해 웹페이지를 PHP로 작성해볼 것이다. 이번 포스팅은 기존에 만들어 둔 EC2 우분투 서버에 PHP를 설치하고 RDS를 생성하여 Toad에 연결해보는 것까지 하기로 한다. (PHP로 DB에 데이터를 넣는 작업은 다음 포스팅에서! 🙋‍♀️) PH.. 2021. 6. 8.
[Cloud]네트워크 기초 네트워크 기초 용어 1. 시스템 구분 노드 : 인터넷에 연결된 시스템의 가장 일반적인 용어 호스트 : 컴퓨팅 기능이 있는 시스템 클라이언트 : 서비스를 요청하는 시스템 서버 : 서비스를 제공하는 시스템 2. 네트워크 주소 네트워크 상에 존재하는 노드를 고유하게 식별 3. 주소 종류 MAC주소 : Link계층에서 사용 - LAN카드에 내장 비유하자면 물류센터 주소, 우체국 간에 사용하는 주소 IP주소 : 네트워크 계층에서 사용 비유하자면 집 주소 Port 번호 : 전송 계층에서 사용 비유하자면 방 번호, 수령인 특정 기능을 수행하는 서비스, 패키지의 경우에는 특정 포트를 이용하는 것이 규약 되어있음 (mysql : 3306, ubuntu : 80, SSH : 22 ... 등등) 위와 같이 이미 쓰고 있는 .. 2021. 5. 26.
[AWS] EC2에 MySQL 설치하기 이전 글에서 AWS EC2를 통해 우분투를 서버로 설치하였고, 우분투에 웹 서버를 구축하였다. 이번 실습에서는 MySQL를 설치하고 모든 권한을 가진 유저를 생성하여 외부에서도 DB에 접근할 수 있도록 작업을 해볼 것이다. 이번 실습에서 새롭게 사용하는 툴은 'Toad for MySQL'이다. teraterm의 터미널에서는 sql작업을 하기가 어렵기 때문! 목차 1. EC2에 mySQL 설치하기 2. mysql DB에 유저 생성하기 3. Toad로 mysql 접속 [리눅스 명령어 사용 tip] * tab : 접근하려는 경로에 겹치는 문자가 없다면 추측가능한 파일명/폴더명을 찾아서 자동완성해준다. * 터미널에 복붙하고 싶은 경우 내용을 복사해서 터미널에 마우스 오른쪽 클릭을 하면 된다. [실습에서 사용하는.. 2021. 5. 25.
[AWS] 우분투 리눅스 기본 명령어 이전 글에서 AWS EC2 인스턴스를 tera term이라는 에뮬레이터 프로그램을 사용하여 웹서버를 생성해보고 기본적인 우분투 기본 명령어를 알아보았다. 이번에는 추가적으로 자주 사용하는 기본 명령어에 대해 포스팅해보겠다. 목차 1. 절대경로와 상대경로의 차이 2. chmod 명령어 사용법 3. cat, grep, file, ps, adduser, chown 명령어 su와 sudo 명령어 차이 본격적인 내용으로 들어가기 전에 내가 저번 시간까지 모르고 있던 점이 있었는데, 바로 su와 sudo 명령어의 차이이다. 사실 둘이 같은 기능이라고 생각하고 있었는데 교수님께서 둘의 차이에 대해 설명해주셨다. sudo는 현재 유저에서 일시적으로 super user의 권한을 빌릴 때 사용하며, su는 아예 super.. 2021. 5. 4.
[AWS] teraterm을 이용하여 EC2 인스턴스 사용 저번 포스팅은 EC2인스턴스 생성을 다뤄보았다. 이번 실습은 우리가 생성한 EC2인스턴스의 OS인 우분투 환경에서 기본적인 명령어와 웹서버를 설치하는 것까지 실습을 진행해보고자 한다. 목차 1. teraterm 접속방법 2. 우분투 리눅스 디렉토리 구조 이해 3. 우분투 리눅스 기본 명령어 4. 우분투에서 웹서버 설치 teraterm 접속방법 teraterm 설치 링크 tera-term.softonic.kr/ Tera Term 개인 컴퓨터 용 오픈 소스 에뮬레이션 소프트웨어 tera-term.softonic.kr teraterm은 오픈 소스에뮬레이터프로그램, 터미널 또는 콘솔 프로그램이다. 주 기능은 사용자와 컴퓨터의 인터페이스 역할을 하며 다양한 용도로 사용할 수 있다. 이번 실습에서는 teraterm.. 2021. 4. 26.
[AWS] EC2 인스턴스 생성 항상 블로그는 내 공부 기록용이었는데 '클라우드서비스관리' 과목에서 블로깅하는 것이 과제가 되어서 비자발적 목적으로 포스팅을 하려고 한다..ㅎㅎ 그래서 다른 글들과는 말투가 다를 수 있다! 목차 1. AWS Educate 입장하기 2. EC2 이해하기 3. EC2 인스턴스 생성하기 AWS Educate 입장하기 aws.amazon.com/ko/education/awseducate/?nc2=h_ql_exm_edu AWS Educate 클라우드 진로 클라우드 진로 클라우드 진로를 통해 업계 선두의 클라우드 커리어에 요구되는 최고의 클라우드 기술에 대해 알아보세요. 기계 학습 과학자에서 애플리케이션 개발자에 이르기 aws.amazon.com 일반적으로는 AWS를 사용하는 경우가 많을 것이다. 그러나 수업에서 .. 2021. 4. 14.
[클라우드] 공부내용 기록 github.com/ty990520/cloudService ty990520/cloudService 클라우드서비스에 대해 공부한 내용을 정리합니다. Contribute to ty990520/cloudService development by creating an account on GitHub. github.com 2021. 3. 21.