elasticsearh에 형태소 분석기 테스트를 위한 샘플 데이터를 찾다가 

위키피디아에서 제공 하는 dump로 작업 하는것이 보여서 정리한다.


OS 환경 : CentOS 7


위키피디아  dump

위키백과:데이터베이스 다운로드

pages-articles.xml.bz2 - 일반 문서의 최신 버전만이 묶여 있고, 전체 편집 역사는 들어있지 않습니다. 대부분의 이용자는 이 파일을 이용하면 됩니다.


curl -LOk https://dumps.wikimedia.org/kowiki/20180601/kowiki-20180601-pages-articles.xml.bz2


XML을  JSON으로 변환하자

https://github.com/cemsbr/wikipedia2json

python3 환경에서 실행되는데  파이썬은 hello world만 해본적이 있어서 구글링으로 삽질 후에 실행에 성공했다.


기본 설치 패키지

yum -y install https://centos7.iuscommunity.org/ius-release.rpm

yum -y install python36u bzip2

환경 구성 및 실행

cd wikipedia2json

python3.6 -m venv venv

source venv/bin/activate

cp scripts/w2j.py .

bzcat kowiki-*.xml.bz2 | ./w2j.py >kowiki.json

deactivate



60버전 이상에서 기능 지원함


주소창에 about:config 입력

검색 network.trr

network.trr.bootstrapAddress : 1.1.1.1

내 경우엔 1.1.1.1이 접속이 되지 않아 1.0.0.1 사용

network.trr.mode : 3

3 :DOH만 사용

2: DOH 실패시 기존대로 다시 시도

network.trr.uri  : https://cloudflare-dns.com/dns-query

다른 주소도 있는것 같은데 1.1.1.1 과 같은 서비스 주소를 사용하는편이 좋겠다 생각함



'지식창고 > 프로그램' 카테고리의 다른 글

firefox Dns over HTTPS (DOH) 적용 하기  (0) 2018.05.17
nginx post 405 not allow 문제  (0) 2016.11.24
크롬 마우스 제스쳐 확장  (0) 2016.09.21
ConEmu 설정  (0) 2016.08.31
Laravel - 기본 라우팅  (0) 2015.05.19
Laravel - 홈스테드 설치와 기본 설정  (0) 2015.05.19

none에서 oxygen 으로 업그레이드 방식으로 업그레이드 했으나 삐걱 거려서

oxygen으로 새로 설치 하고서 설치한 플러그인 목록을 기록 차원에서 남긴다.


BuildShip : gradle build

https://projects.eclipse.org/projects/tools.buildship


Darkest Dark Theme with DevStyle : 테마 관리

https://www.genuitec.com/products/devstyle/


Minimalist Gradle Editor : build.gradle 에디터

Properties Editor : 프로퍼티 에디터 한글지원

grep console : console 로그 메시지 지원


oxygen 장점

mac에서  한글 입력 문제가 발생하지 않는다.


centos 7에 epel 패키지를 설치 하고  nodejs를 설치하면 v6이 설치된다.


한글 공식 문서에는 v7 까지만 설명되어 있음

https://nodejs.org/ko/download/package-manager/#enterprise-linux-fedora


영문 공식 문서에 v9 까지 설명되어 있음

https://nodejs.org/en/download/package-manager/#enterprise-linux-and-fedora


curl -sL https://rpm.nodesource.com/setup_8.x | bash -
yum install nodejs



v8에는 npm 5.6.0 이 포함되어 있으므로 nodejs만 설치하면 npm은 별도 설치 하지 않아도 된다.



'지식창고 > 리눅스' 카테고리의 다른 글

cectos 7 에 nodejs v8 설치  (0) 2018.01.24
redis-sentinel 삽질기  (0) 2018.01.10
centos dns lookup 느린 경우  (0) 2016.11.25
CentOS 7에 rabbitMQ 설치  (0) 2016.10.07
goaccess 설치 사용  (0) 2016.10.06
windows10의 리눅스 환경 설정 하기  (0) 2016.08.05

인터넷 검색을하면 쓸만한 redis-cluster 구성의 글이 많이 보인다.

쉽게 테스트가 진행될 것이라 생각했었다.


처음에 잘못 생각하고 있던 내용들도 보정이 되었다.

sentinel이 마스터와 슬레이브 모두 감시 하는거로 생각 했었는데 그게 아니였다. sentinel은 마스터만 감시하며 3대중 다수결 원칙에 따라 새로운 master를 선출 한다.


master-slave 구성까지는 쉽게 진행이되었다. 

sentinel 구성에서 부터 문제가 발생했다.


master를 정지 시켰는데 새로운 master 선출이 되지 않고 sdown상태에서 머물러 있기만 했다.


어디가 문제지? 내가 뭘 빼먹은걸까?


sentinel 로그에 +sdown sentinel 이 찍힌다. 3대의 sentinel들이 서로를 인식하지 못하고 있는것으로 보였다.

             +----+
             | M1   |
             | S1    |
             +----+
                  |
+----+       |      +----+
| R2   |----+----| R3  |
| S2   |               | S3  |
+----+              +----+


인터넷 문서들은 소스 컴파일해서 한대에서 포트를 다르게 진행하고 있었고

나는 서버 3대에 나눠서 yum 으로 설치 후 구성 테스트 중이였다. 

설정이 하나 빠진게 분명했다.


redis를 재설치 하고 처음부터 설정했다.

master redis.conf

bind <masterip>
requirepass foobared

slave redis.conf

bind <masterip>
slaveof <masterip> <masterport>
masterauth <master-password>
requirepass foobared

sentinel conf

bind <ip address>
sentinel monitor <master-name> <ip> <redis-port> <quorum>
sentinel auth-pass <master-name> <password>



sentinel 설정에도 bind를 설정하니 로그에 -sdown sentinel이 찍히면서 서로를 인식했다.

master를 정지 시키자 새로운 마스터가 선출되는게 로그에 찍힌다.

'지식창고 > 리눅스' 카테고리의 다른 글

cectos 7 에 nodejs v8 설치  (0) 2018.01.24
redis-sentinel 삽질기  (0) 2018.01.10
centos dns lookup 느린 경우  (0) 2016.11.25
CentOS 7에 rabbitMQ 설치  (0) 2016.10.07
goaccess 설치 사용  (0) 2016.10.06
windows10의 리눅스 환경 설정 하기  (0) 2016.08.05

배포된 버전의 zip파일을 풀어서 수정하는 방법 알려져 있으나 직접 빌드 해보고 싶다면 다음과 같이 진행을 한다.


git, java, maven은 설치되어 있다고 가정한다.


소스를 다운로드 받고


git clone https://bitbucket.org/eunjeon/mecab-ko-lucene-analyzer.git


다음의 세파일의 elasticsearch 버전을 필요한 버전으로 수정을 한다.



mecab-ko-lucene-analyzer/pom.xml

    <dependency>
      <groupId>org.elasticsearch</groupId>
      <artifactId>elasticsearch</artifactId>
      <version>5.5.2</version>
    </dependency>


mecab-ko-lucene-analyzer/elasticsearch-analysis-mecab-ko/pom.xml


  <version>5.5.2.0-SNAPSHOT</version>

mecab-ko-lucene-analyzer/elasticsearch-analysis-mecab-ko/plugin-descriptor.properties

version=5.5.2.0
elasticsearch.version=5.5.2


메이븐 빌드


mvn package -Dmaven.test.skip=true


패키징
./make-package.sh


정상적으로 완료가 되면

elasticsearch-analysis-mecab-ko-5.5.2.0.zip


파일이 생성된다.


  • 2018.01.02 15:10

    비밀댓글입니다

구글링하다가 어디선가 찾았는데


지금보니 해결책만 남겨있어서 올림


다음의 파일을 열어서

vim /etc/resolv.conf

다음줄을 상단에 추가
options single-request-reopen

'지식창고 > 리눅스' 카테고리의 다른 글

cectos 7 에 nodejs v8 설치  (0) 2018.01.24
redis-sentinel 삽질기  (0) 2018.01.10
centos dns lookup 느린 경우  (0) 2016.11.25
CentOS 7에 rabbitMQ 설치  (0) 2016.10.07
goaccess 설치 사용  (0) 2016.10.06
windows10의 리눅스 환경 설정 하기  (0) 2016.08.05

nginx에 static파일을 post로 요청하면 405 에러가 발생한다. ( get 은 정상 작동 get만 쓰라는건가?)


curl -d -O  URL 해보면 다음과 같은 에러가 보인다.


$ curl -d -O url
<html>                                                                   
<head><title>405 Not Allowed</title></head>                              
<body bgcolor="white">                                                   
<center><h1>405 Not Allowed</h1></center>                                
<hr><center>nginx/1.10.2</center>                                        
</body>                                                                  
</html>                                                                  



아파치 서버에서는 아무 문제 없던 코드라 당황.


구글링해서 설정 추가 하니 잘 동작한다.


405에러인경우 에러페이지를 던지는 대신 요청한 URL을 주는 방식인것 같다.


error_page 405 = $uri;



참고 :

http://blog.brainless.in/2012/01/server-static-files-from-nginx-for-post.html




'지식창고 > 프로그램' 카테고리의 다른 글

firefox Dns over HTTPS (DOH) 적용 하기  (0) 2018.05.17
nginx post 405 not allow 문제  (0) 2016.11.24
크롬 마우스 제스쳐 확장  (0) 2016.09.21
ConEmu 설정  (0) 2016.08.31
Laravel - 기본 라우팅  (0) 2015.05.19
Laravel - 홈스테드 설치와 기본 설정  (0) 2015.05.19

사용하는 프로그램의 업데이트가 있어서 그걸 작업하는중에 뭔가 이상했다.


재부팅을 하고 나니 시작 메뉴에 사용하던 아이콘들이 죄다 사라졌다.

윈도우 10의 시작 메뉴 버그가 나에게도 찾아왔다.


구글링하고 이거저거 해보기전에 바로가기가 제대로 있는지 확인


시스템 시작 메뉴

C:\ProgramData\Microsoft\Windows\Start Menu


사용자 시작 메뉴

C:\Users\계정명\AppData\Roaming\Microsoft\Windows\Start Menu


Start Menu는 한글 윈도우에서는 "시작 메뉴" 라고 표시된다.



바로가기는 그대로 있고 클릭하면 실행에 지장은 없다. 시작메뉴 아이콘만 새로 빌드되면 되지 싶었다.


일단 표시되는 바로가기는 사용자 아이콘은 나오고 시스템의 시작메뉴가 나오지 않는 상태였다.


그래서 시작메뉴의 아이콘 하나를 사용자 메뉴에 복사했더니


시스템 내부적으로 새로 추가된 아이콘을 처리 하기 시작했다. 그러면서 시스템의 시작메뉴 아이콘이 보여진다.



오호~~ 한참을 웅웅 거리며 스캔하고 빌드한 후 다시 시작메뉴를 살펴보니 아이콘이 돌아왔다.



'지식창고 > 삽질' 카테고리의 다른 글

윈도우10 시작 메뉴 문제  (0) 2016.10.25
phpstorm gulp 설정  (0) 2016.07.01

CentOS 7 에 rabbitMQ 설치 테스트 과정을 정리함


방화벽은 켜두지 않았지만 명령만 정리함


# https://www.rabbitmq.com/install-rpm.html

#pre-install
yum -y install epel-release
yum -y update
yum -y install erlang

#rabbitMQ
rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc
wget https://www.rabbitmq.com/releases/rabbitmq-server/v3.6.5/rabbitmq-server-3.6.5-1.noarch.rpm
yum -y install rabbitmq-server-3.6.5-1.noarch.rpm

#start rabbitMQ
service rabbitmq-server start
#check status
service rabbitmq-server status
#install web admin plugin
rabbitmq-plugins enable rabbitmq_management

#check port 6938,15672
firewall-cmd --permanent --zone=public --add-port=15672/tcp
firewall-cmd --permanent --zone=public --add-port=6938/tcp
firewall-cmd --reload
firewall-cmd --zone=public --list-ports

# http://localhost:15672 guest/guest
# if guest login fail add user
rabbitmqctl add_user myuser mypass
rabbitmqctl set_user_tags myuser administrator
rabbitmqctl set_permissions -p / myuser ".*" ".*" ".*"


'지식창고 > 리눅스' 카테고리의 다른 글

redis-sentinel 삽질기  (0) 2018.01.10
centos dns lookup 느린 경우  (0) 2016.11.25
CentOS 7에 rabbitMQ 설치  (0) 2016.10.07
goaccess 설치 사용  (0) 2016.10.06
windows10의 리눅스 환경 설정 하기  (0) 2016.08.05
vsftpd 여러개의 설정으로 운영  (0) 2015.09.30