전체 글 (6) 썸네일형 리스트형 Nginx + OpenSSL 구성 Ubuntu에 Nginx 설치 후 OpenSSL을 통해 인증서를 설치하여 SSL을 제공하는 웹 서버를 구성 사내 테스트를 위한 구축을 하며 정리한 내용이라 사설 인증서를 사용 Nginx 설치 sudo apt install nginx 인증서 생성 개인 키와 인증서 서명 요청 파일 생성 (인증서 생성 명령어는 /etc/nginx/ssl 폴더 밑에서 진행) openssl req -new -newkey rsa:2048 -nodes -keyout test.key -out test.csr (명령어 실행 후 정보를 입력하는 구문이 나오는데 테스트를 위한 사설 인증서 이므로 아무 내용 입력) SSL 인증서 생성 openssl x509 -req -days 365 -in test.csr -signkey test.key -.. Django-Rest-Framework + Gunicorn 설치 pip install gunicorn 간편 실행 (괄호 안의 wsgi는 각자 경로에 맡게.) gunicorn [main.wsgi.debug]:application --workers 4 나중을 고려하여 스크립트로 적용 DJANGODIR=../../core NUM_WORKERS=4 DJANGO_SETTINGS_MODULE=main.settings.debug DJANGO_WSGI_MODULE=main.wsgi.debug cd $DJANGODIR export DJANGO_SETTINGS_MODULE=$DJANGO_SETTINGS_MODULE exec gunicorn ${DJANGO_WSGI_MODULE}:application \ --workers $NUM_WORKERS \ Docker-compose를 사용하여 Elastic Stack 7.2를 구축하고 FileBeat를 사용하여 모니터링 하기 - 2 https://youngmany.tistory.com/7 이전 포스팅에서 ELK 설치 후 웹 브라우저 접근까지 완료하였습니다. 이번 포스팅에서는 Remote 장비에 Filebeat를 설치하여 로그를 수집해보겠습니다. 구조 위 그림과 같이 Ovirt Cluster로 구성된 각 노드에 Filebeat를 설치하여 로그를 수집해보겠습니다. FileBeat 설치 제가 FileBeats를 설치하는 OS는 CentOS 7.X이며, Filebeat 버전은 이전 포스팅에서 설치한 ELK Stack과 버전을 맞춰 설치하겠습니다. 저는 아래의 공식 사이트에서 RPM으로 설치하였습니다. https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-installation.h.. Docker-compose를 사용하여 Elastic Stack 7.2를 구축하고 FileBeat를 사용하여 모니터링 하기 - 1 저희 사내에서는 ovirt를 사용하여 vm을 관리 및 할당하고 있습니다. 며칠 전 ovirt 관리자분이 클러스터 특정 노드에 문제가 발생하여 해당 원인을 잡는데 고생을 하셨다는 말씀을 듣고 vm을 제공받는 입장에서 ELK를 구축해드리고 싶어 직접 구축해드렸습니다. 준비물 ELK를 설치할 장비 제가 ELK를 설치한 OS는 아래와 같습니다. Ubuntu 16.04 / 8 core / 8GB Memory Filebeat를 설치할 모니터링 대상들 저는 아래와 같은 대상을 모니터링하였습니다 1 cluster (3 node) : ovirt가 할당하는 vm이 동작되는 cluster입니다. Docker, Docker-compose 설치 우선 ELK를 설치할 장비에 Docker와 Docker-compose를 설치해줍니다.. HTTP 415 Client Error(Unsupported Media Type) 개발 도중 발생한 Unsupported Media Type Error 해결 방법을 정리하였습니다 발생 과정 및 해결 방법 저는 현재 아래와 같은 구조의 서비스를 개발하고 있습니다. [그림 1] 개발 구조의 HTTP Request를 Core API Server가 받으면.. Other API Server로 특정 요청을 처리하고, 해당 요청이 정상 완료 되면, Collector API Server로 요청을 보내 정상 완료 되면 작업이 마무리 되는 방식입니다. [그림 2]는 Core API Server에서 특정 요청을 받고 Other API Server로 요청을 보내는 단순한 코드입니다. 정상 동작하는 것을 확인하고 아래의 코드를 추가 작성하였습니다. [그림 3]은 Other API Server도 마찬가지로 요.. Python에서 MQTT 클라이언트 구현하기 - 1 사내에서 MQTT를 통해 들어온 장치와 센서의 모니터링 데이터를 수집하는 API 서버를 개발하고 있습니다. 구현에 들어가기 전에 해당 포스팅을 통해 MQTT의 기본 개념과, Python으로 MQTT 라이브러리를 사용하는 방법에 대해 재정리하고, 간단한 예제를 작성해보려고 합니다. MQTT(Message Queue Telemetry Transport) 센서, 디바이스 + 모바일 기기들의 연결을 위한 프로토콜, 오픈 소스 센서장치나 라즈베리파이 같은 임베디드 장치, 모바일 장치 사이의 통신을 위한 가벼운 메시징 프로토콜 경량화가 가능해서 통신 대역폭이 제한적인 사물인터넷에 적합 동작 구조 브로커(broker)를 중앙에 두고 publish / subscribe 메시징 체제로 데이터를 주고받음 MQTT 클라이언.. 이전 1 다음