쿠버네티스 위에서 설치 https://grafana.com/docs/grafana/latest/installation/kubernetes/ Deploy Grafana on Kubernetes › Installation › Deploy Grafana on Kubernetes Deploy Grafana on Kubernetes This page explains how to install and run Grafana on Kubernetes (K8S). It uses Kubernetes manifests for the setup. If you prefer Helm, refer to the Grafana Helm community charts grafana.com 아래 파일을 만들어서 kubectl apply ..
https://kubesphere.io/docs/faq/observability/monitoring/ Observability — Monitoring FAQ Questions asked frequently about the monitoring functionality. kubesphere.io kubectl edit ds -n kubesphere-monitoring-system node-exporter 5군데에 9100이라고ㅗ 명시되어 있는데 이를 9101로 바꿈
링크 계층 프로토콜 이더넷을 포함한 링크 계층 프로토콜의 역할은 이다. 이더넷은 물리 계층과 밀접한 관계가 있다. 이더넷은 케이블 통신에서 사용되기 때문에 이더넷 프레임은 전기 신호로 전송된다. MAC주소 IP는 IP주소를 사용해서 여러 네트워크를 거쳐 데이터를 전송할 수 있다. 하지만 이더넷은 동일 네트워크 내, 즉 자신이 포함된 링크 내에서만 데이터를 전송할 수 있다. 이 때 사용되는 주소가 MAC주소이다. → 네트워크 통신을 하는 하드웨어에 할당된 주소로 원칙적으로는 세상에 있는 모든 장비가 고유한 물리 주소를 가지고 있다.(48비트) 커널 공간의 이더넷 처리 흐름 1. MAC주소라 불리는 링크계층 주소를 사용해서 첫 번째 목적지로 패킷을 보낸다 2. 이더넷 헤더에는 이 MAC주소를 목적지로 기입한..
사용자 공간을 처리하는 애플리케이션 프로토콜 1. 요청을 보내는 애플리케이션이 socket에 데이터를 기록 2. socket에 기록된 데이터는 다른 한쪽의 socket으로 전달됨 → 즉, 애플리케이션 자체가 통신 구조를 가지지 않고서도 원격지에 있는 서버 애플리케이션과 통신 가능 Socket을 처리하는 커널 공간 (Socket이 만들어지는과정) 1.애플리케이션 프로세스가 네트워크 통신을 하는 경우, 커널에 TCP/IP로 통신하기 위해 상대방 애플리케이션과 통신할 수 있는 회선을 열어달라고 의뢰 (시스템 콜) ※이 때 접속 대상 서버의 IP주소와 TCP포트 두가지 정보가 필요 2.의뢰를 받은 커널은 소켓을 만들어 줌 (데이터를 기록할 준비가 됨) 3.TCP를 사용한다는 것과 IP주소 및 포트 번호 정보를 ..
동기와 비동기 동기 프로세스가 끝날 때까지 아무것도 하지 않고 기다리기 때문에 그 사이에 다른 것을 할 수 없다. 비동기 프로세스가 끝날 때까지 기다리지 않기 때문에 병렬로 다른 일을 할 수 있다. 비동기 - Ajax에서는 비동기 통신을 이용한 병렬 처리가 가능하다 - 클라우드 기술의 발전과 대량의 데이터를 처리하는 대규모 웹서비스가 늘어나면서 장비 발열과 소비 전력이 문제가 되고 있어 매니 코어화(many core)가 진행되고 있는 흐름을 보면, 비동기처리를 해야하는 경우가 증가하고 있다 동기와 비동기의 장단점 장점 단점 동기 1. 프로세스 종료여부를 쉽게 알수 있어 구조가 간단함 2. 구현 난이도 낮음 1. 프로세스 종료시까지 기다려야 하기 때문에 대시 시간을 활용할 수 없음 비동기 1. 프로세스가 ..
OS커널의 역할 1 시스템 콜 인터페이스 프로세스/스레드에서 커널로 연결되는 인터페이스로, 애플리케이션이 OS를 통해서 어떤 처리를 하고 싶을 때 시스템 콜이라는 명령을 이용해서 커널에 명령을 내린다. 2 프로세스 관리 언제 어떤 수십, 수백, 수천 개의 프로세스가 어느 정도의 CPU 코어를 이용할 수 있는지 처리 우선순위를 어떻게 결정할 것인지 등을 관리한다. 3 메모리 관리 메모리 공간의 최대치를 고려하여, 프로세스가 이용하는 독립 메모리 공간을 확보하거나 상호 간의 참조 영역을 지키기 위해 독립성을 관리한다. 4 네트워크 스택 5 파일 시스템 관리 디렉토리 구조를 제공하고, 액세스를 관리하고, 고속화 및 안정성 향상을 한다. 6 장치 드라이버 디스크나 NIC 등의 물리 장치용 인터페이스를 제공하고,..
argocd 수정사항을 gitlab-runner에서 push 하는데 다음과 같은 에러가 발생했다 $ git push origin main error: src refspec main does not match any error: failed to push some refs to 'http://00000.0000.000.0.0.0.0.0.git' ERROR: Job failed: exit status 1 git checkout main git push origin main 해결방법은 브랜치명을 지정해주는 것이다.
Gitlab으로 CI를하고 Argocd로 배포를 하려다 보니 자동화를 위해서는 도커로 이미지를 빌드하고 난 후에, helm으로 value를 업데이트하는 과정을 다른 방식으로 전환해야, argocd를 사용하여 CI 파이프라인으로부터의 automation을 할 수 있었다. 구글링을 해보니 kustomize를 통해서 patch를 하는 것 같아서 kustomize를 설치 및 사용해보고자 한다. Kustomize 설치하기 https://kubectl.docs.kubernetes.io/installation/kustomize/binaries/ Binaries Install Kustomize by downloading precompiled binaries. kubectl.docs.kubernetes.io curl -..
Local에 storageclass 생성 apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: local-storage provisioner: kubernetes.io/no-provisioner volumeBindingMode: WaitForFirstConsumer 생성한 sc를 default로 설정 kubectl patch storageclass local-storage -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}' 그 다음은 공식문서 참조 https://kubesphere.io/docs/quick-start/minimal-ku..