메뉴 건너뛰기

Bigdata, Semantic IoT, Hadoop, NoSQL

Bigdata, Hadoop ecosystem, Semantic IoT등의 프로젝트를 진행중에 습득한 내용을 정리하는 곳입니다.
필요한 분을 위해서 공개하고 있습니다. 문의사항은 gooper@gooper.com로 메일을 보내주세요.


1. microservice pattern책의 부록 부분을 참고하여 window에서 리눅스를 사용할 수 있도록(WSL2등) 설치/설정한다.


2. kubernetes로 서비스를 기동할때 몇가지 수정해야할 부분이 있다. 

  (kubernetes가 버젼이 올라가면서 예제로 만들어진 kubernetes기동용 yaml과 script자체가 잘못되거나 없어진 옵션을 사용하고 있어 몇가지를 수정해야한다.)

  가. apps/v1beta1를 apps/v1로 수정

  나. extentions/v1beta1를 apps/v1로 수정

  다. selector.matchLabels.app에 app이름 추가

  라. metadata의 label항목에 app: app이름 추가


3. github소스 받아 build및 docker이미 생성

가. git clone github.com/microservice-patterns/ftgo-application

나. cd ftgo-application

다. ./gradlew buildContracts

라. ./gradlew assemble


4. container 배포

가. cd ~/ftgo-application/deployment/kubernetes/scripts

나. ./kubernetes-deploy-all.sh 

gooper@DESKTOP-PJ7F3IU:~/ftgo-application/deployment/kubernetes/scripts$ ./kubernetes-deploy-all.sh

secret/ftgo-db-secret created

service/ftgo-dynamodb-local created

statefulset.apps/ftgo-dynamodb-local created

job.batch/ftgo-dynamodb-local-init created

service/ftgo-kafka created

statefulset.apps/ftgo-kafka created

service/ftgo-mysql created

statefulset.apps/ftgo-mysql created

service/ftgo-zookeeper created

statefulset.apps/ftgo-zookeeper created

....................................................................................................................................connected

service/ftgo-cdc-service created

deployment.apps/ftgo-cdc-service created


5. container삭제

gooper@DESKTOP-PJ7F3IU:~/ftgo-application/deployment/kubernetes/scripts$ ./kubernetes-delete-all.sh

service "ftgo-cdc-service" deleted

deployment.apps "ftgo-cdc-service" deleted

secret "ftgo-db-secret" deleted

service "ftgo-dynamodb-local" deleted

statefulset.apps "ftgo-dynamodb-local" deleted

job.batch "ftgo-dynamodb-local-init" deleted

service "ftgo-kafka" deleted

statefulset.apps "ftgo-kafka" deleted

service "ftgo-mysql" deleted

statefulset.apps "ftgo-mysql" deleted

service "ftgo-zookeeper" deleted

statefulset.apps "ftgo-zookeeper" deleted


6. port forwarding하기 (이거 반드시 실행해줘야 한다)

가. cd ~/ftgo-application/deployment/kubernetes/scripts

나. ./port-forwards.sh


7. swagger ui를 이용한 서비스 테스트

가. consumer controller; http://127.0.0.1:8081/swagger-ui/

나. order controller, restaurant conroller; http://127.0.0.1:8082/swagger-ui/

다. kitchen controller, restaurant conroller; http://127.0.0.1:8083/swagger-ui/

라. basic error controller, operation handler, restaurant conrolle, web-mvc-link-handler ; http://127.0.0.1:8084/swagger-ui/

마. accounts controller; http://127.0.0.1:8085/swagger-ui/


* 수정해야 하는 파일 #1

gooper@DESKTOP-PJ7F3IU:~/ftgo-application/deployment/kubernetes/scripts$ ls -al ~/ftgo-application/*/src/deployment/kubernetes/*.yml

-rw-r--r-- 1 gooper gooper 1820 Jan 30 10:17 /home/gooper/ftgo-application/ftgo-accounting-service/src/deployment/kubernetes/ftgo-accounting-service.yml

-rw-r--r-- 1 gooper gooper 1542 Jan 30 10:17 /home/gooper/ftgo-application/ftgo-api-gateway/src/deployment/kubernetes/ftgo-api-gateway.yml

-rw-r--r-- 1 gooper gooper 1780 Jan 30 10:17 /home/gooper/ftgo-application/ftgo-consumer-service/src/deployment/kubernetes/ftgo-consumer-service.yml

-rw-r--r-- 1 gooper gooper 1802 Jan 30 10:17 /home/gooper/ftgo-application/ftgo-kitchen-service/src/deployment/kubernetes/ftgo-kitchen-service.yml

-rw-r--r-- 1 gooper gooper 2123 Jan 30 10:17 /home/gooper/ftgo-application/ftgo-order-history-service/src/deployment/kubernetes/ftgo-order-history-service.yml

-rw-r--r-- 1 gooper gooper 1931 Jan 30 10:17 /home/gooper/ftgo-application/ftgo-order-service/src/deployment/kubernetes/ftgo-order-service.yml

-rw-r--r-- 1 gooper gooper 1853 Jan 30 10:17 /home/gooper/ftgo-application/ftgo-restaurant-service/src/deployment/kubernetes/ftgo-restaurant-service.yml


* 수정해야 하는 파일 #2
gooper@DESKTOP-PJ7F3IU:~/ftgo-application/deployment/kubernetes/stateful-services$ ls -al
total 28
drwxr-xr-x 2 gooper gooper 4096 Jan 30 13:28 .
drwxr-xr-x 6 gooper gooper 4096 Jan 30 14:30 ..
-rw-r--r-- 1 gooper gooper  138 Jan 30 10:17 ftgo-db-secret.yml
-rw-r--r-- 1 gooper gooper 1651 Jan 30 13:21 ftgo-dynamodb-local.yml
-rw-r--r-- 1 gooper gooper 1215 Jan 30 13:26 ftgo-kafka-deployment.yml
-rw-r--r-- 1 gooper gooper 1250 Jan 30 13:24 ftgo-mysql-deployment.yml
-rw-r--r-- 1 gooper gooper 1081 Jan 30 13:25 ftgo-zookeeper-deployment.yml

* 수정해야 하는 파일 #3
~/ftgo-application/deployment/kubernetes/cdc-service/ftgo-cdc-service.yml

* 수정해야 하는 파일 #4(typo및 경로를 수정해야함)
gooper@DESKTOP-PJ7F3IU:~/ftgo-application/deployment/kubernetes/scripts$ ls -al *.sh
-rwxr-xr-x 1 gooper gooper 219 Jan 30 15:01 kubernetes-delete-all.sh
-rwxr-xr-x 1 gooper gooper 231 Jan 30 10:17 kubernetes-delete-volumes.sh
-rwxr-xr-x 1 gooper gooper 450 Jan 30 14:26 kubernetes-deploy-all.sh
-rwxr-xr-x 1 gooper gooper 156 Jan 30 10:17 kubernetes-deploy-and-test.sh
-rwxr-xr-x 1 gooper gooper  76 Jan 30 10:17 kubernetes-kill-port-forwarding.sh
-rwxr-xr-x 1 gooper gooper 316 Jan 30 10:17 kubernetes-run-end-to-end-tests.sh
-rwxr-xr-x 1 gooper gooper 513 Jan 30 10:17 kubernetes-wait-for-ready-pods.sh
-rwxr-xr-x 1 gooper gooper 621 Jan 30 10:17 port-forwards.sh

번호 제목 글쓴이 날짜 조회 수
53 [gson]mongodb의 api를 이용하여 데이타를 가져올때 "com.google.gson.stream.MalformedJsonException: Unterminated object at line..." 오류발생시 조치사항 총관리자 2017.12.11 4415
52 Caused by: java.sql.SQLNonTransientConnectionException: Could not read resultset: unexpected end of stream, read 0 bytes from 4 오류시 확인/조치할 내용 총관리자 2016.10.31 3768
51 List<Map<String, String>>형태의 데이타에서 중복제거 하는 방법 총관리자 2016.12.23 1690
50 jsoup 사용 예제 총관리자 2014.06.06 1506
49 마이바티스(MyBatis)쿼리로그 출력및 정렬하기 총관리자 2015.12.01 1450
48 lagom-linux용 build.sbt파일 내용 총관리자 2017.10.12 1300
47 [ftgo_application]Unable to infer base url오류 발생시 조치방법 gooper 2023.02.20 1298
46 Mybatis foreach 문법정리(상황에 따른 사용법) 총관리자 2015.11.10 1158
45 mybatis와 spring을 org.apache.commons.dbcp2.BasicDataSource의 DataSource로 연동할때 DB설정(참고) 총관리자 2016.10.31 990
44 [Mybatis]Spring과 연동하지 않고 Java+Mybatis 형태의 프로그램 샘플소스 총관리자 2016.09.01 808
43 python test.py실행시 "ImportError: No module named pyspark" 혹은 "ImportError: No module named py4j.protocol"등의 오류 발생시 조치사항 총관리자 2017.07.04 765
42 [springframework]Caused by: org.mariadb.jdbc.internal.util.dao.QueryException: Could not read resultset: unexpected end of stream, read 0 bytes from 4 오류 발생시 조치사항 총관리자 2017.01.23 680
41 AIX 7.1에 Python 2.7.11설치하기 총관리자 2016.10.06 651
40 초기 오류(java.lang.NoSuchMethodError)에 따른 후속 작업에서 오류(java.lang.NoClassDefFoundError)가 발생되는 상황(quartz에서 주기적으로 작업시) 총관리자 2016.08.29 591
39 servlet-api를 jar형태로 build할때 포함하지 말고 java 설치 위치의 jre/lib/ext에 복사하여 사용하는것이 좋다. 총관리자 2016.08.10 450
38 Eclipse실행시 Java was started but returned exit code=1이라는 오류가 발생할때 조치방법 총관리자 2016.11.07 397
37 embedded-cassandra의 data 저장위치 총관리자 2019.06.09 336
36 python2.7.4에서 Oracle DB(11.2)를 사용하기 위한 설정(RPM을 이용하여 RHEL 7.4에 설치) 총관리자 2021.11.26 333
35 VisualVM 1.3.9을 이용한 JVM 모니터링 file 총관리자 2016.10.27 332
34 [tomcat] logrotate를 이용하여 catalina.out로그파일 일별로 로테이션 저장하기 file 총관리자 2017.01.18 318

A personal place to organize information learned during the development of such Hadoop, Hive, Hbase, Semantic IoT, etc.
We are open to the required minutes. Please send inquiries to gooper@gooper.com.

위로