OpenSource(161)
-
What is istio?
Istio란? 플랫폼과 관계없는 오픈소스 서비스 매쉬로 마이크로서비스를 보호, 연결, 모니터링할 수 있습니다. Istio는 Kubernets, Nomad 및 Console에서 실행합니다. Service Mesh란? 간단히 말해 마이크로서비스의 네트워크 입니다. 예를 들어 서비스 A, 서비스 B간의 서로 통신하는 방법이자 각 서비스를 제어하는 지점 입니다. 또한 아래와 같이 각 서비스들이 직접 호출하는 것이 아닌 각 서비스마다 Proxy를 넣습니다.(Sidecar 구성 방식) 이렇게 하면 서비스로 들고나가는 트래픽을 네트워크 단에서 모두 통제가 가능하며, 트래픽에 대한 통제를 통해서 마이크로서비스의 여러가지 문제를 해결할 수 있습니다. ex) 써킷 브레이커(호출되는 서비스가 응답이 없을 경우 프록시단에서 ..
2022.09.01 -
[k8s] error: the server doesn't have a resource type "node"
상황 kubernetes context를 연결 후 kubectl get pods 명령어 수행 시 error: the server doesn't have a resource type "pods"라는 오류 발생 원인 .kube/config 파일에 context와 user명을 임의로 변경해줬더니 발생.. cluster: acet-dev 를 acet-dev-context user: acet-dev-admin 를 teri.epi_acet-dev-context 명령어가 아닌 config 파일을 수동으로 변경을 하면서 뭔가 꼬인듯 하다.. 우선적으로 다시 원복(롤백)을 한 뒤에 다시 해보니 잘되었다. 결과 다시 kubectl get node를 하니 잘 됨..
2022.08.29 -
keycloak Springboot에 연동하기
2022.08.10 - [OpenSource/keycloak] - keycloak quick start keycloak quick start springsecurity진영에서 더이상 oauth2.0에 대한 지원을 중단하고 오픈소스를 통해 구현하라는 권고가 있었다. OKTA(유료)와 Keycloak(무료)중에 keycloak을 찍먹 해보려고 한다. https://www.keycloak.org/gettin.. acet.pe.kr springboot 연동은 gradle을 사용했다. build.gradle에 아래와 같이 디펜던시 설정을 넣어주면 된다. 주석 2개 되어있는 부분 참고! dependencies { implementation 'org.springframework.boot:spring-boot-star..
2022.08.16 -
keycloak quick start
springsecurity진영에서 더이상 oauth2.0에 대한 지원을 중단하고 오픈소스를 통해 구현하라는 권고가 있었다. OKTA(유료)와 Keycloak(무료)중에 keycloak을 찍먹 해보려고 한다. https://www.keycloak.org/getting-started/getting-started-docker 우선 k8s베이스나 docker 베이스등 어떤 베이스로 셋팅을 할지 고를수 있다. 여기에서는 로컬에 docker가 셋팅 되어있으니 docker based로 해보겠다. docker run -p 8080:8080 -e KEYCLOAK_ADMIN=admin -e KEYCLOAK_ADMIN_PASSWORD=admin quay.io/keycloak/keycloak:19.0.1 start-dev 위..
2022.08.10 -
Spring Cloud Contract
https://spring.io/projects/spring-cloud-contract Spring Cloud Contract is an umbrella project holding solutions that help users in successfully implementing the Consumer Driven Contracts approach 위의 내용은 spring.io에 spring cloud contract 설명을 한 내용인데 내용중에 Consumer Driven Contracts라는 내용이 나온다. 한글로 번역하면 "소비자 주도 계약" 이것은 무엇을 말하는걸까? 제공자(Producer) 가 소비자(Consumer)에 대한 연동을 확인하면서 모듈화된 시스템 구성 요소를 TEST하는데 사용되는 ..
2022.08.03 -
@Scheduled
@Scheduled 어노테이션은? 말그대로 스케쥴링 즉, 주기적인 작업이 있을 때 사용한다. 마치 리눅스의 crontab과 같다. 사용법 우선 사용하려고 하면 @EnableScheduling 선언이 필요하다. 그리고 수행할 메소드위에 선언하여 사용하면 된다. @Scheduled(initialDelayString = "6000", fixedDelayString = "6000") protected void scheduledReloadAllGraphs() { log.debug("reloadAllGraph"); reloadAllGraphsMono().subscribe(); } 속성 cron : cron 표현식을 지원한다. ex) @Scheduled(cron="* * * * * *") 초/분/시/일/달/주 201..
2022.07.19