일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- docker
- ioredirection
- multivm
- variable
- devops #jenkins
- 컨테이너
- container
- 초간단파이썬
- Engineer
- 파이썬
- Kubernetes
- mongodb operator
- 도커
- linux
- k8s
- nginx
- Vagrant
- aws #engineer
- namespace
- devops #engineer
- java
- 쿠버네티스
- DOIK
- RSS
- bash
- WEB
- httpd실행
- springboot
- python
- Strimzi
- Today
- Total
목록분류 전체보기 (81)
샤인의 IT (막 적는) 메모장
Git에 올라간 소스가 어떤 구조로 각 클래스는 어떤 역할을 하는지 알기 위하여.. JDK / JRE/ JVM #JDK JAVA Development Kit 자바 개발 도구 #JRE JAVA Runtime Environment 자바 런타임 환경 : 자바를 동작시킬 때 필요한 라이브러리를 가지고 있음 #JVM JAVA Virual Machine 자바 가상 머신 : 자바 소스로 만들어지는 자바 바이너리 파일을 실행시킴 (OS 환경마다 JVM은 다름) 기본 문법 #객체지향(Object Oriented Programming) 객체를 바탕으로 프로그램을 구조화하고 개발하는 프로그래밍 기법 함수와 메소드가 비슷하며 객체간 메시지를 교환하는 프로그래밍 모델 #클래스와 인스턴스 속성이 같은 개체를 대표할수 있는 대상을..
서비스 배포 시 필요한 API 개념 정리 #Application Programming Interface 응용프로그램에서 사용할 수 있도록 운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스 클라이언트의 요청을 받아 API에서 내부로 요청 #Request & Response API 응답 구조 클라이언트가 요청하면 API에서 응답해주는 방식 #CRUD 클라이언트가 서버로 요청하는 성격 Create=POST, Read=GET, Update=PUT,PATCH, Delete=DELETE #HTTP 상태코드 200 - 정상 400 - 클라이언트 요청에 에러가 있는 경우 500 - 서버에 문제가 있는 경우 #REST API REpresentational State Transfer 약자 자원의..
calico.yaml을 통해 대부분의 리소스가 배포되지만 VXLAN 설정을 위하여 해당 부분을 변경한다 DaemonSet 리소스 내 환경변수 변경 #Calico의 Default 모드는 IPIP이며 VXLAN으로 변경 vi calico.yaml #DaemonSet 오브젝트 내 env value 변경 DATASTORE_TYPE=kubernetes #IPIP -> VXLAN #Command 실행 부분 --bird-ready --bird-live 부분 삭제 CALICO_IPV4POOL_IPIP=Never CALICO_IPV4POOL_VXLAN=Always #레거시 및 RHEL 계열 설정 FELIX_IPTABLESBACKEND=NFT #프로메테우스 연동시 설정 FELIX_PROMETHEUSMETRICSENABLE..
IDE : 인텔리제이, 이클립스 등등.. 자주 쓰는 VSCode에 구성~ VS Code : https://code.visualstudio.com/ Visual Studio Code - Code Editing. Redefined Visual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications. Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows. code.visualstudio.com 1. VSCode 설치 2. Extension Pack ..
Nginx Ingress Controller 배포 시 api request 확인해보면 헤더 정보가 나와있음 (최근 버전은 없는듯) 헤당 서버 헤더 정보를 숨기고 싶을 때 Annotation과 Configmap으로 설정할 수 있음 proxy-hide-header: "Server" server-tokens: "false" 해당 nginx.conf 설정을 넣어서 다시 요청하면 헤더 정보 없어짐! #Ingress Controller 헤더 정보를 숨기고 싶을 때 Annotaion configuration-snippet은 location 필드만 수정해주기 때문에 Configmap 수정 필요 #Deployment Or DaemonSet 설정 시 nginx.ingress.kubernetes.io/server-snipp..
Nginx 설정정보 정리 블록 http 블록 Server, Location의 루트 블록, 설정된 값을 하위 블록들은 상속 Server 블록 하나의 웹사이트를 선언하는데 사용됨 (가상 호스팅 개념) Location 블록 Server 블록 안에 저장되면서 특정 URL을 처리하는 방법을 정의 Events 블록 네트워크의 동작방법과 관련된 설정값 설정, 따로 다른 블록과 상속관계를 가지지 않음 Virtual Host server { server_name example1.com root /var/www/example1.net } server { server_name example2.com root /var/www/exaple2.net } http-server Snippet 예시 http { server { #Po..
해당 문제는 많은 문제에서 발생할 수 있지만 제가 운영하면서 발생한 문제는 이러했습니다. Node -> Clone -> 생성 문제는 이 생성된 노드가 Clone으로 복제되었을 경우인데 실제 해당 설정값이 똑같기 때문에 Kubernetes Cluster에서 해당 복제노드를 바라보게 되서 발생했습니다. IP도 다른데? 복제된 노드를 바라본다? 심지어 Subnet도 다른데? ???? 제가 처리한 방법은 해당 복제 노드에 설정된 Kubernetes와 관련된 정보들을 전부 백업으로 돌렸습니다. kubelet, docker 중지하고 kubernetes 설정정보, kubelet 설정정보 백업 돌리고.. 그러니 다시 원래 노드를 바라보게 되더라구요 #노드 IP를 확인했을 때 IP에 복제된 노드 IP로 되어 있음 kub..
Kubernetes에 파드로 올라가는 경우 해당 변수를 설정하면 된다. (Workload 내 환경변수 수정!) log4j-core 2.10.x 기준 LOG4J_FORMAT_MSG_NO_LOOKUPS 환경변수를 지정한다. Elasticsearch CVE-2021-44228 log4j-core 취약점 적용 #env LOG4J_FORMAT_MSG_NO_LOOKUPS 적용 spec: ... env: - name: LOG4J_FORMAT_MSG_NO_LOOKUPS value: "true" ...
데몬 서비스로 올라가거나 파드로 올라가는 경우 해당 실행 명령어 수정 ( --web-listen-address 플래그를 지정한다) 재시작하게 되면 Service와 Endpoint도 변경한 Port를 수정한다. #node-exporter는 daemon으로 가동되어 해당 데몬 서비스에 설정값 변경하여 재시작 cat > /etc/systemd/system/node_exporter.service
실제 실무에서는 해당 서비스에 따라 노드를 분류하여 사용한다 (예 type=ingress, , type=web, type=was ...) 그러나 실제로 개발이나 검증계 쪽에서는 테스트 용으로 사용하기 때문에 한 노드에 두 서비스를 올리고 싶다는 요청을 받았다. (lable/taint 설정 안하고 그냥 막 배포하면 되는거 아니냐고!) 실제 label/taint가 설정되어 있는 노드들이기 때문에 다음과 같은 작업이 필요하다. 실제로 Taint 값이 util이라고 설정되어 있다고 한다면 NodeAffinity를 나눠서 분리하여 사용한다. 실제로 Node에 Label값을 추가하는데 실제로 service1에 service2가 추가되어 label 값이 service1, service2인 모든 노드에 배포된다. 실제..