0) 기본 system packages Update
sudo apt update
Install the apt-transport-https package to access repository over HTTPS
1) OpenJDK 설치
sudo apt install openjdk-11-jdk
sudo apt-add-repository 'deb http://security.debian.org/debian-security stretch/updates main'
sudo apt install openjdk-8-jdk
요렇게 하면 됩니당. 참고 stackoverflowjava --version
openjdk 11.0.17 2022-10-18
OpenJDK Runtime Environment (build 11.0.17+8-post-Ubuntu-1ubuntu222.04)
OpenJDK 64-Bit Server VM (build 11.0.17+8-post-Ubuntu-1ubuntu222.04, mixed mode, sharing)
이렇게 나오면 성공!
2) ElasticSearch 8 설치
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-8.x.list
sudo apt-get update
sudo apt-get install elasticsearch
3) Kibana 설치
sudo apt-get install kibana
4) logstash, filebeat 설치
sudo apt-get install logstash && sudo apt-get install filebeat
4) net-tools 패키지, curl 패키지 설치
sudo apt-get install net-tools $$ sudo apt-get install curl
1) elasticsearch 실행
sudo systemctl start elasticsearch
Job for elasticsearch.service failed because a timeout was exceeded.
See "systemctl status elasticsearch.service" and "journalctl -xeu elasticsearch.service" for details.
이런 내용이 발생해서 확인을 해보니 아래처럼 뜬다...
ubuntu@ip-172-31-4-103:~$ systemctl status elasticsearch.service
× elasticsearch.service - Elasticsearch
Loaded: loaded (/lib/systemd/system/elasticsearch.service; disabled; vendor preset: enabled)
Active: failed (Result: timeout) since Thu 2023-01-05 08:39:14 UTC; 1min 3s ago
Docs: https://www.elastic.co
Process: 4715 ExecStart=/usr/share/elasticsearch/bin/systemd-entrypoint -p ${PID_DIR}/elasti>
Main PID: 4715 (code=exited, status=143)
CPU: 42.758s
Jan 05 08:37:50 ip-172-31-4-103 systemd[1]: Starting Elasticsearch...
Jan 05 08:39:10 ip-172-31-4-103 systemd[1]: elasticsearch.service: start operation timed out. Te>
Jan 05 08:39:14 ip-172-31-4-103 systemd[1]: elasticsearch.service: Failed with result 'timeout'.
Jan 05 08:39:14 ip-172-31-4-103 systemd[1]: elasticsearch.service: Unit process 4774 (java) rema>
Jan 05 08:39:14 ip-172-31-4-103 systemd[1]: elasticsearch.service: Unit process 4795 (controller>
Jan 05 08:39:14 ip-172-31-4-103 systemd[1]: Failed to start Elasticsearch.
Jan 05 08:39:14 ip-172-31-4-103 systemd[1]: elasticsearch.service: Consumed 39.936s CPU time.
CPU를 많이 쓰는 것도 아닌데? 우선 timeout 해제하니까 실행됐다^0^관련블로그
sudo systemctl enable elasticsearch
sudo systemctl status elasticsearch
하고 curl -XGET 'localhost:9200'
curl 을 날려서 확인할 수 있다!
ubuntu@ip-172-31-2-67:~$ curl -XGET 'localhost:9200'
{
"name" : "ip-172-31-2-67",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "D7S7Fei0QAuzcm2J_11-5A",
"version" : {
"number" : "7.17.8",
"build_flavor" : "default",
"build_type" : "deb",
"build_hash" : "120eabe1c8a0cb2ae87cffc109a5b65d213e9df1",
"build_date" : "2022-12-02T17:33:09.727072865Z",
"build_snapshot" : false,
"lucene_version" : "8.11.1",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
사실 이부분은 내가 프리티어인 t2.micro로 진행해서 cpu, ram이 딸려서 이렇게 나왔다...ㅎ.... 메모리 1기가라니
ES는 최소 4GB의 램이 필요하다고 합니다 → medium으로 올림
참고) AWS 인스턴트 유형
sudo nano /etc/elasticsearch/elasticsearch.yml
입력💡nano 모드 팁
i 누를 필요없이 바로 수정가능
Ctrl + O를 눌러 저장해주고, Ctrl + X로 나와준다.
(개인적으로 vi모드랑 헷갈려서 적음! vi모드하면 잘 안보여ㅜㅜㅜ)
sudo systemctl restart elasticsearch
재부팅~
해당 http로 들어가면 이렇게 설정한대로 출력되는 것을 확인할 수 있습니다!
sudo nano /etc/kibana/kibana.yml
입력elasticsearch.hosts: ["http://"ES 부여 IP":9200"]
도 변경해줬습니다.sudo systemctl restart kibana
재부팅~
키바나도 http를 통해 접속하면 이렇게 들어가지는게 보입니다!
이제 저장한 데이터들만 넣어주면 되겠....죠? (사망플래그^___^)
안녕하세요
5-1. ElasticSearch Config 수정에서 클러스터 이름부여(cluster.name)는 왜 필요한지
5-2. Kibana Config 수정에서 "ES 부여 IP"는 뭘 말하는지 잘 모르겠어서 ㅠㅠ
혹시 답변 가능하시다면 답 부탁드립니다 !!