트러블슈팅
-
[kubernetes] docker desktop에서 구성된 kubernetes 클러스터에서 metrics-server가 정상적으로 동작하지 않을 때레거시/트러블슈팅 2022. 8. 21. 20:44
개요 현재 개인적으로 진행하는 작업이 있어서, docker desktop에서 활성화한 kubernetes에서 pod/node 등의 메트릭 지표를 얻기 위해서 metrics-server를 설치했습니다. 이 때 만났던 문제들에 대해서 트러블슈팅하는 방법을 기록합니다. 환경: docker v20.10.17 맥북 정보: cpu: 2.3 GHz 쿼드 코어 Intel Core i7 mem: 32GB 3733 MHz LPDDR4X metrics-server 설치 명령어: $ kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml 설치 이후 kubectl top 명령어 실행 결과: ..
-
[Golang] fatal error: concurrent map writes레거시/트러블슈팅 2022. 4. 4. 19:19
문제 상황 golang 개발 중, map 객체에 어떤 값을 저장하여, 이를 이용하는 서비스를 만든다고 해보자. 처음에는 쉽게 다음과 같이 WriteMap 함수를 이용해서 코드를 간단하게 작성할 수 있다. package main import "fmt" func WriteMap(m map[int]int, num int) { for i := 0; i < num; i++ { m[i] = i } } func main() { fmt.Println("map writes start!") m := map[int]int{} WriteMap(m, 100) fmt.Println("map writes end!") } 이 때, 고루틴을 이용하여 WriteMap 함수의 성능 향상을 계획했다고 가정해보자. 그럼 코드는 이렇게 바꿀 ..
-
[Vagrant] There was an error while executing VBoxManage, a CLI used by Vagrantfor controlling VirtualBox. The command and stderr is shown below.레거시/트러블슈팅 2022. 1. 7. 19:30
문제 상황 vagrant init centos/8 이후, vagrant up 명령어 실행하면, 다음 에러가 뜨면서 부팅되지 않음. $ vagrant up Bringing machine 'default' up with 'virtualbox' provider... ==> default: Importing base box 'centos/8'... ==> default: Matching MAC address for NAT networking... ==> default: Checking if box 'centos/8' version '2011.0' is up to date... ==> default: Setting the name of the VM: vagrant-tutorial_default_1641173107..
-
[Logstash] Input Kafka plugin, IllegalStateException: No entry found for connection xxx레거시/트러블슈팅 2021. 9. 30. 18:27
개요 다음 메트릭 데이터 수집 파이프라인 구성 중에 발생한 문제이다. CollectD(x3) -> logstash -> kafka(x3) 운영 환경은 다음과 같다. OS: Amazon Linux2 (x7, collectd x3, logstash, kafka x3) instance type: m5.large Kafka의 모든 노드는 kafka, Zookeeper가 설치되어 있으며 클러스터로 구성되어 있다. 문제 상황 Kafka에 제대로 된 데이터 수집이 안되고 있어서 Logstash의 로그를 확인해 보았다. (/var/log/logstash/input.log에서 CollectD에 데이터가 수집되는 것을 확인하였다.) $ tail -f /var/log/logstash/logstash-plain.log .....
-
17. 클러스터 유지와 보안 트러블 슈팅 (3)24년 11월 이전/데브옵스(DevOps)를 위한 쿠버네티스 마스터 2021. 9. 8. 20:49
이 문서는 인프런 강의 "데브옵스를 위한 쿠버네티스 마스터"을 듣고 작성되었습니다. 최대한 요약해서 강의 내용을 최소로 하는데 목표를 두고 있어서, 더 친절하고 정확한 내용을 원하신다면 강의를 구매하시는 것을 추천드립니다. => 강의 링크 Security Context Security Context는 Kubernetes 클러스터의 보안을 위한 리소스 중 하나이다. 아무것도 설정되지 않은 Pod의 컨테이너들은 모두 "root" 권한으로 실행된다. 만약 Persistent Volume에 연결된 컨테이너가 해킹된다면? 이런 경우 외에도 수 많은 보안 위험에 노출될 수 있는데 Security Context를 사용하면 어느 정도 보호해줄 수 있다. Security Context로 Pod 혹은 컨테이너 단위로 할 ..
-
15. 클러스터 유지와 보안 트러블 슈팅 (1)24년 11월 이전/데브옵스(DevOps)를 위한 쿠버네티스 마스터 2021. 9. 1. 21:55
이 문서는 인프런 강의 "데브옵스를 위한 쿠버네티스 마스터"을 듣고 작성되었습니다. 최대한 요약해서 강의 내용을 최소로 하는데 목표를 두고 있어서, 더 친절하고 정확한 내용을 원하신다면 강의를 구매하시는 것을 추천드립니다. => 강의 링크 노드 1개를 업데이트해야 한다면? 이번 절은 GKE에서 진행한다. 쿠버네티스 클러스터를 운영하다보면, OS 업데이트 혹은 쿠버네티스 버전 업데이트 등의 이유로 운영 중인 노드를 하나씩 내리고 업데이트 후 다시 올려야 할 때가 있다. 이 때, 다음과 같은 절차로 진행한다. 업데이트해야 할 노드 drained (노드에서 운영되는 리소스 수거) 노드 업데이트 업데이트된 노드 uncordon (업데이트 노드 다시 클러스터 참여) 노드 정보를 확인해보자. $ kubectl ge..