설치 24

쿠버네티스 패키지 매니저 Helm #2-3. Charts (디렉토리 구조)

쿠버네티스 패키지 매니저 Helm #2-3. Charts (디렉토리 구조)조대협 (http://bcho.tistory.com)디렉토리 구조Helm 차트의 디렉토리 구조는 다음과 같다. 직접 아래와 같은 디렉토리 구조에 파일을 각각 생성해도 되지만, 기본 템플릿을 helm create [차트명] 으로 생성할 수 있다.아래는 %helm create mychart 명령으로 생성한 디렉토리의 구조이다. mychart/ Chart.yaml # A YAML file containing information about the chart LICENSE # OPTIONAL: A plain text file containing the license for the chart README.md # OPTIONAL: A hum..

[팁] 우분투에서 minikube를 VM 없이 실행하기

요즘 쿠버네티스를 로컬환경에서 이것 저것 테스트하고 있는데, 실행 방법은 다음과 같다. 환경은 minikube를 인스톨하였다. (0.33.1 버전) sudo -E minikube start --vm-driver=none --extra-config=kubelet.resolv-conf=/run/systemd/resolve/resolv.conf 쿠버네티스를 우분투에서 실행할때, 별도의 Virtual Machine 없이 실행이 가능하다. VM 없이 실행하려면 --vm-driver=none 옵션을 줘야 한다. 이때, Local DNS Pod 가 기동될때 문제가 생기는데, 이를 해결하기 위해서 --extra-config=kubelet.resolv-conf=/run/systemd/resolve/resolv.conf ..

Istio #4 - Istio 설치와 BookInfo 예제

Istio #4 - 설치 및 BookInfo 예제조대협 (http://bcho.tistory.com)Istio 설치그러면 직접 Istio 를 설치해보자, 설치 환경은 구글 클라우드의 쿠버네티스 환경을 사용한다. (쿠버네티스는 오픈소스이고, 대부분의 클라우드에서 지원하기 때문에 설치 방법은 크게 다르지 않다.)쿠버네티스 클러스터 생성콘솔에서 아래 그림과 같이 istio 라는 이름으로 쿠버네티스 클러스터를 생성한다. 테스트용이기 때문에, 한존에 클러스터를 생성하고, 전체 노드는 3개 각 노드는 4 CPU/15G 메모리로 생성하였다. 다음 작업은 구글 클라우드 콘솔에서 Cloud Shell내에서 진행한다.커맨드 라인에서 작업을 할것이기 때문에, gCloud SDK를 설치(https://cloud.google...

아두이노 nodemcu로 온습도계를 만들어 보자

아두이노 nodemcu로 온습도계를 만들어 보자 조대협 (http://bcho.tistory.com) nodeMCU 개발환경 설정이 끝났으면 간단한 애플리케이션을 하나 만들어보자온습도계를 만들어보도록 한다. 온습도를 측정하여 LED로 출력하는 모듈을 개발해보겠다.개발이 끝나고 나서 아두이노 개발환경에 대한 결론 부터 이야기 하자면, 쉽다. 대부분의 파츠들에 대한 SDK가 제공되기 때문에 손쉽게 개발이 가능하다. 단 해당 파츠에 맞는 SDK를 찾는데 들억는 시간이 더 많다.온습도계 센서 (DTH11)개발에 사용할 온습도계 센서는 DTH11이라는 센서이다. 아래와 같이 생겼는데, 좌측이 데이타, 가운데가 3.3V, 가장 우측이 GND이다. 온도와 습도 두개를 측정하는데 데이타 단자가 하나이다. 아날로그 신호..

맥(OSX)에서 nodeMCU, Wemos D1 환경 설정하기

맥 OSX에서 nodeMCU와 Wemos D1 환경 설정하기 조대협 (http://bcho.tistory.com) 아두이노 우노로 아두이노 개발을 시작하고 서버 통신을 위해서 ESP8266 계열인 ESP01 칩을 사용했는데, ESP01은 연결도 까다롭고 소프트웨어 시리얼을 사용해서 SDK를 찾기 어려운점도 있었다. 개발하고자 하는 내용이 대부분 서버와 통신을 하는 부분이기 때문에, 보드를 우노에서 ESP8266 을 메인 MCU로 하는 보드로 변경하였다. 후보군으로 올른것이 nodeMCU v2와 Wemos D1 보드이다. nodeMCU의 경우에는 크기가 작고 성능이 뛰어날뿐 아니라, 널리 사용되는 보드이기 때문에, SDK나 예제를 구하기 쉬울것이라고 생각하였고, Wemos D1은 ESP8266을 포함하고 ..

배포 자동화 솔루션 Spinnaker - #2 설치

Spinnaker #2 - 설치 조대협 (http://bcho.tistory.com) 설치 설치 문서는 https://www.spinnaker.io/setup/ 를 참고하면 된다.설치 가이드를 보면 Quick Install 가이드와 수동 인스톨 가이드를 제공하고 있다. 퀵인스톨 : https://www.spinnaker.io/setup/quickstart/ 수동 인스톨 : https://www.spinnaker.io/setup/install/ 퀵 인스톨 가이드는 대규모 운영용으로는 어렵고 하나의 인스턴스에, 모든 마이크로 서비스가 인스톨 되는 모델로, 소규모 운영이나 또는 데모용으로 손쉽게 사용이 가능하다. 수동으로 인스톨 하는 방법은 다소 까다롭기 때문에, Quick Install 부터 진행하는 것을 ..

분산 로그 & 데이타 수집기 Fluentd

분산 로그 수집기 Fluentd 소개 조대협 (http://bcho.tistory.com) 요즘 들어 빅데이타 분석 관련 기술들을 보다보니, 역시나 여러 데이타 소스에서 데이타를 수집해 오는 부분이 여러 데이타 소스를 커버해야 하고, 분산된 여러 서버에서 데이타를 수집해야 하는 만큼 수집 컴포넌트의 중요성이 점점 더 올라가는 것 같다.그래서 요즘 빅데이타를 위한 데이타(및 로그) 수집 플랫폼을 보고 있는데, 예전 Flume 등 여러 로그 수집 솔루션이 있었는 것에 비해서 조금 정리된 느낌이라고나 할까? Scribed, Fluentd 그리고 ELK (Elastic Search + Logstash + Kibana 조합)에서 사용되는 Logstash등이 있는데, 대부분 Fluentd와 Logstash로 수렴 ..

Apache Spark 소개 - 스파크 스택 구조

Spark의 전체적인 스택 구조 조대협 (http://bcho.tistory.com) 스파크의 전체적인 스택 구조를 보면 다음과 같다. 인프라 계층 : 먼저 스파크가 기동하기 위한 인프라는 스파크가 독립적으로 기동할 수 있는 Standalone Scheudler가 있고 (그냥 스팍만 OS위에 깔아서 사용한다고 생각하면 된다). 또는 하둡 종합 플랫폼인 YARN 위에서 기동될 수 있고 또는 Docker 가상화 플랫폼인 Mesos 위에서 기동될 수 있다.스파크 코어 : 메모리 기반의 분산 클러스터 컴퓨팅 환경인 스팍 코어가 그 위에 올라간다. 스파크 라이브러리 : 다음으로는 이 스파크 코어를 이용하여 특정한 기능에 목적이 맞추어진 각각의 라이브러리가 돌아간다. 빅데이타를 SQL로 핸들링할 수 있게 해주는 S..

Apache Spark 클러스터 구조

Apache Spark Cluster 구조 스팍의 기본 구조는 다음과 같다. 스팍 프로그램은 일반적으로 “Driver Program”이라고 하는데, 이 Driver Program 은 여러개의 병렬적인 작업으로 나뉘어져사 Spark의 Worker Node(서버)에 있는 Executor(프로세스)에서 실행된다. 1. SparkContext가 SparkClusterManager에 접속한다. 이 클러스터 메니져는 스팍 자체의 클러스터 메니져가 될 수 도 있고 Mesos,YARN 등이 될 수 있다. 이 클러스터 메니저를 통해서 가용한 Excutor 들을 할당 받는다 2. Excutor를 할당 받으면, 각각의 Executor들에게 수행할 코드를 보낸다. 3. 다음으로 각 Excutor 안에서 Task에서 로직을 수..

Apache Spark 설치 하기

Apache Spark 설치 하기 조대협 (http://bcho.tistory.com) Spark 설치 하기 1. 스팍 홈페이지에서 다운로드. 다운로드시 Pre-built in Spark을 골라야 함. 여기서는 Hadoop 2.6용으로 빌드된 스팍을 선택한다. 2. 스팍 쉘을 실행 해보자 인스톨 디렉토리에서, %./bin/pyspark 을 실행하면, 위와 같이 파이썬 기반의 스팍 쉘이 실행됨을 확인할 수 있다. 3. 로깅 레벨 조정 및 간단한 스팍 예제 디폴트 로깅은 INFO 레벨로 되어 있기 때문에, 쉘에서 명령어를 하나라도 실행하면 INFO 메세지가 우루루 나온다. (몬가 할때 결과 값보다, 오히려 INFO 메세지가 많이 나온다.)그래서, conf/log4j.properties 파일을 conf/log..