일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- kibana
- kafka broker
- command
- kafka-connect
- partition
- Message
- ElasticSearch
- Produce
- Kubernetes
- broker
- Elk
- Producer
- 쿠버네티스
- Consumer
- tls disable
- loadbalance
- Kafka Connect
- consumer group
- Kafka
- create topic
- elastic
- offset
- Helm
- http
- Golang
- topic
- es
- k8s
- minikube
- eck
- Today
- Total
목록개발 (28)
개발자의 개발괴발

cctv 영상을 스트리밍받아 내 pc에 저장해보자.rtsp에 지식이 전무하다보니 시간이 꽤 걸렸다.사전준비go에서 rtps를 사용하기 위해 gortsplib를 사용했다.go get "github.com/bluenviron/gortsplib/v4"깃헙에 가면 example도 잘 되어있다.그런데 ffmpeg 버전을 낮은 버전을 사용한것 같다.몇몇의 example은 cgo를 써야하는데 몇몇 함수가 deprecated된것도 있고 해서 c라이브러리를 쓰는 곳에선 잘 동작하진 않았다.cgo를 쓰기 위해선 ffmpeg도 설치해야한다.(위 패키지를 설치할때 같이 설치 되는지는 잘 모르겠다.)설치하기 위해서 homebrew로 설치하자.brew install ffmpeg streaming할 cctv영상 원본은 여기서 구할..

Elasticsearch와 Kibana를 설치했고 Elasticsearch가 잘 동작하는걸 확인했었다.여기 페이지에 있는 화면에 접근을 하고 싶은데 Kibana에 접근하면 보여지는 것으로 보인다.Kibana를 localhost로 port-forward하고 브라우저로 접속하면 바로 접속될 줄 알았지만 역시나 한번에 되는 것은 없다.curl로도 마찬가지였다.$ curl "http://localhost:5601" -vvv* Host localhost:5601 was resolved.* IPv6: ::1* IPv4: 127.0.0.1* Trying [::1]:5601...* Connected to localhost (::1) port 5601> GET / HTTP/1.1> Host: localhost:560..
앞서 elastic-operator와 elasticsearch를 minikube에 배포해봤다.elastic-operator는 helm으로 elasticsearch는 yaml을 통해서 직접 배포했는데 elasticsearch도 helm을 통해 배포할 수가 있었다.심지어 helm 배포 한번으로 elasticsearch와 kibana를 한번에 배포할 수 있다.(여기참고) Helm으로 elasticsearch와 kibana 배포하기먼저 helm repo를 추가한다.$ helm repo add elastic https://helm.elastic.co"elastic" already exists with the same configuration, skipping$ helm repo updateHang tight wh..
Helm으로 설치하기operator없이 그냥 배포할 수도 있지만 operator가 있으면 k8s에서 운영하기 더 편하다고 한다(안해봐서 모르겠지만 그렇다고 한다.)그래서 operator를 배포하고 elasticsearch를 배포해보도록 하겠다.Operator 배포helm을 이용하면 매우 쉽게 설치할 수 있다.여기에서 시키는대로만 하면 된다.(helm 버전은 3.2.0부터 가능)설명에 있는대로 실행해보자.$ helm repo add elastic https://helm.elastic.co"elastic" has been added to your repositories$ helm repo updateHang tight while we grab the latest from your chart repositor..

kafka connect를 kafka connector 위에 생성해보자.kafka connect는 api server를 가지고 있어서 api 호출을 통해 명령을 날릴 수 있다. kafka connect api에 대한 설명은 여기, kafka connector에 대한 자세한 설명은 여기에 나와있다.kafka connect api 호출해보기연습삼아서 kafka connect api를 호출해보자.$ curl http://localhost:8083/connectors[]현재 설치된 커넥터가 없어서 빈 리스트가 나왔다.사전준비source connector의 source가 되어줄 table을 두개 만들어보자.login_worker table과 login_customer table을 만들고 login_customer..
kafka connect "Fail to list offsets"계속 아래와 같은 에러가 발생하다가org.apache.kafka.common.errors.TimeoutException: Timed out while waiting to get end offsets for topic 'connect-offsets' on brokers at bitnami-kafka-controller-headless:9092Caused by: org.apache.kafka.common.errors.TimeoutException: Call(callName=listOffsets(api=METADATA), deadlineMs=1743252113013, tries=477920, nextAllowedTryMs=1743252113116..
bitnami kafka helm chart여기서 helm 차트를 받을 수 있다.helm 차트를 있는 그대로 install해도 되지만 그냥 install하게되면 개인적으로 사용하고 스터디하기엔 불편하다.(SASL 설정 등등)그래서 replica를 1로 줄이고 하는 등 설정을 바꿔서 deploy 하겠다. helm install bitnami-kafka oci://registry-1.docker.io/bitnamicharts/kafka위 처럼 설치할 수 있고helm install bitnami-kafka oci://registry-1.docker.io/bitnamicharts/kafka -f values.yaml위 처럼 변경한 yaml 파일을 적용할 수 있다.value.yaml 수정하기원본에서 수정한 부분은..
※ 아래 설정으로 해결되지 않는다. 여기 방법으로 해결하긴 했는데 자세한것은 더 연구중이다. CERTIFICATE_VERIFY_FAILED 에러kafka connect를 배포하고 봤더니 아래와 같은 에러가 보인다.CERTIFICATE_VERIFY_FAILED라고 나오는걸 보니 인증서 확인 절차에서 실패한것 같다.[2025-03-24T12:10:18.312Z] "- - -" 0 UF,URX - - "TLS_error:|268435581:SSL_routines:OPENSSL_internal:CERTIFICATE_VERIFY_FAILED:TLS_error_end" 0 0 4 - "-" "-" "-" "-" "10.244.0.145:9092" outbound|9092||bitnami-kafka-controll..
kafka connector를 동작시키기 위해선 kafka connect가 필요하다.kafka connector와 kafka connect는 이름이 비슷하지만 다른 것이다.kafka connector는 kafka connect 위에서 플러그인 형식으로 동작한다.kafka-connect를 docker로 빌드하기일단 kafka connector를 포함해서 docker build를 먼저 해보자. 여기를 참고해서 해보았다.링크해준 것은 로컬 PC에 내가 사용할 kafka connector가 있는 경우에 유용하다.많은 경우에는 Confluent Hub 에서 제공하는 kafka connector를 쓰는 경우가 많을 것이다.그러나 가끔 접속이 안되는 경우도 있고 또 내가 커스텀으로 개발한 kafka connector..
결론부터 얘기하면 아래 yaml 파일을 만들어 kube apply를 하면 된다.아래 코드를 복사해서 psql17.yaml로 저장한다.apiVersion: v1kind: PersistentVolumeClaimmetadata: name: postgres-pvcspec: storageClassName: manual accessModes: - ReadWriteOnce resources: requests: storage: 5Gi---apiVersion: v1kind: ConfigMapmetadata: name: postgres-configdata: POSTGRES_DB: psql POSTGRES_USER: psql---apiVersion: v1kind: Secretmetadata:..