elasticsearch 7.3 설치하기






elasticsearch 7.3 설치하기 





이 포스팅에는 주기적으로 elasticsearch 설치하기 포스팅이 올라온다. 

가끔씩 검색 엔진 사용할 일이 있는데 그때마자 버전이 몇 개씩이나 올라가 있어서 결국 새로 설치하기 때문이다;;


일단 7 버전의 주요 변화는 한국어 형태분석기가 내장되었다고 하면서 

기존에 썼던 은전 한잎 플러그인이 더이상 호환이 안된다고 한다. 



그럼 일단 다운로드 받아서 실행해보자. 


버전별로 다운로드 받기 

https://www.elastic.co/kr/downloads/past-releases


문서 : https://www.elastic.co/guide/en/elasticsearch/reference/7.3/targz.html






wget "https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.3.2-linux-x86_64.tar.gz"



tar zxvf elasticsearch-7.3.2-linux-x86_64.tar.gz






 wget "https://artifacts.elastic.co/downloads/kibana/kibana-7.3.2-linux-x86_64.tar.gz"


  tar zxvf kibana-7.3.2-linux-x86_64.tar.gz





jvm.options


#-Xms1g

#-Xmx1g


-Xms10g

-Xmx10g



./elasticsearch 를 실행시키자 아래와 같은 오류가 나온다. 

이번엔 설정 방법도 달라졌나보다;;



[2019-09-30T20:12:48,973][INFO ][o.e.b.BootstrapChecks    ] bound or publishing to a non-loopback address, enforcing bootstrap checks

ERROR: [1] bootstrap checks failed

[1]: the default discovery settings are unsuitable for production use; at least one of [discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes] must be configured




discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes 셋 중에 하나는 세팅하라고 해서

가이드 문서를 따라 seed_hosts 를 아래와 같이 설정해봤다. 


discovery.seed_hosts: ["127.0.0.1", "[::1]"]



그렇지만 이제 warning 메세지가 ㅠㅠ



[2019-09-30T20:39:00,499][WARN ][o.e.c.c.ClusterFormationFailureHelper] [dd] master not discovered yet, this node has not previously joined a bootstrapped (v7+) cluster, and [cluster.initial_master_nodes] is empty on this node: have discovered [{dd}{FI-RklyNRN-xTlMDTDBgSA}{m592KpzdSTiLMt9RkycrdA}{ ... ; discovery will continue using [127.0.0.1:9300, [::1]:9300] from hosts providers and  .... {121.78.145.40}{121.78.145.40:9300}{dim}{ml.machine_memory=135097606144, xpack.installed=true, ml.max_open_jobs=20}] from last-known cluster state; node term 0, last-accepted version 0 in term 0


결국 검색해서 initial_master_nodes 까지 설정한 후에야 제대로 시작할 수 있었다. 


참고: https://linuxacademy.com/community/show/36639-elasticsearch-yml-changes-70/




node.name: master1

discovery.seed_hosts: ["127.0.0.1", "[::1]"]
#
# Bootstrap the cluster using an initial set of master-eligible nodes:
#
cluster.initial_master_nodes: ["서버ip"]


참고: https://linuxacademy.com/community/show/36639-elasticsearch-yml-changes-70/


# curl 'localhost:9200'

{

  "name" : "master1",

  "cluster_name" : "elasticsearch",

  "cluster_uuid" : "EgSc9q3mSC2URKZWBZC4FQ",

  "version" : {

    "number" : "7.3.2",

    "build_flavor" : "default",

    "build_type" : "tar",

    "build_hash" : "1c1faf1",

    "build_date" : "2019-09-06T14:40:30.409026Z",

    "build_snapshot" : false,

    "lucene_version" : "8.1.0",

    "minimum_wire_compatibility_version" : "6.8.0",

    "minimum_index_compatibility_version" : "6.0.0-beta1"

  },

  "tagline" : "You Know, for Search"

}





참고 : 

https://www.elastic.co/guide/en/elasticsearch/reference/7.3/discovery-settings.html


nori : 


https://www.elastic.co/guide/en/elasticsearch/plugins/6.4/analysis-nori-tokenizer.html#analysis-nori-tokenizer

https://www.elastic.co/guide/en/elasticsearch/plugins/6.4/analysis-nori.html



curl: symbol lookup error - anaconda 이슈 해결




curl: symbol lookup error - anaconda 이슈 해결






curl 'http://localhost:9200/?pretty'

curl: symbol lookup error: /root/anaconda3/bin/../lib/libcurl.so.4: undefined symbol: SSLv2_client_method



???? 갑자기 뭐지????



# whereis curl

curl: /usr/bin/curl /usr/bin/X11/curl /usr/include/curl /usr/share/man/man1/curl.1.gz





전체 경로를 다 써서 /usr/bin/curl 'https://www.naver.com' 으로 하면 된다 

뭐지 -_-;;


anaconda의 curl이 기존에 설치되어있던 curl보다 우선적으로 잡히고 있는데 

여기서 에러가 나는 것 같다. 검색해보니 conda의 curl을 업데이트하거나 삭제하면 된다고 한다. 



It seems this occurs because (1) anaconda/bin is prepended to the $PATH, and (2) anaconda includes its own anaconda/bin/curl which then takes over subsequent curl invocations in the deploy script. This seems to be misconfigured by default for SSL, causing the error (apparently looking for CA data in a nonexistent path).



일단 conda curl 업데이트를 먼저 해봤는데 다행히 문제없이 잘 되어서 해결 완료 


 


conda update curl 





참고: 

https://github.com/ContinuumIO/anaconda-issues/issues/8971


https://github.com/lsst/lsstsw/issues/40







postgreSQL 사용법 - 테이블 업데이트




postgresql 테이블 업데이트 방법 


( how to update postgresql table ) 





다른 테이블 필드 값으로 업데이트 




update table2 as f set field1 = h.field1 from  table1 as h where f.field2 = 2 and f.id = h.id;



같은 테이블 필드를 분리해서 업데이트 




update 테이블이름 set 본번 = split_part(지번, '-',1);



특정 값으로 전체 필드 업데이트 



update 테이블이름 set 칼럼이름='문자열' 









[ postgreSQL] 다른 테이블 복사하기





PostgreSQL 사용법 


다른 테이블 구조 & 데이터 복사하기 








다른 테이블 구조와 데이터 복사하기 




CREATE TABLE newtable AS SELECT * FROM oldtable;






다른 테이블 구조만 복사하기



CREATE TABLE newtable ( LIKE oldtable ); 






데이터 & 인덱스 &  constraint 등의 정보 다 같이 복사하기 


아래 두개의 sql 문을 차례로 실행한다. 복사 속도는 위의 방식이 더 빠르지만 인덱스 정보가 같이 복사됨.



 


create table newtable (like "oldtable" including all);

insert into newtable ( select * from "oldtable");




다른 테이블의 일부 필드만 복사하기 





insert into items_ver(item_id, item_group, name)

select * from items where item_id=2;



insert into items_ver (item_id, name, item_group)

select item_id, name, item_group from items where item_id=2;












  • 1122 2018.02.28 11:35 ADDR 수정/삭제 답글

    초대장 하나 받고싶어요 도와주세요 ramen1225@naver.com

워드프레스 이미지 업로드 안되는 이슈




평소처럼 워드프레스 포스팅을 작성하면서 이미지를 첨부하려고 했는데 

갑자기아래 메세지가 뜨면서 실패하였다. 


The uploaded file could not be moved to wp-content/uploads/2019/09.



이럴 경우 원인은 두가지 정도가 있다. 


1. 서버 용량. 


여러 명이 같이 사용하는 디렉토리일 경우 용량이 꽉 경우 이미지 및 백업 등의 기능들이 수행되지 않는다. 


리눅스의 경우 df -h 로 각 디렉토리별 용량을 확인하자


2. 디렉토리 permission 문제. 


755 권한이 제대로 wp-content/uploads 디렉토리의 하위 디렉토리까지 주어졌는지 확인한다.   









4대보험 법인카드로 납부하기




법인 4대보험은 보통 자동이체를 걸어두지만 

상황에 따라 법인카드로도 납부할 수 있습니다. 


국민건강보험 사이트에서 보험료 조회/납부를 선택합니다. 

 

https://si4n.nhis.or.kr/






정기분 또는 미납된 금액 둘다 납부가 가능합니다. 






보험별 납부도 가능하고 4대보험 일괄납부도 가능합니다. 







납부방법에서 법인카드를 선택하면 

간단하게 법인카드로 4대보험을 납부할 수 있습니다.