Kubernetes

쿠버네티스 curl 사용하기

쿠버네티스에서 클러스터내에서 Pod 에 데이터가 잘 나오는지를 확인하는 방법은 CURL 일 것이다. ClusterIP 로 IP 가 할당되면 클러스터내에서 접근이 가능한데 이때에 다음과 같이 사용하면 된다.

curl 을 비롯한 ping, nslookup 도 가능하다.

Kubernetes

Calico Metrics 모니터링 하기

Calico 는 쿠버네티스(Kubernetes) 의 CNI 다. 쉽게 말해서 쿠버네티스의 네트워킹을 가능하게 해준다. 설치도 쉽게 할수 있는데, 프로메테우스에서 Calico 모니터링을 하기 위해서는 추가적인 작업이 필요한데 여기에 대해서 알아본다. calicoctl calicoctl 을 설치해야 한다. 이 파일은 바이너리이며 wget, curl 명령어를 이용해서 설치가 가능하다. 설치를 한 후에 이것을 사용하기 위해서는 다음과 같이 환경변수를 설정해 준다.

calicoctl 명령어는 다양한 질의를 할 수 있다. Calico CRD Calico 설치를 메니페스트로 설치를 하게 되면 CRD 가 생성되면서 CRD 에 정의된 오브젝트가 함께 생성된다.

이것을 언급하는 […]

Kubernetes

쿠버네티스 secret 파일 저장하기

쿠버네티스의 Secret 은 암호화해서 데이터를 저장하는데, 파일도 저장할 수 있다. 바이너리 파일이던 텍스트 파일이던 모두 base64 인코딩 스트링으로 저장이된다. 이것을 파일로 저장하는 방법에 대해서 간단하게 알아본다. Prometheus 설정 Secret Pormetheus 를 오퍼레이터(Operator) 로 설치를 했을 경우에 다음과 같은 Secret 을 볼 수 있다.

data 필드를 보면 prometheus.yaml.gz 파일이름이 보이고 내용이 base64 스트링이 보인다. 이 prometheus.yaml.gz 파일을 받기 위해서는 간단히 bas64 스트링을 디코딩하고 나오는 스트링을 그냥 파일명으로 저장하면 된다.

간단하게 echo “<encoded-value>” | base64 -d prometheus.yaml.gz 으로 보면 된다. […]

HowTo

curl 사용법

curl 사용법을 정리해 본다. curl 사용법을 정리하는 이유는 쿠버네티스(Kubernetes) 를 사용하면서 테스트를 위해서 많이 사용할 명령어이기 때문이다. 쿠버네티스에서 주로 사용하는 방법은 인증서를 지정해 인증을 받아 실행시키는 API 호출이다. –cacert TLS 연결을 위해 인증서 파일을 지정하는데 사용 한다. 이 파일은 다중 CA 인증서를 포함할 수 있다. 여기서 ‘다중 CA 인증서’ 는 인증서 체인(Certification Chain) 을 말한다. 인증서는 반드시 PEM 포맷이여야 한다. –cert TLS 연결을 위한 클라이언트 인증서 파일을 지정하는데 사용 한다. 인증서는 보안 전송(Secure Transport) 를 위해서는 PKCS#12 포맷을 다른 엔진을 […]

HowTo

대칭키, 비대칭키 개념

컴퓨터를 다룬다는 건 쉬운게 아니다. 컴퓨터 자체는 공학 개념이지만 그 컴퓨터에서 작동하는 수 많은 일들은 과학에 속한다. 이러한 컴퓨터 과학분야는 매우 다양해서 대충이라도 알고 있는 것과 모르는 것의 차이는 시간이 갈 수록 커질 수 밖에 없다. 그 대충이라도 알아야하는 것중에 하나가 암호화다. 컴퓨터 네트워크를 위해서 필요한 보안을 가능하게 해주는 암호화. 개인 정보의 중요성을 가져오지 않아도 과거부터 컴퓨터 네트워크에서 암호화는 필요 이상이였다. 암호화 방법에서 데이터를 암호화 하는 키가 어떤건지를 말하는 것으로 대칭키, 비대칭키라는 말이 있다. 오늘은 암호화의 기초, 용어에 대해서 알아본다. […]

HowTo

Ansible, 특정 동작 대기/확인 하기

Ansible 을 사용할때에 특정 동작에 대해서 대기한 후에 진행하도록 해야할 필요가 있다. 대표적인 것이 Tomcat 과 같은 경우인데, Tomcat 이 시작을 하게 되면 애플리케이션이 동작하기까지 몇 초의 시간이 더 걸린다. 웹 애플리케이션이 정상적으로 접속을 받기 전에 또 다른 작업을 하게 될 경우에 문제가 된다. wait_for Ansible 에서는 위와같은 경우를 위해서 wait_for 라는 것을 지원한다. 예제를 보면 단번에 이해할 수 있다.

포트 80 을 체크해 10초동안 딜레이를 가진다. 다음 예제를 보자.

tomcat.pid 파일이 생성되면 다음 스텝으로 진행 된다. 또 […]

Installation

VcXsrv, 원격 X-Windows 클라이언트

집에서 테스트를 위해서 설치한 서버가 있는데, KVM 가상화를 해뒀다. OS 를 설치하기 위해서 virt-manager 를 자주 이용하는데, 노트북에 Mint 리눅스가 있기 때문에 이것을 이용하면 원격 X-Windows 에 접속해 GUI virt-manager 를 실행시킬 수 있다. 그런데, 매번 노트북을 켜서 하기도 귀찮고 그래서 윈도우즈에서 사용가능한 X-Windows 클라이언트를 필요했다. 이에 대해서 이미 NetSarang 에서 만든 XManager, Xming 이란것을 알고 있었다. XManager 는 사용이고, Xming 은 무료이지만 이전에 제대로 안되었던 기억이 있다. 혹시 다른게 있을까 싶어서 찾아보니 VcXsrv 를 알게되었는데 이것을 한번 사용해 보기로 […]

Uncategorized

Log4j 취약점, 한국 IT 보안에 대한 단상

몇일 전에 Apache 재단에서 제작해 배포하는 Log4j2 에 대해, 보안 취약점 등급 10등급으로 즉시 취약을 말하면서 보안설정과 패치를 하라는 권고를 했다. 이는 전 세계적인 현상으로 우리나라 뿐만 아니라 미국등에도 매우 심각한 현상임을 인지하고 뉴스에도 나올만큼 큰 뉴스거리가 되었다. Log4j2 만 문제냐 하지만 이 업계에 10년 넘게 밥벌이를 하는 입장에서 별로 놀랍지도 않고 왜 그렇게 호들갑이냐 하는 생각이 먼저 든다. 모르는 사람이야 뉴스에도 나오고 전문가들이 심각하다고 하는데 ‘호들갑’ 이라고 말하니 내가 뭔가 잘못 말한것처럼 생각이 들겠지만 실상을 알고 나면 그렇지 않다는걸 […]

Java

JEE 7, JEE 8 and Jakarta EE 8

Java EE 7 Specification Java EE 8 Specification Jakarta EE 8 Specification The Jakarta EE 8 has the same set of specifications from Java EE 8 with no changes in its features. The only change is the new process to evolve these specifications. With this, Jakarta EE 8 is a milestone in Java enterprise history, as it inserts these specifications in a new process to boost the specifications to a cloud-native application approach. Jakarta EE 8: The new era of […]

HowTo

RedHat Enterprise Linux Subscription 관리

현재 프로젝트를 하면서 RHEL 을 테스트용으로 사용하고 있다. Developer 라면 가입을 하면 Linux 와 JDK 등을 무료로 사용할 있는 서브스크립션을 얻을 수 있다. 문제 RHEL 8.4 를 다운로드 받아서 서브스크립션 인증을 하고 설치까지 다하고 나서 이미지를 백업했다. 그런데, 시간이 얼마지나지 않아 RHEL 8.5 로 업데이트가 되었다. 이미지를 백업한 것은 Minimal Installation 을 유지하기 위한 것이였다. RHEL 8.5 로 업그레이드를 하고 난 후에 문제가 있어서 다시 처음부터 해야할 상황이 되어서 RHEL 8.4 이미지를 가져와 부팅을 시켰다. 그리고 dnf 명령어를 이용해서 update […]