edge 에 발담그기
·
CloudNative/Provisioning
이번에는 kubeedge에 발을 살짝 담가 온도 측정 해보려 한다. kubeedge 는 CNCF landscape 에서 Provisioning 하위의 Automation & Configuration에 CNCF Graduated로 표시되고 있다.프로덕션 환경에서 사용해도 될만한 기술이라는 건데 argocd, prometheus, istio, fluentd 등이 다 graduated에 해당되니 안심하고 쓰자.KubeEdge is an open source system extending native containerized application orchestration and device management to hosts at the Edge. 라고 설명되어 있고, Edge Computing, Simplif..
gitlab webhook 생성시 invalid url 에러메시지
·
CloudNative/App Definition & Developement
프로젝트 push event에 웹훅을 만드는데 invalid url 메시지만 나오고 webhook 생성이 되지 않는 경우가 있다. gitlab 로그를 봐도 별다른게 없고, UI 상에  invalid url 말고는 힌트가 없다.이런 때는 관리자 계정으로 일단 로그인 admin > settings > network 로 이동하자. outbound requests 를 찾아서 펼친(Expand) 뒤, Allow requests to the local network from webhooks and integrations 에 체크를 해주고 save changes를 하자.
pinpoint agentid 환경변수 처리
·
CloudNative/Observability & Analysis
jib maven에서 jvmFlag로 pinpoint 관련 옵션을 지정하고 javaagent설정하면agentID를 동적으로 할당이 어려워서directory copy만 하고, 기존 jvmFlag는 주석처리한다.JAVA_TOOL_OPTIONS를 deployment에서 설정해서 runtime때 javaagent 구동하는 방향으로 변경하는김에 scouter도 같이 처리한다. /config/workspace/scouter/agent.java /scouter/agent.java /config/workspace/pinpoint-agent-2.5.4 /pinpoint-agent-2.5.4 ..
scouter
·
CloudNative/Observability & Analysis
사용법이 블로그를 참조하자.https://dewble.tistory.com/entry/how-to-use-scouter-xlog [Scouter]Scouter XLog 활용 방법 + XLog 패턴Purpose XLog: 응답시간 분포도(XLog) 및 트랜잭션 프로파일링 기능 제공 스카우터에서 XLog를 활용 하는 방법과 XLog 패턴을 설명한다. XLog Active Service가 종료되면 XLog차트에 하나의 점으로 표시된다. XLdewble.tistory.com scouter server 구성하기server config를 configMap으로 빼자.apiVersion: v1kind: ConfigMapmetadata: name: scouter-server-config namespace: defau..
vector logging
·
CloudNative/Observability & Analysis
vector docshttps://vector.dev/docs/about/vector/ VectorSign up to receive emails on the latest Vector content and new releases ×vector.dev EFK 구성log pipelinevector -> data-prepper -> opensearchrolevector:  log 수집data-prepper: log 가공opensearch: 저장 및 시각화YAMLvectorkind: DeploymentapiVersion: apps/v1metadata: name: tomcat labels: app: tomcatspec: replicas: 1 selector: matchLabels: ap..
trivy
·
CloudNative/Provisioning
tekton pipeline에 trivy scan task를 추가해보자. Tasktekton hub에서 trivy scanner yaml을 복사해서 Task를 생성한다. https://hub.tekton.dev/tekton/task/trivy-scanner Tekton Hub hub.tekton.devapiVersion: tekton.dev/v1beta1kind: Taskmetadata: annotations: tekton.dev/categories: Security tekton.dev/displayName: trivy scanner tekton.dev/pipelines.minVersion: 0.12.1 tekton.dev/platforms: 'linux/amd64,linux/ar..
openshift gitlab + gitlab runner CI/CD
·
CloudNative/App Definition & Developement
gitlab-ceconfigMap아래 파일을 gitlab.rb 로 저장하고 gitlab-config라는 이름의 configmap 생성하자.################################################ Custom Setting by Supermoon Begin ################################################external_url ''nginx['listen_port'] = 80nginx['listen_https'] = false puma['worker_processes'] = 0 prometheus['enable'] = falsealertmanager['enable'] = falseredis_exporter['enable'..
argocd applicationSet
·
CloudNative/App Definition & Developement
사전준비https://fullmooney.tistory.com/82 argocd기록한줄 알았는데 빼먹었던 argo를 3일동안 조금씩 써야겠다. ArgoCD는 GitOps 기반으로 Kubernetes 클러스터를 관리하는 선언적 배포 도구이다.장점은 GitOps도구답게 Git을 단일 소스로 활용해 변경fullmooney.tistory.com  appProject와 applicationSet을 만들어보자. Manifest Repository먼저 manifest를 관리하기 위한 git repository를 준비하자.kustomize 가 기본 적용가능하므로 활용한다.전체적인 경로는 다음과 같다. base를 기본으로 하고  overlays의 각 환경(dev,stg,prd)별로 kustomization.yaml에 기..
argocd
·
CloudNative/App Definition & Developement
기록한줄 알았는데 빼먹었던 argo를 3일동안 조금씩 써야겠다. overviewArgoCD는 GitOps 기반으로 Kubernetes 클러스터를 관리하는 선언적 배포 도구이다.장점은 GitOps도구답게 Git을 단일 소스로 활용해 변경 추적 가능.클러스터 상태와 선언적 정의 AUTO SYNC.시각화: UI 제공으로 배포 상태를 직관적으로 확인 가능.단점은초기 설정과 러닝커브가 가파를 수 있음.일부 CRD 미지원리소스 소비Argo Rollouts 을 추가로 사용하므로서 배포전략을 사용할 수 있는데Canary 배포: 트래픽을 점진적으로 증가시키며 새로운 버전 안정성 확인할 수 있는데 rollingUpdate와 다른점은 점진적 증가 구간에 대한 설정과 개입이 가능하다는 것Blue-Green 배포: 새 버전과 ..
pinpoint plugin config
·
CloudNative/Observability & Analysis
pinpoint apm 사용하면 서비스간의 호출이 kiali처럼 시각화되어 보이는데,플러그인을 활성화하면 rabbitmq와 같은 비동기호출에 대한 처리도 보여진다.몇가지 정리해본다.# ==========================================================# Pinpoint Agent Configuration File# ==========================================================# General Settingsprofiler.application.name=MyApp # 애플리케이션 이름 (필수)profiler.agent.id=MyAppAgent # ..
vault
·
CloudNative/Provisioning
HashiCorp Vault는 ID기반 secret 및 암호화 관리 시스템인데, 여기서 secret은 API 암호화 키, 암호 및 인증서 등 access 제어하는 모든 것이다 구성은 Helm으로 한다.helm repo add hashicorp https://helm.releases.hashicorp.com helm repo update helm install vault hashicorp/vaultvalues.yaml은 다음과 같다.controller: affinity: {} annotations: {} controllerConfigMapYaml: health: healthProbeBindAddress: ':8081' leaderElection: leaderElect: t..
otel
·
CloudNative/Observability & Analysis
springboot application 을 k8s에 배포할때otel-collector sidecar를 통해 jaeger로 전달되도록 하자. openshift에 service mesh operator로 kiali, jaeger, prometheus, grafana가 함께 구성된 환경이다. Redhat Build of OpenTelemetry operator를 install하고 OpenTelemetry Collector 를 생성하자apiVersion: opentelemetry.io/v1alpha1kind: OpenTelemetryCollectormetadata: labels: app.kubernetes.io/instance: cne-service app.kubernetes.io/managed-..