분류 전체보기

    centos7 환경에서 Apache Ambari 2.7.5 버전 설치하기

    Ambari 2.7.5 버전을 설치해보자. Step 1 : 환경 준비 os 세팅 (jdk 1.8설치, postgresql 설치, ssh-keygen 설치, ntp 설치, hosts등록, 방화벽 끄기, SELINUX끄기, PackageKit 설치) 별도의 게시글로 설명한다. http 설치 # yum install httpd ## httpd 설치 후 버전 확인 $ yum list installed | grep httpd httpd.x86_64 2.4.6-97.el7.centos @updates httpd-tools.x86_64 2.4.6-97.el7.centos @updates # systemctl enable httpd # systemctl start httpd # systemctl status httpd..

    Spring 프로젝트 내 jsp에서 node.js 서버 호출하기

    프로젝트를 진행하다가 기존 spring 프로젝트 외에 node.js로 백엔드 소스를 추가적으로 구현했다. 기존 프로젝트에 spring백엔드와 jsp파일로 프론트엔드가 함께 있던 구조였는데, 새롭게 node.js가 추가되면 어떻게 호출해야하지? 하는 의문점이 생겼어서 정리하게 되었다. 결론 그냥 서버에 둘다 띄워두고 ajax로 호출했다. 사용한 방법 기존 spring 프로젝트는 8080으로 실행되고 있었고, 새로운 node.js가 추가되면서 3000포트를 사용하게 되었다. 호출하게되는 jsp 파일 내 ajax에서 $.ajax({ url : 'http://10.188.111.11:3000/upload' , data: formData , enctype: 'multipart/form-data' , async: ..

    오프라인 환경(폐쇄망)에 node랑 yarn 설치하기

    오프라인 환경(폐쇄망)에 node랑 yarn 설치하기

    간단하다. 그냥 인터넷 되는 외부망에서 각 패키지의 tar.gz 파일을 받아서 내부망에 옮기면 된다. 외부망 작업 node 다운로드 https://nodejs.org/download/release/v14.17.5/ Index of /download/release/v14.17.5/ nodejs.org 이미 os에 맞게 컴파일 된 바이너리 버전을 사용했다. 나는 centos7환경에서 작업했고 아래 파일을 다운받았다. [node-v14.17.5-linux-x64.tar.gz] yarn 다운로드 yarn 은 공식사이트에 다운로드를 npm install yarn 말고 따로 제시해주지 않은거 같다. 그래서 공식 github에 가서 tar.gz을 다운받았다. https://github.com/yarnpkg/yarn/..

    node.js 파일 업로드 모듈 정리(multer, connect-busboy) (중간저장 없이 업로드)

    node.js 파일 업로드 모듈 정리(multer, connect-busboy) (중간저장 없이 업로드)

    이번에 node.js로 파일 업로드와 다운로드 모듈을 개발했다. 맨날 스프링으로만 개발했었는데 node.js로 개발하는건 처음이라 정리해놓고자 한다. 기존에 스프링으로 구현해놓은 메인? 백엔드는 존재하는 상태였고, 이번에 파일 업로드/다운로드 기능이 새로 추가되면서 별도의 node.js 모듈로 구현했다. 이유는,, 아무래도 올리게되는 파일의 형태가 영상, 사진 등의 형태여서 파일 업로드시 부하가 가기 마련인데, 기존 와스에 최대한 영향을 덜 주고, node.js 서버에만 부하를 주기 위함이였다. 결론 multer는 파일을 전송단계에서 저장하고 전송하게 된다. 나는 저장 없이 바로 스트림으로 목적지까지 업로드해야했기 때문에 connect-busboy를 사용했다. multer와 connect-busboy로 ..

    크롬에서 캐시 비우기 및 강력 새로고침

    크롬에서 캐시 비우기 및 강력 새로고침

    1. f12를 눌러서 개발자 도구를 킨다 2. 새로고침 아이콘 우클릭하면 캐시 비우기 및 강력 새로고침이 나온다. 개발자도구 안켜져있으면 안나온다.. ㅎㅎ 크롬 설정 > 개인정보 및 보안 > 인터넷 사용 기록 삭제 에서도 지울 수 있다.

    이중화 되어있는 웹서버로 ajax 호출하기

    현재 진행중인 프로젝트는 WEB1, WEB2, WAS1, WAS2 이렇게 각각 웹과 와스가 이중화되어있다. jsp에서 ajax호출할때 url에 호출하는 서버의 주소를 넣을텐데, 이런 경우에는 어떤 주소를 적어야 하는지 몰라서 삽질했었다.. 결론 WEB1과 WEB2를 로드밸런싱 해 놓은 별도의 IP주소로 호출해야 한다. 만약 WEB1의 IP주소가 10.188.111.11 이고 WEB2의 IP주소가 10.188.222.22 이면 로드밸런싱 되어있는 IP주소(L4스위치)가 존재할것이다.. 찾아보자. 그 IP주소가 만약 10.188.333.33 이라면 아래와 같이 10.188.333.33으로 호출해야 한다. $.ajax({ url: 'http://10.188.333.33:3000/upload' , data: p..

    리눅스 방화벽 오픈 여부 확인

    방화벽이 오픈되어있는지 확인하는 방법에는 여러가지가 있겠지만 그중 내가 확인했던 방법을 정리한다. 나는 centos7 환경에서 작업했다. 1. telnet으로 확인하기 ex) 현재 접속하고 있는 서버에서 -> 192.168.xxx.xxx ip주소의 3000포트 방화벽이 열려있는지 확인하고 싶을 때 $ telnet 192.168.xxx.xxx 3000 아래와 같이 결과가 나오면 연결이 되어있는거다. Trying 192.168.xxx.xxx... Connected to 192.168.xxx.xxx. Escape character is '^]'. 2. nc로 확인하기 telnet이 없으면 'yum install telnet' 하면 되겠지만, 간혹 규정상 telnet을 설치하면 안되는 경우가 있을수도 있다. 이..

    오프라인 환경(폐쇄망)에서 npm 패키지 install 하기(yarn offline)

    오프라인 환경(폐쇄망)에서 npm 패키지 install 하기(yarn offline)

    프로젝트를 진행하다 보면 종종 인터넷이 안되는 환경에서 작업해야하는 경우가 있다. npm은 온라인에서 패키지를 받아오는데, 인터넷이 안되는 환경에서는 패키지 다운로드를 할 수 없다. 그렇다고 node_modules 폴더 자체를 가져가기에는 정말 어마어마하게 크다... 따라서 이런 경우에는 어떻게 진행했었는지 정리해놓고자 한다. 다른 방식이 있을수도 있으나.. 그냥 내가 했던 방식이다.. 환경 내부망pc(인터넷 안되는 pc) 1대, 외부망pc 1대 결론 yarn으로 패키지 설치 -> 패키지들을 tar.gz으로 묶기 -> 이 tar.gz들을 오프라인 환경으로 가져가서 yarn install 하기 npmbox 라는 패키지를 사용해서도 가능하지만, 나는 패키지를 사용하지않고 yarn으로 했었다. 먼저 인터넷 되..

    자주쓰는 리눅스 명령어 (centos7) vi 명령어

    실무하면서 많이 쓰는 리눅스 명령어를 정리해놓고자 한다. 그냥 내가 많이 쓰는거다.. 내 기준.. 리눅스 명령어 - 파일 찾기 $ find ./ -name *.log 현재 경로부터 안에있는 모든 파일들 중에 .log 로 끝나는 파일을 찾아라 - 문자열 찾기 $ grep -r '찾을문자' 현재 경로부터 안에있는 모든 파일들 안에 찾을문자가 포함된 모든 파일과 위치를 찾아라 - tar.gz 압축 $ tar -zcvf 폴더명.tar.gz 폴더명 $ tar -zcvf mydir.tar.gz mydir/ - tar.gz 압축 풀기 $ tar -zxvf 폴더명.tar.gz $ tar -zxvf mydir.tar.gz - 현재 떠있는 포트 확인 $ netstat -nltp $ netstat -nltp | grep 8..

    Hive Architecture

    Hive Architecture

    Hive Architecture Hive의 주요 Component들은 다음과 같다. UI - 사용자를 위한 유저인터페이스는 시스템에 쿼리와 작업을 제출 할 수 있다. Driver - 쿼리를 받는 컴포넌트이다. Driver는 세션 핸들의 개념을 실행하고 JDBC/ODBC 인터페이스 기반의 API 를 실행하고 가져오는 것을 제공한다. Compiler - 쿼리를 분석하는 컴포넌트로 각기 다른 쿼리 블록과 쿼리 표현에서 의미 분석을 하고 테이블의 지원과 함께 실행 계획과 메타스토어에서 찾은 파티션 메타데이터를 생성한다. Metastore - 다양한 테이블의 모든 구조 정보와 칼럼과 칼럼 타입 정보를 포함한 웨어하우스내 파티션을 저장하는 컴포넌트로, serializers 와 deserializers 는 데이터를 ..