02. 쿠버네티스 클러스터 생성
·
DevOps/쿠버네티스
이제 쿠버네티스가 무엇인지는 알았으니, 쿠버네티스 클러스터를 생성해보자! 컨테이너 런타임 설치쿠버네티스는 앞서 컨테이너화된 애플리케이션을 배포 및 관리하기 위한 서비스라고 하였다. 그렇다면, 당연히 컨테이너화된 애플리케이션을 실행시킬 수 있는 런타임 소프트웨어가 필요하다. 대표적으로 컨테이너를 실행시킬 수 있는 소프트웨어는 다양하게 존재한다. 그 중, 가장 유명한 것은 Docker가 있을 것이고, Containerd, Podman, CRI-O 등이 존재한다.  쿠버네티스는 이러한 컨테이너 런타임을 사용하기에, 해당 컨테이너 런타임과의 상호작용이 중요할 것이다. 이렇게 많은 컨테이너 런타임이 각기 다른 방식으로 동작한다면, 쿠버네티스는 이렇게 많은 컨테이너 런타임들을 지원하기 위해 많은 부담이 생길 것이다..
01. 쿠버네티스란 무엇인가?
·
DevOps/쿠버네티스
쿠버네티스란 무엇인가? 쿠버네티스(Kubernetes )는 K8s라고도 불리며, 컨테이너화된 애플리케이션의 배포, 확장, 관리를 자동화하는 오픈 소스 시스템입니다. 즉, 쿠버네티스란 배포, 확장, 관리를 자동화해주는 시스템이다. k8s 라고도 불리는 이유는 K와 s사이에 (ubernete)라는 글자가 8개 있어서 k8s 라고 부른다고도 한다. 아무튼, 쿠버네티스란 개발자에게 숙명인 배포와 관리등을 아주 간편하게 할 수 있도록 해주는 유용한 도구라고 생각하면 된다. 쿠버네티스가 제공하는 기능들은 아래와 같으니 참고바란다.컨테이너란 무엇인가?쿠버네티스는 컨테이너화된 애플리케이션을 관리한다고 했는데, 컨테이너란 무엇일까? 우리가, 애플리케이션을 실행할 때를 생각해보자. 인터넷에서 받은 Spring Boot 프..
02. LoraWan 인프라를 구축해보자.
·
공부/LORA
ChirpstackChirpstack은 LoraWan 네트워크를 구축하고 관리하는 오픈 소스 소프트웨어이다.  주요 구성은 아래와 같다.Chirpstack Gateway Bridge  Lora 게이트웨이와 통신하여 Lora 패킷을 UDP에서 MQTT로 변환하여 네트워크 서버로 전송한다.Chirpstack Network Server  LoraWan 패킷을 처리하고 디바이스와 게이트웨이 간의 통신을 관리한다.Chirpstack Application Server  데이터 및 디바이스를 관리하고, MQTT/HTTP 등의 프로토콜을 통해 사용자에게 데이터를 전송한다. 우리는 이 오픈 소스를 활용하여, 개인 LoraWan 인프라를 구축해볼 예정이다! 인프라 구축일단, 현재 공직 Documentation에서 제공하는..
01. LORA란 무엇인가?
·
공부/LORA
Lora란 무엇인가?LoRa는 Chirp Spread Spectrum(CSS) 기술을 기반으로 한 장거리, 저전력 무선 통신 기술입니다.Semtech의 LoRa는 IoT의 표준 무선 플랫폼으로, 에너지 관리, 자원 절감, 오염 제어, 인프라 효율성, 재난 방지 등 다양한 문제를 해결하는 스마트 IoT 애플리케이션을 가능하게 합니다.LoRaWAN 네트워크와 결합하여 스마트 시티, 농업, 물류 등 여러 분야에서 활용되며,100개 이상의 국가에서 수억 대의 디바이스가 연결되어 더 스마트한 지구를 만드는데 기여하고 있습니다. 위의 글은, SEMTECH의 소개페이지에 있는 로라에 대한 소개 글이다. 이 글을 요약해보면, Lora란 저전력 / 장거리 무선 통신 기술이며, 여러 환경에서 사용하는 IoT 장비에서 사용..
04. 마무리!
·
Web/GPT 응답 API 서버
이제 이 API 서버가 잘 동작하는지 PostMan을 통해서 테스트해보았습니다. 보시는 것과 같이 text question을 보냈을 때 응답을 잘 보내주는 것을 알 수 있습니다. 이렇게 OpenAI API에 Text Question을 하고 응답을 받아주는 역할을 하는 API 서버를 제작하였습니다. 하지만, 추가해야할 점이 많이 있습니다. 먼저, 한글과 영어를 번역하는 로직을 추가해야합니다. OpenAI API는 무료가 아닙니다. 토큰을 사용한 만큼 요금이 결재되는 시스템입니다. 토큰은 OpenAI API가 처리하는 단어 조각인데 같은 문장에서 영어보다 한글이 더 많은 토큰을 소비합니다. 그렇기 때문에 해당 API 서버에서는 한글로 오는 요청에 대하여 영어로 바꾸어 OpenAI API에 요청을 하고, 영어..
03. Service를 구현해보자!
·
Web/GPT 응답 API 서버
이제 컨트롤러에서 요청 Dto로 서비스에게 넘겨주었으니 이제 비즈니스 로직을 구현할 차례입니다. 사실 지금 구현하고 있는 API 서버의 비스니스 로직은 매우 간단합니다. 그저 OpenAI API가 요구하는 형태로 Curl 요청만 보내면 되는 것이기 때문입니다. Java 에서 Http 요청을 하는 방법을 여러가지가 있습니다. Http Client를 사용하던지, HttpURLConnection을 사용하던지 등의 방법이 있습니다. 하지만 저는 Spring Cloud에서 사용하는 Rest Http 요청을 아주아주 쉽게 사용하게 해주는 OpenFeign이라는 라이브러리를 사용하여 처리를 해볼 예정입니다! 먼저, OpenFeign 라이브러리를 추가하기 위해 build.gradle에 spring cloud를 추가하여..