Elk opendistro docker-swarm으로 올리기
폴더구조 elk folder - docker-compose.yml - elasticsearch: - Dockerfile - alerting.zip - config: - elasticsearch.yml - data: - kibana: - Dockerfile - opendistroAlertingKibana-1.13.0.0.zip - con..
키자드에 등록된 총 140개의 포스트를 확인하실 수 있습니다.
폴더구조 elk folder - docker-compose.yml - elasticsearch: - Dockerfile - alerting.zip - config: - elasticsearch.yml - data: - kibana: - Dockerfile - opendistroAlertingKibana-1.13.0.0.zip - con..
Resilience4j 란? hystrix로 부터 영감을 받은 경량 fault tolerance library. 다른 외부 라이브러리 종속성이 없기 때문에 가볍게 사용하기 좋다. Circuit Breaker / Rate Limiter / Bulk Head / Retry / Cache /..
Gradle 다운로드 gradle.org/releases/ Gradle | Releases Find binaries and reference documentation for current and past versions of Gradle. gradle.org 최신버전으로 설치해보자. 2021.05 기준 v7.0 binary..
spring boot로 몽고 DB연동하여 서버에 올린 후 접속해서 쿼리 날리면 발생하는 에러 spring.data.mongodb.host=localhost spring.data.mongodb.port=27017 spring.data.mongodb.username=testuser spring.data.mo..
1. Kafka Download kafka.apache.org/downloads Apache Kafka Apache Kafka: A Distributed Streaming Platform. kafka.apache.org 다운로드 받고 압축을 풀면 된다. 2. 실행방법 Zookeeper D:\kafka> bin\window..
swarm init, network생성 docker swarm init docker network create -d overlay elk-network docker-compose.yml version: '3.8' services: elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch..
엄청난 삽질 후에 성공했다. 그냥 결론은 Docker 새로깔고 하니까 한 번에 되는데 ㅡㅡ 역시 안되면 재시작하고 새로 깔고가 진리. docs.docker.com/registry/deploying/ Deploy a registry server docs.docker.co..
docker swarm init 명령어로 swarm을 초기화할 수 있다. docker swarm init 초기화를 하면 join할 수 있는 token이 저렇게 나온다. 그러면 join할 서버에 들어가서 그대로 날려주면 join 된다. docker node ls 이..
Open Source Identity and Access Management 최소한의 작업으로 어플리케이션과 보안 서비스에 인증을 추가할 수 있다. 사용자를 저장하거나 인증할 필요가 없다. ID연개나 소셜 로그인과 같은 고급 기능도 제공..
Lamda식이란 무엇인가? 함수적 프로그래밍 y = f(x) 형태의 함수로 구성된 프로그래밍 기법 데이터를 매개값으로 전달하고 결과를 받는 코드들로 구성이 되어있다. 객체 지향 프로그래밍보다 효율적인 경우는? -..
JAVA Stream ? JAVA 8에서 추가된 기능으로 Array나 Collections 처럼 연속된 형태의 객체를 데이터로 받아서 method로 처리하는 기능이다. 입력된 데이터의 자료구조 자체를 변경하지 않고 결과를 파이프라인 형..
JAVA Optional T type의 객체를 포장해주는 래퍼 클래스이다. Optional 인스턴스는 모든 타입의 참조변수를 저장할 수 있다. null 일 수도 있는 객체를 감싸고 있다. Optional을 쓰는 이유 NullPointerException을..
docker-compose.yml로 swarm 서비스를 올릴 때 볼륨 마운트시 발생하는 에러 해결방법 다른 호스트에 배포할 서비스면 해당 호스트에 마운트할 볼륨이 생성되어있는지 확인해야한다.
MongoDB 콘솔 접속 명령어 mongo -uroot -p1234 DB 생성명령어 use test; 딱히 없고 그냥 use 명령어를 사용하면 해당 DB를 사용할 수 있다. create User/ dropUser db.createUser({user:"testUser",pwd:"1234",ro..
차근차근 공부하려고 했는데 모르는게 너무 많다. 다소 번잡스럽지만 최대한 정리를 해가면서 업무를 하려고 일단 찾아본 대로 정리한다. SpringBootServletInitializer란? 더보기 An opinionated WebApplication..
CORS란? Cross-Origin Resource Sharing(CORS) 교차출처 리소스 공유 서로 다른 도메인끼리 다른 도메인의 요청을 허용하도록 하는 구조를 말한다. 허용하기 위해서도 사용하지만 다른 도메인에서 쓰지 못하도록..
설정파일에 민감한 정보들은 암호화를 해줘야 한다. (DB비밀번호, URL 같은 것들..) 암호화는 대세를 따라서 jasypt(Java Simplified Encryption)를 썼다. // https://mvnrepository.com/artifact/com.github.ulis..
JWT란? Json Web Token. Json형태로 안전하게 정보를 전달하는 Open Standard이다. JWT정보는 디지털 서명이 되어 있어서 안전하다. JWT는 HMAC또는 RSA, ECDSA를 사용하는 공개키/개인키쌍을 서명할 수 있다. JWT..
@Conditional SpringBoot App을 빌드할 때 어떤 조건이 충족되는 경우에만 Application Context에 로드하고 싶다. 테스트 중일 때는 비활성화되어 있거나 런타임 환경에 특정 조건일 때만 충족해야할 경우에 사용..
Postman으로 Mockup api를 만들 수 있다. 만드는 방법 POSTMAN에서 New를 눌러서 Mock Server를 생성한다. Mockup api를 써주면 되는데 수정이 가능하다. 일단 Path만 작성해보자. Mock Server 이름을 정한다...
MSA서비스를 개발하면서 우리가 gateway 를 직접 개발한다면 개발해야할 내용들이 굉장히 많다. Netflix에서는 직접 개발한 Zuul gateway를 공개함으로써 많은 개발자들이 편하게 가져다 쓰도록 지원하고 있다. 지..
SpringBoot는 application.properties를 외부 프로퍼티를 이용해서 실행할 수 있다. jar 실행방법 java -jar spring-boot.jar 프로퍼티의 이름을 바꿔서 실행할 경우(spring.config.name) java -jar spring-boot.j..
git submodule 추가한 후에 젠킨스에서 배포시에 자꾸 저렇게 directory 가 있다고 에러난다. git submodule deinit --force . git submodule init git submodule update --recursive deinit이 서브모듈 삭제하는..
stage('npm build'){ sh 'ls -alrt' dir('frontend') { git url: "https://gitlab주소/repository/frontend", branch: "master", credentialsId: 'git계정' sh 'ls -alrt' sh 'rm -rf build/*' echo 'npm build st..
management.endpoint.gateway.enabled=true # default value management.endpoints.web.exposure.include=gateway endpoint.gateway.enabled를 true로 해줘야 endpoint를 확인할 수 있다. 처음엔 이렇게 아무것도..
JAVA ClassLoader abstract class 로 bytecode를 읽어서 class파일을 생성하는 역할을 한다. CompileTime이 아닌 Runtime에 클래스를 로딩할 수 있게 해주는 기술 내부적으로는 세 단계를 거친다 로딩 > 링크 > 초..
git submodule deinit -f frontend .git/modules/frontend삭제(숨긴파일보기로) .gitmodules file 자체를 삭제 git rm --cached frontend rm -rf frontend
Predicates Webflux handler Mapping을 사용하여 Route하는데 다양한 Predicates factory가 이미 정의되어 있다. After & Before spring: cloud: gateway: routes: - id: after_route uri: https://example.org p..
GatewayFilter gatewayfilter를 이용하면 들어오는 HTTP요청과 나가는 HttpResponse를 수정할 수 있다. 특정경로로 범위가 지정된다. AddRequestFilter spring: cloud: gateway: routes: - id: add_request_header..
git 사용방법 git 설치한다. git-scm.com/ Git git-scm.com 위 링크에서 OS에 맞게 설치하면 된다. sourcetree www.sourcetreeapp.com/ Sourcetree | Free Git GUI for Mac and Windows A Git GUI that offers a v..
Intellij ultimate 버전을 사용하면 프로젝트 생성시 Spring Initializr가 있다. 그 기능으로 손쉽게 Spring Boot를 시작할 수 있다. Community버전을 사용중이라면 아래 링크에서 프로젝트를 손쉽게 만들 수 있다..
SpringBoot에서는 기본적으로 Commonslogging에 대한 구현가능성은 열어두고 있다. 내부적으로 slf4j를 지원한다. jar console 출력시 옵션 주는 방법 java -jar ***.jar --debug --debug와같은 형태로 옵션을 주..
IDE마다 설정 부분이 다르겠지만 intellij 기준으로 - Edit Configurations - Project 선택 - Enable launch optimization, Enable JMX agent 체크해제 하면됨
jar로 실행할 때 발생하는 log에러 logback라이브러리가 중복되면 발생한다. gradle.build에서 제외시켜줘야 한다. configurations { all { exclude group: 'org.springframework.boot', module: 'spring-boot-st..
Spring-boot-loader 모듈은 실행가능한 jar와 war파일을 생성해준다. maven이나 gradle을 사용한다면 쉽게 생성할 수 있다. 세부적으로 어떻게 동작하는지 구체적으로 알 필요는 없다. JAVA는 중첩된 jar파일을 로..
intellij 기준bootJar를 이용해서 jar파일을 만들어준다. 그러면 build/libs 밑에 jar파일이 생성된다. jar 파일 실행방법은 java -jar ROOT.jar 이다. 이제 dockerfile을 작성해보자. docker search openjdk11..
docker build >>> docker build --tag build_image_name:0.0.1 . private Repository에 이미지를 배포하는 방법 저렇게 파란색으로 가려진 부분이 사설 repository URL docker tag [기존이미지명] [사설reposit..
1. telnet ip port telnet 127.0.0.1 8080 무난무난쓰 2. nc -v -z ip port nc -v -z 127.0.0.1 8080 3. echo > /dev/tcp/ / echo > /dev/tcp/127.0.0.1/8080 # 열려있으면 아무것도 안나오고 # 안열려있으면 -bas..
git submodule 저장소 안에 다른 저장소를 추가해서 사용하는 것이다. 다른 저장소를 받아와서 함께 사용하는 것. 준비단계1 : react 프로젝트 만들기 참고로 백엔드개발자라서는 핑계긴하지만 front 1도 모른다...