일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- kafka streams
- play framework
- spring-cloud-stream
- Kafka
- schema registry
- coursera
- 카프카
- scala
- kafkastream
- kafkastreams
- 플레이 프레임워크
- Spring
- confluent
- reactive
- Logstash
- avo
- RabbitMQ
- aws
- spring-kafka
- Elk
- spring-batch
- kafka interactive query
- statestore
- Slick
- enablekafkastreams
- scala 2.10
- springboot
- gradle
- 한빛미디어
- Elasticsearch
- Today
- Total
목록분류 전체보기 (167)
b
AWS 에서 메시지를 전달 하는 서비스로 SNS, SQS, Kinesis, EventBridge 등이 존재한다. 이 중에서 Pub/ Sub 모델의 서비스는 SNS 와 EventBridge 이다. AWS SNS aws 에서 가장 오래된 pub/sub 서비스이다 1. SMS&메일을 보낼 수 있고, 2. 모바일 디바이스에 Push를 보내거나 3. SQS , Lambda 등의 AWS 서비스와도 연결 할 수 있다. 토픽당 백 만이상의 구독자를 설정 할 수 있고, 낮은 latency 를 제공한다. 하지만 pub/sub 이고 메시지를 push 하는 형태이므로. 수신측App 이 허용 범위 이상 메시지를 받는다면 서비스에 문제가 발생한다. 이를 대비하기 위해서는 SQS 등의 Queue 와 같이 써야 한다. (일반적인 패..
IAM 계정 대시보드로 들어가면 계정의 보안 상태를 확인 할 수 있다. 만약 권한이 부족하다고 나온다면 'ec2admin' 그룹에 IAMReadOnlyAccess Policy를 추가하면 된다. Password Policy : 비밀번호 정책을 설정 할 수 있다. 대소문자,숫자 여부, 최소 길이등을 설정 할 수 있다. 루트 계정에서 MFA 활성화 : 참고 링크 비밀번호 이외에 OTP(OneTime Password) 를 이용 할 수 있다 `가상 MFA 장치` 방법을 이용하여 Google Auth(아이폰,안드로이드) 등을 이용할 수 있다. 그 외에 참고 사이트 IAM 유저 가이드 - PDF , HTML IAM 사용 사례 - 링크 IAM 의 보안 모범 사례 - 링크 IAM Role을 이용해서 EC2에 권한 주기 ..
권한에 따른 AMAZON AWS 사용자 분류 Root Acount IAM Users, Group, Roles Temporary Security Credentials (임시 보안 자격증명) 밑으로 갈수록 좀 더 범위가 좁아진다. IAM ( Identity and Access Managemnt) 사용자와 그룹을 생성하고 각 리소스에 대해 접근제어와 권한 관리를 제공 (리전별로 설정은 안되고 모든 리전에 동일하게 적용) 실제 서비스가 아니라서 요금은 없음 Effect, Principal, Action, Resource, Condition 총 5개의 구성요소를 가지고 JSON 형태로 정의할 수 있다. 링크 IAM Policy 종류 AWS Organizations : 무료이고, Service Control Pol..
클러스터 : Node 2개로 클러스터 구성하였다. 실험) Queue는 dev01에 존재하지만 'dev02' 노드로 접속해서 데이터를 발행했다. 설명) Queue 자체는 dev01 서버에 존재하였지만 spring.rabbitmq.address 는 dev02로 선언하였다. (처음에 메타정보를 가져와서 dev01이랑만 연결되지 않을까? 라는 예측을 했었지만 틀렸다) 위의 netstat 결과를 보면 확인 할 수 있지만 Publisher는 Queue가 없는 dev02로 접속하여서 데이터를 발행하였다. 즉, Queue가 존재하는 Node에 연결을 반드시 하지는 않는다. 클러스태 내부끼리 통신을 하여 데이터를 주고 받는 거였다. (Kafka는 해당 TopicPartition이 존재하는 Broker들과 전부 Conne..
기존의 RabbitMQ 클러스터가 N 대 있고, VIP로 엮여있다. 그리고 legacy system 은 그 VIP 만을 broker_url로 사용하고 있었다. (잘 모르겠지만 이거 이래도 되나?) 그래서 VIP 사용을 제거하고 broker_url 을 node list로 변경하기로 했다. Spring 같은 경우는 Kafka, Elastic 등에서 Node List를 프로퍼티로 주고 많이 사용했기 때문에 문제가 없었지만 airflow 에서 설정이 문제였다. celery 문서를 따라가보면 세미콜론 또는 List 형태로 줄 수 있다고 한다. (https://docs.celeryproject.org/en/stable/userguide/configuration.html#broker-settings) 방법1) bro..
전체 변경 내역은 https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.3-Release-Notes 을 확인 dependencies 는 https://github.com/spring-projects/spring-boot/blob/master/spring-boot-project/spring-boot-dependencies/build.gradle 에서 확인 하면 된다. Spring Data Neumann 적용 pring Data Neumann 릴리즈를 적용함. Spring Data 의 train release 는 https://github.com/spring-projects/spring-data-commons/wiki/Release-planni..
오래된 배치를 마이그레이션하고 있다. SpringBatch 를 쓰지 않고 여러개의 SpringBootApplication 을 하나의 프로젝트에 만들어 manifest { attributes( 'Main-Class': 'org.springframework.boot.loader.PropertiesLauncher' ) } PropertiesLauncher를 이용해 java -Dloader.main=BatchName -jar jarName.jar 이렇게 실행하고 있다. 이렇게 실행하면 배치Job 에 해당하는 Class를 실행하기 위해서는 @PostConstruct가 가장 간편하고 요즘 개발에게 익숙한 방법이다. SpringBatch는 JobLauncherCommandLineRunner 를 이용해서 Job을 수행..
문서 : https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster-update-settings.html Cluster update settings API | Elasticsearch Reference [7.5] | Elastic Updates cluster-wide settings. With specifications in the request body, this API call can update cluster settings. Updates to settings can be persistent, meaning they apply across restarts, or transient, where they don’t survive a..