전체 글 36

[ELK] Kibana 설치

Kibana란? kibana는 Elastic Stack(ELK) 기반으로 구축된 오픈소스 프론트엔드 애플리케이션 Elasticsearch에서 색인된 데이터들을 검색해서 분석 및 시각화하는 대시보드 플랫폼 구축환경 OS: Ubiuntu 22.04 CPU: 4v Cpu RAM: 16GB DISK: 100GB(OS 및 프로그램 설치할 하드) + 100GB(ELK 분석/저장 파일 보관할 하드) ETC: Openstack(IAAS) 키바나 설치 및 서비스 등록 root@ubuntu:/usr/share/elasticsearch# apt install kibana Reading package lists... Done Building dependency tree... Done Reading state informati..

구축/ELK 2024.02.13

dpkg로 deb 삭제파일 복구 방법

발단 metricbeat의 관련 덤프 파일을 삭제하는 과정중에서 실수로 설정파일인 metricbeat.yml를 삭제해 버렸다 해당 metricbeat는 deb파일로 설치한 서비스로 dpkg 명령어를 사용한다 어쨋든 metricbeat.yml가 없으면 서비스가 돌아가지 못하므로 복구를 해야했다 조치 일단 dpkg에 무결성을 확인하는 명령어가 있어서 복구까지 해주나 싶어 해당 명령어부터 사용해봤다 root@ubuntu:/home/ubuntu# dpkg -V metricbeat missing c /etc/metricbeat/metricbeat.yml 안해준다 걍 무슨 파일이 없다고만 알려주는거 뿐이였다. 찾던 도중 dpkg에서 재설치 옵션을 알아내서 사용해봤다 root@ubuntu:/home/ubuntu# d..

트러블슈팅 2024.02.08

[ELK] Elasticsearch 설치

ELK란? Elasticsearch, Logstash, Kibana의 약자를 딴 스택을 의미하는 약어 Elasticsearch란? LogStash를 통해서 전송받은 데이터 분석 및 변환, 저장 기능을 담당하는 검색/분석 엔진이다. 단순한 데이터 검색 및 정보 집계를 넘어 데이터의 추세와 패턴을 발견할 수 있게한다. 구축환경 OS: Ubiuntu 22.04 CPU: 4v Cpu RAM: 16GB DISK: 100GB(OS 및 프로그램 설치할 하드) + 100GB(ELK 분석/저장 파일 보관할 하드) ETC: Openstack(IAAS) 사전 마운트 작업 (넘기기 가능) 필자는 ELK에서 생성되는 분석/저장 파일들을 따로 보관할 예정이여서 하드를 하나 더 마운트시켜 거기로 설정해둘 예정이다. 이것은 그 사전..

구축/ELK 2024.02.07

도커 교과서 ch09 (모니터링)

헬스케어가 존재하더라도 지속적인 애플리케이션 모니터링과 이상이 발생했을때 통보하는 메세지 기능은 필요하다. 컨테이너에서 실행하는 애플리케이션에 있어 투명성은 매우 중요 > 미확보시 애플리케이션의 관리영역이 완전히 비어버리게 된다. 프로메테우스를 사용해 애플리케이션 컨테이너에서 측정된 수치를 수집하고 그라파나를 사용해 수치를 시각화해 이해하기 쉬운 대시보드 형태로 구성한다. 해당 도구들은 오픈소스 + 높은 플랫폼 호환성을 보여주어 동등하게 사용가능하다 컨테이너 화된 애플리케이션 환경은 일반 로컬 서버 환경보다 훨씬 역동적이다 > 수백개 수십개가 넘치는 컨테이너, 플랫폼에 의해 끊임없어 생성되고 삭제되는 컨테이너들 즉 새로운 모니터링 방식이 필요하다. > 프로메테우스가 이런 기능에 적합한 오픈소스 도구 프로..

공부/docker 2024.01.31

[jenkins] 설치 파일 권한 관련 오류

발단 젠킨스를 서비스에 올리고 정상 작동을 확인하고 대시보드에 들어갈려고 링크를 넣으니 위의 오류가 발생했다 코드 내용은 아래와 같다 jenkins.model.InvalidBuildsDir: ${ITEM_ROOTDIR}/builds does not exist and probably cannot be created at jenkins.model.Jenkins.checkRawBuildsDir(Jenkins.java:3471) at jenkins.model.Jenkins.loadConfig(Jenkins.java:3392) Caused: java.io.IOException at jenkins.model.Jenkins.loadConfig(Jenkins.java:3396) at jenkins.model.Jenki..

트러블슈팅 2024.01.29

[jenkins] jenkins 수동 설치 및 서비스 등록 + 쉘스크립트 자동설치(2.426.3 버전)

jenkins(젠킨스)란?CI/CD(지속적인 통합/배포)를 위한 도구로 소프트웨어 개발 프로세스의 빌드, 테스트, 배포 등을 자동화 해주는 도구이다.Jenkins Index와 연동하여 다양한 플러그인 사용이 가능하다  (디폴트 기준)8080port로 대시보드에 접속하며 50000port의 파이프라인을 통해 슬레이브들에게 배포된다.HistoryApi의 효율적인 배포를 위해 jenkins를 통한 CI/CD 배포 환경이 필요하게 되었는데 현재 사내 공인아이피를 대부분 사용하고 있어서 추가적으로 요청을 하던지 해서 얻어야하지만 젠킨스 하나만 사용하겠다고 추가 인스턴스에 공인 IP를 할당 받는건 비효율적이라 생각해 기존의 OpenVpn용으로 생성했던 인스턴스에 볼륨만 추가해 jenkins 서비스를 설치할 생각이다..

구축/Jenkins 2024.01.29

[OpenVpn] openvpn.log에 timestamps 추가하기

발단 필드에 설치된 openstack 내부 네트워크 망에 있는 인스턴스들을 외부에서 접속시키기 위해 openvpn 인스턴스를 하나 설치 또한 효율적인 관리를 위해 각 사용자 별로 인증서를 다르게하고 openvpn 설정파일에서 맨아래의 값을 추가하여 openvpn.log파일에 log를 띄우게함 하지만 opnvpn.log파일에 기록은 되나 타임스탬프는 뜨지 않는 문제가 발생 막상 사용자가 들어온건 파악되는데 언제 이 로그를 남겼는지 확인이 불가능해 해당 정보가 유명무실해 질 수 있다. 타임 스탬프를 띄우기 위해 조치 시작 vi /etc/openvpn/server/server.conf ..(생략) status /var/log/openvpn-status.log verb 3 crl-verify crl.pem ex..

트러블슈팅 2024.01.24

[openstack] Windows QCOW2 이미지 생성법

사전에 필요한 항목 Ubuntu 22.04 등의 리눅스 환경 windows ISO 파일 VirtIO 드라이브 파일 KVM 과정 windows를 저장할 qcow2 타입의 이미지를 생성 qemu-img create -f qcow2 winxxxx.qcow2 15G #xxxx 는 해당하는 windows 서버의 버전을 적으시면 됩니다. KVM에서 windows vm을 생성 virt-install --connect qemu:///system \ --name (vm이름) --ram 2048 --vcpus 2 \ --network network=default,model=virtio \ --disk path=winxxxx.qcow2,format=qcow2,device=disk,bus=virtio \ --cdrom (해당..

운영 2024.01.12

openstack 구축 8 cinder

OpenStack Block Storage 서비스 Cinder는 가상 머신에 영구 스토리지를 추가한다. 블록 스토리지는 볼륨 관리를위한 인프라를 제공하고 OpenStack Compute(nova)와 상호 작용하여 인스턴스 볼륨을 제공한다. 또한 이 서비스를 통해 볼륨 스냅 샷 및 볼륨 유형을 관리 할 수 ​​있다. 해당 구축은 컨트롤러 노드와 스토리지 노드로 나누어지며 단일노드일경우 한 노드에 다 넣으면 된다. 컨트롤러 노드 DB, 서비스 사용자 등록 및 API 엔드포인트 생성 sudo su root #root 권한 습득 mysql #mariadb 접속 MariaDB [(none)]> CREATE DATABASE cinder; #cinder DB생성 MariaDB [(none)]> GRANT ALL PR..

구축/Openstack 2024.01.10