도커 비슷한것 끼리 묶을 순 없을까 ? - 2가지 방법 --label (레이블) --network (네트워크) --label / -l / 레이블 레이블은 컨테이너에 메타데이터를 추가하는 데 사용됩니다. 예를 들어, 컨테이너의 역할, 환경 설정, 버전 정보 등을 레이블로 지정할 수 있습니다. 레이블을 사용하여 컨테이너를 그룹화하거나 특정 속성을 식별하는 데 도움이 됩니다. 레이블은 컨테이너에 추가적인 정보를 부여하고 관리하기 쉽게 해줍니다. --network 네트워크는 컨테이너 간의 통신을 관리하는 데 사용됩니다. 도커 네트워크는 컨테이너가 서로 통신하고 외부와 통신하는 데 필요한 IP 주소및 포트 매핑을 관리합니다. 네트워크를 사용하..
분류 전체보기
1. Filebeat image 다운로드 docker pull docker.elastic.co/beats/filebeat:7.15.2 2. 설정 환경파일 다운로드 curl -L -O https://raw.githubusercontent.com/elastic/beats/7.15/deploy/docker/filebeat.docker.yml 3. 환경파일 수정 filebeat.config.modules path - 사용할 모듈의 설정 파일 경로 지정 reload.enabled - 활성화 시 주기적으로 설정 파일 변경 사항 확인 filebeat.autodiscover.providers - 현재 상태로 filebeat를 실행하면 elasticsearch, kibana의 모든 로그를 수집하여 로그파일이 어마어마하게..
엘라스틱서치를 설치하고 키바나를 들어가면 이러한 화면이 뜬다. Configure Elastic to get started 1. 비밀번호 초기화 : 재설정 엘라스틱서치 Bash 들어가서 비밀번호를 초기화 해준다. docker exec -it 엘라스틱서치컨테이너이름 /usr/share/elasticsearch/bin/elasticsearch-reset-password -u elastic New value : ZibwbEY3Rje5M3L+vMFd 이부분을 복사해준다. 2.인증서 파일 복사 docker cp 엘라스틱서치컨테이너이름:/usr/share/elasticsearch/config/certs/http_ca.crt . 복사하면 http_ca.crt 파일이 복사가 된다. 3. 연결확인 패스워드 : 1번에 넣엇..
프로그램을 실행 해주는 주체 = 프로세스 🏡 자신만의 고유 공간과 자원을 할당받아 사용 프로그램 단위 프로세스는 최소 하나 이상의 쓰레드를 보유 각각 별도의 주소 공간을 독립적으로 할당 받는다 (code,heap,stack) 📌 프로세스 만으로 작업을 처리할때의 문제점 - 프로세스 생성에 큰 오버헤드가 있음. * 프로세스 생성시 많은시간 소요 - 다른 프로세스 사용시 컨텍스트 스위칭의 비효율성이 생김. - 프로세스 사이에 통신이 어려움. 비용이 비싼 IPC 사용해서 통신을 한다. (또는 LPC, 공유 메모리) 작업을 처리 해주는 주체 = 쓰레드 💁 쓰레드는 프로세스안에서 작업을 처리하는 주체 이다. 쓰레드는 자원 중에 stack 만 따로 할당받고 나머지 영역은 쓰레드끼리 서로 공유한다. 📌 쓰레드가 해..
앞서 ELK가 어떤 것인지 모르면 [ https://soobysu.tistory.com/87 ] 읽고 시작 -아래 내용은 설정에 대한 간단한 설명이다. 귀찮으면 1번에서 - > 6번으로 가면 설치완료 1. docker-elk 설치 1. 해당 디렉토리에 docker-elk 를 받는다. git clone https://github.com/deviantony/docker-elk.git cd docker-elk 2. Elasticsearch 설정 X-pack 플러그인은 Security 관련 부분이다. license 부분을 basic 으로 수정해주자
엘라스틱 서치 ? 엘라스틱 서치는 검색만 하는가 ? 그러면 어디에 있는 데이터를 검색해 ? rdb에서 가져와서 하는가 ? 엘라스틱서치안에서 데이터가 저장 된다면 rdb를 대체 할 수 있는건가 ? Elasticsearch는 Apache Lucene(아파치 루씬) 기반의 java 오픈소스 분산 검색 엔진이다. "데이터 저장소"가 아니라 MySQL같은 데이터베이스를 대체할 수 없습니다. 방대한 양의 데이터를 신속하고 거의 실시간으로 저장,검색,분석할 수 있다. RDB를 베이스로 하고 검색에 필요한 부분만 엘라스틱서치로 진행한다. 대체 할 수 없는 이유엔 이러한 이유가 있다. 트랜잭션 지원 X 스키마리스(schemaless) : 이미 생성된 데이터의 타입을 변경하는것은 어렵다. 데이터 일관성 : 데이터의 일관성..
given() Mock 객체인 -> productService .getProduct 메서드에 "12315" 를 넣으면 .willReturn( 응답값 ) perform() RESTAPI TEST를 할 수 있는 환경을 만들어준다. >> get - get요청 / post , get , put , delete 어떤 Http통신을 할지 정의를 해줌 - builder구조를 사용한다 ( . 을사용하여 옵션 사용 ) - andExpect() 기대하는 값이 나왔는지 체크해볼 수 있는 메소드 - jsonPath() 기대하는 json값이 나왔는지 - exists() [현재 값이 있는지 판단] -andDo(print()) 위에서 테스트 한 내용을 프린트 verify() 해당 객체의 메소드가 실행 되었는지 체크 값을 Json..
TDD (Test-Driven-Development) 방법론 테스트를 먼저 설계하고 구축하여 통과할 수 있는 코드를 짜는것 장점 코드의 안정성을 높일 수 있음 (기능을 추가하거나 변경하는 과정에서 발생할 수 있는 상황들을 줄일 수 있음) 해당 코드가 작성된 목적을 명확하게 표현 할 수 있음 통합 테스트 통합 테스트는 여러 기능을 조합하여 전체 비즈니스 로직이 제대로 동작하는지 확인하는 것을 의미 통한 테스트의 경우, @Spring BootTest를 사용하여 진행 @SpringBootTest는 @SpringBootApplication을 찾아가서 모든 Bean을 로드하게 됨 이 방법을 대규모 프로젝트에서 사용할 경우, 테스트를 실행할 때마다 모든 빈을 스캔하고 로드하는 작업이 반복되어 매번 무거운 작업을 수..