ElasticSearch 설치
5417 단어 빅 데이터
설치 하기 전에 다음 사항 을 알 아 보 세 요.
Ø ElasticSearch 는 루트 가 아 닌 사용자 가 설치 해 야 합 니 다.
Ø ElasticSearch 의 실행 은 JDK 에 의존 하 며 ElasticSearch 를 설치 하기 전에 JDK 설 치 를 완료 해 야 합 니 다.
ElasticSearch 는 클 러 스 터 방식 으로 배 치 됩 니 다. 설치 계획 은 다음 과 같 습 니 다.
호스트 이름
IP 주소
사용자 그룹
사용자 이름 / 비밀번호
집 목록
base1
192.168.209.143
es
es/es
/usr/local/es
base2
192.168.209.151
es
es/es
/usr/local/es
base3
192.168.209.152
es
es/es
/usr/local/es
2. 사용자 그룹 과 사용자 만 들 기
세 대의 서버 에서 각각 다음 명령 을 실행 하여 ElasticSearch 의 설치 사용자 그룹 과 사용자 이름 을 만 드 십시오.
1. 사용자 그룹 을 만 듭 니 다.
# groupadd es
2. 사용자 이름 을 만 듭 니 다.
# useradd -g es es -d /usr/local/es
3. 사용자 비밀 번 호 를 수정 합 니 다.
# passwd es
4. 사용자 집 디 렉 터 리 를 만 듭 니 다.
# mkdir -p /usr/local/es
# chown es:es /usr/local/es
5. 사용자 에 게 sudo 권한 추가
# vi /etc/sudoers
파일 끝 에 줄 추가:
%es ALL=(ALL)ALL
3. 시스템 매개 변수 수정
1、 시스템 파일 / etc / security / limits. conf 를 수정 하고 파일 끝 에 다음 과 같은 내용 을 추가 합 니 다.
* hard nofile 65536
* soft nofile 65536
2. 커 널 매개 변 수 를 수정 합 니 다.
# sysctl -w vm.max_map_count=655360
# ulimit-v unlimited
4 、 JDK 설치
서버 마다 es 사용자 로 JDK 를 설치 하 십시오.
1、 JDK 설치 패키지 jdk - 8u66 - linux - x64. tar. gz 를 호스트 es 사용자 홈 디 렉 터 리 에 업로드 합 니 다.
2. 압축 풀기 JDK 설치 팩.
$ cd
$ mkdirjdk
$ tarzxvf jdk-8u66-linux-x64.tar.gz
$ mvjdk1.8* jdk
3. 환경 변 수 를 설정 합 니 다.
$ vi~/.bashrc
다음 내용 을 추가 합 니 다:
exportJAVA_HOME=/usr/local/es/jdk
exportJAVA_BIN=$JAVA_HOME/bin
exportPATH=$JAVA_HOME/bin:$PATH
exportCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
exportJAVA_HOME JAVA_BIN PATH CLASSPATH
4. 환경 변 수 를 발효 시킨다.
$ source~/.bashrc
5. JDK 설치 성공 여 부 를 확인 합 니 다.
$ java-version
JDK 버 전 정 보 를 표시 하면 JDK 설치 에 성 공 했 음 을 나 타 냅 니 다.
6. JDK 설치 패 키 지 를 삭제 합 니 다.
$ rm ~/jdk-8u66-linux-x64.tar.gz
5. ES 설치
base 1 호스트 에서 Elasticsearch 설 치 를 마 친 다음 설치 디 렉 터 리 를 다른 호스트 노드 로 복사 하 십시오.
1、 패키지 elasticsearch - 5.5.1. tar. gz 를 base 1 호스트 es 사용자 홈 디 렉 터 리 에 업로드 합 니 다.
2. 압축 해제 패키지.
$ tar zxvfelasticsearch-5.5.1.tar.gz
3. 설치 디 렉 터 리 이름 을 수정 합 니 다.
$ mv elasticsearch-5.5.1elasticsearch
4. 프로필 수정 ~ / elasticsearch / config / elasticsearch. yml.
$ vi ~/elasticsearch/config/elasticsearch.yml
아래 설명 을 참고 하여 수정 하 시기 바 랍 니 다.
cluster.name: elasticsearch
\ # 클 러 스 터 이름 elasticsearch.es 가 시작 되면 같은 클 러 스 터 이름 을 가 진 노드 를 클 러 스 터 아래 에 놓 습 니 다.
node.name:"es-node-01"
\ # 노드 이름.
path.data:/usr/local/es/data
\ # 데이터 파일 저장 경로
path.logs:/usr/local/es/logs
\ # 로그 파일 저장 경로
network.host:192.168.137.100
\ # 기본 네트워크 연결 주소
http.port:9200
\ # HTTP 포트 설정
discovery.zen.ping.unicast.hosts:["192.168.209.143", "192.168.209.151","192.168.209.152"]
\ # 클 러 스 터 에서 master 일 수 있 는 다른 노드 ip 를 가리 키 며, es 가 시 작 된 후에 클 러 스 터 의 다른 노드 를 발견 하지 못 하도록 합 니 다.
covery.zen.minimum_master_nodes:2
\ # 클 러 스 터 의 노드 중 master 자격 이 있 는 노드 가 몇 개 있 는 지 지정 합 니 다.대 집단 에 대해 서 는 3 개 이상 쓸 수 있다.
5. elasticsearch 폴 더 를 base 2 와 base 3 노드 로 복사 합 니 다.
$ scp -r [email protected]:/usr/local/es
$ scp -r [email protected]:/usr/local/es
6. base 2 와 base 3 노드 의 설정 파일 을 수정 합 니 다.
$ vi~/elasticsearch/config/elasticsearch.yml
base 2 노드 에서 수정 해 야 할 설정 매개 변 수 는 다음 과 같 습 니 다.
node.name:es-node-02
network.host:192.168.209.151
base 3 노드 에서 수정 해 야 할 설정 매개 변 수 는 다음 과 같 습 니 다.
node.name:es-node-03
network.host:192.168.209.152
7. ElasticSearch 를 시작 합 니 다.
모든 노드 에서 es 사용자 가 다음 명령 을 실행 하고 각 노드 의 ElasticSearch 를 배경 으로 시작 합 니 다.
$ cd ~/elasticsearch/bin
$ ./elasticsearch-d
8. Elasticsearch 군집 상 태 를 확인 합 니 다.
클 러 스 터 의 모든 노드 에서 curl - XGET 'http: /: 9200 / 을 실행 합 니 다.cluster / health? pretty '명령, 클 러 스 터 상 태 를 봅 니 다.예 는 다음 과 같다.
$ curl-XGET 'http://192.168.209.143:9200/_cluster/health?pretty'
{
"cluster_name" :"my-application",
"status" : "green",
"timed_out" : false,
"number_of_nodes" : 3,
"number_of_data_nodes" : 3,
"active_primary_shards" : 1,
"active_shards" : 3,
"relocating_shards" : 0,
"initializing_shards" : 0,
"unassigned_shards" : 0,
"delayed_unassigned_shards" : 0,
"number_of_pending_tasks" : 0,
"number_of_in_flight_fetch" : 0,
"task_max_waiting_in_queue_millis": 0,
"active_shards_percent_as_number" :100.0
부록 1:
설치 후 시작 할 때 오류 가 발생 했 습 니 다. 메모리 부족 을 알 립 니 다. 다음 과 같이 VM 의 메모 리 를 10g 으로 조정 하 더 라 도 시작 할 수 없습니다.
해결 방법 1:
network. host: 192.168.209.143 에 있 는 줄 설명 을 없 애 면 정상적으로 시작 할 수 있 습 니 다. 그러나 이러한 화 는 클 러 스 터 를 만 들 수 없습니다. 이 때 127.0.0.1 을 이 노드 의 시작 IP 로 사용 하기 때문에 모든 노드 가 이 렇 습 니 다. 그러면 다른 호스트 에서 접근 할 수 없습니다.
해결 방법 2:
다음 내용 으로 설정:
network.host: _eth0:ipv4_
이때 정상적으로 작 동 할 수 있다.
부록 2:
# cat /etc/security/limits.conf
* hard nofile 65536 * soft nofile 65536 * hard nproc unlimited * soft nproc unlimited * hard memlock unlimited * soft memlock unlimited * - as unlimited
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
spark 의 2: 원리 소개Google Map/Reduce 를 바탕 으로 이 루어 진 Hadoop 은 개발 자 에 게 map, reduce 원 어 를 제공 하여 병렬 일괄 처리 프로그램 을 매우 간단 하고 아름 답 게 만 들 었 습 니 다.S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.