Docker に Elasticsearch 7.6.2 をインストールするチュートリアル

Docker に Elasticsearch 7.6.2 をインストールするチュートリアル

Dockerをインストールする

Docker をインストールする必要がありますが、それ以上の指示はありません。

Elasticsearchをインストールする

注: 使用されているバージョンは7.6.2ですが、他のバージョンを選択することもできます。

画像をプルする

docker pull elasticsearch:7.6.2

コンテナを起動する

docker run --restart=always -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" \

-e ES_JAVA_OPTS="-Xms512m -Xmx512m" \

--name='elasticsearch' --cpuset-cpus="1" -m 2G -d elasticsearch:7.6.2

例:

1. -v /opt/hanlp:/opt/hanlp hanlp単語分割を使用する場合は、単語ライブラリをマウントする必要があります。

2. ES_JAVA_OPTSはパラメータを設定できます

3. 単一ノードの起動

アクセスアドレス: http://172.18.63.211:9200

プラグインのインストール

ikトークナイザーをインストールする

対応するバージョンをダウンロードしてください: elasticsearch-analysis-ik

IK をインストールする理由、軽量。設定された語彙は、中国語の単語分割にも使用できます。HanLP は重量級で、多くのアルゴリズムが組み込まれているため、単語単位の分割には適していません。

# オフラインインストール、対応するプラグインのzipをダウンロード
# https://github.com/medcl/elasticsearch-analysis-ik
docker cp /opt/elasticsearch-analysis-ik-7.6.2.zip elasticsearch:/opt
docker exec -it elasticsearch bash
CDプラグイン/
mkdir 分析 -ik
解凍 -d /usr/share/elasticsearch/plugins/analysis-ik/ /opt/elasticsearch-analysis-ik-7.6.2.zip 
出口
docker で elasticsearch を再起動する

カスタム語彙

カスタム辞書

リモート語彙

一般的なメンテナンスコマンド

# すべてのインデックス情報を表示する GET /_cat/indices?pretty
# ノード監視 GET /_cat/health?pretty
# どのプラグインがインストールされているか? GET _cat/plugins

その他のコマンドについては、使用時に説明します。この記事では、主にインストールと展開について説明します。

監視および開発ツール Kibana

Kibana は、Elasticsearch 向けに設計されたオープンソースの分析および視覚化プラットフォームです。 Kibana を使用して、Elasticsearch インデックスに保存されているデータを検索、表示、操作できます。高度なデータ分析と視覚化を簡単に実行し、アイコンの形で表示できます。

私たちのサーバーのIPは172.18.63.211です

Docker 実行 --restart=always --link elasticsearch:elasticsearch --name kibana -p 5601:5601 -d kibana:7.6.2

コンテナに入り、設定ファイルkibana.ymlを変更します。

docker exec -it kibana bash
vi config/kibana.yml
########################
# es elasticsearch.hosts のアドレスを指定します: ["http://172.18.63.211:9200"]
# 中国語 i18n.locale: "zh-CN"
# 外部ネットワークアクセス用のオプションの server.host を変更します: "0.0.0.0"
出口
########################
docker キバナを再起動

オープンアドレス: http://172.18.63.211:5601

テスト単語分割ツール

POST_analyze
{
 「テキスト」:「Brassica napus におけるスルホニルウレア系除草剤耐性遺伝子 BnALS3R を検出するためのプライマーとその応用」
 「アナライザー」: 「hanlp」
}

インデックスライブラリを追加しました

PUTの達成
{
 "設定": {
 「破片の数」: 1,
 「レプリカ数」: 1
 }
}

PUT 実績/_マッピング
{
 「プロパティ」: {
 「id」: {
  "タイプ": "テキスト"
 },
 "所有者": {
  "タイプ": "テキスト"
 },
 "タイトル": {
  "タイプ": "テキスト",
  「アナライザー」: 「hanlp」
 },
 "説明": {
  "タイプ": "テキスト",
  「アナライザー」: 「hanlp」
 },
 「更新時間」:{
  「タイプ」: 「日付」
 }
 }
}

データ同期 Logstash

ログの収集、解析、変換、データの同期などに使用されます。

インストール

docker pull ログスタッシュ:7.5.0

設定ファイルディレクトリ

mkdir -p /usr/local/logstash/config
/usr/local/logstash/config に移動します
logstash.yml をタッチする
vi log4j2.プロパティ
#####次のコンテンツを追加します。logger.elasticsearchoutput.name = logstash.outputs.elasticsearch
logger.elasticsearch出力レベル = デバッグ
#####
vi パイプライン.yml
####
- パイプラインID: logstash-match
 パス.config: "/usr/share/logstash/config/*.conf"
 パイプラインワーカー: 3
####

同時に、MySQL ドライバー パッケージを構成ファイルに配置する必要があります。

次に設定ファイルを作成します

以下は、MySQL データを es に定期的に同期する例です。 *

# ログスタッシュ-mysql-es.conf
入力{
 jdbc{
 jdbc_driver_class => "com.mysql.cj.jdbc.Driver"
 jdbc_connection_string => "jdbc:mysql://172.18.63.211:3306/open_intelligence?characterEncoding=utf8&serverTimezone=Asia/Shanghai"
 jdbc_user => "docker"
 jdbc_password => "docker@12345"
 jdbc_paging_enabled => 真
 jdbc_ページサイズ => 10000
 jdbc_fetch_size => 10000
 接続再試行回数 => 3
 接続再試行の待機時間 => 1
 jdbc_pool_timeout => 5
 列の値を使用する => true
 追跡列 => "更新時間"
 追跡列タイプ => "タイムスタンプ"
 record_last_run => 真
 last_run_metadata_path => "/usr/share/logstash/mysql/goods_achievement"
 ステートメント => "select * from goods_achievement where update_time > :sql_last_value"
 スケジュール => "* */30 * * * *"
 }
}

フィルター{
 変異 {
 分割 => { "feature1" => ";" }
 }
 変異 {
 分割 => { "feature2" => ";" }
 }
 変異 {
 分割 => { "feature3" => ";" }
 }
}

出力{
 エラスティックサーチ
 ドキュメントID => "%{id}"
 インデックス => "goods_achievement"
 ホスト => ["http://172.18.63.211:9200"]
 }
}

起動する

docker run -d -p 5044:5044 -p 9600:9600 -it \
-e TZ=アジア/上海 \
--name logstash --restart=常に\
-v /usr/local/logstash/config/:/usr/share/logstash/config/ \
-v /usr/local/logstash/mysql/:/usr/share/logstash/mysql/ \
--privileged=true \
ログスタッシュ:7.6.2

エラーが報告された場合

エラー: com.mysql.cj.jdbc.Driver がロードされていません。:jdbc_driver_library が設定されていません。クラスパスに適切なドライバー クライアント ライブラリを含めましたか?

ドライバー、mysql-connector-java-xxxx-bin.jarをlogstashディレクトリ\logstash-core\lib\jarsにコピーしてみてください。

のように:

/usr/local/logstash/config に移動します

docker cp mysql-connector-java-8.0.17.jar ログスタッシュ:/usr/share/logstash/logstash-core/lib/jars

検出プロファイル

bin/logstash -f /usr/local/logstash/config/mysql-es-patent.conf -t

完了です。開発を開始できます。

Docker に Elasticsearch 7.6.2 をインストールする方法に関する上記のチュートリアルは、私が皆さんに共有できるすべてです。これが皆さんの参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Docker に ElasticSearch と Kibana をインストールする際の問題と解決策
  • DockerにElasticsearch7.6クラスタをインストールしてパスワードを設定する方法
  • Docker に ElasticSearch をインストールする方法を 1 つの記事で解説
  • ElasticSearch と ElasticSearch-Head の Docker デプロイメントの実装
  • Dockerを使用してelasticsearchとheadプラグインをインストールする方法を説明します

<<:  Markodwnによるタイトル配置による同期スクロールのアイデアの詳細な説明

>>:  MySQL ロックブロッキングの詳細な分析

推薦する

Docker で Docker0 ブリッジのデフォルトのネットワーク セグメントを変更する方法

1. 背景Docker サービスが開始されると、デフォルトで docker0 ブリッジが作成され (...

rem をモバイル デバイスに適応させる方法の例

序文モバイル端末のREM適応ソリューションのレビューと概要remの使い方rem 単位の計算は、HTM...

nginx+php-fpm サービスの HTTP ステータス コード 502 の詳細な分析

弊社の Web プロジェクトの 1 つでは、新しい都市の増加によりトラフィックと DB 負荷が増加し...

CN2、GIA、CIA、BGP、IPLC はどういう意味ですか?

CN2ラインとは何ですか? CN2 は、China Telecom Next Carrier Ne...

Faint: 「Web2.0 を使用して標準に準拠したページを作成する」

今日、ある人がウェブサイト開発プロジェクトについて話をしてくれました。具体的な要件について話すと、「...

MySql における無効な Null セグメント判定と IFNULL() 失敗の解決策

MySql Nullフィールド判定とIFNULL失敗処理ps: (プロセスを表示したくない場合は、S...

Windows での MySQL コミュニティ サーバー 8.0.16 のインストールと構成方法のグラフィック チュートリアル

最近、MySQL関連の構文をよく見かけます。また、MySQLストアドプロシージャの書き方も学びたいの...

Dockerイメージをプライベートリポジトリにアップロードする方法の例

イメージは、GitHub と同様に Docker パブリック リポジトリに直接簡単にプッシュできます...

MySQL マスタースレーブレプリケーションのいくつかのレプリケーション方法の概要

非同期レプリケーションMySQL レプリケーションは、デフォルトでは非同期です。マスター スレーブ ...

MySQLフィールド定義でnullを使用しない理由の分析

NULL が頻繁に使用されるのはなぜですか? (1)Javaのnull Java の NullPoi...

nginx rewriteを使用してURLをリダイレクトする方法

最近仕事でnginxの設定を変更する必要が頻繁にあり、nginxでrewriteを使用する方法を学び...

暗号化における https の Apache 展開の概要

目次目的実験環境実験原理実験手順1. 独立したCAを生成する2. サーバーの秘密鍵と署名要求ファイル...

MySQLの半同期の詳細な説明

目次序文MySQL マスタースレーブレプリケーションMySQL でサポートされているレプリケーション...

docker-maven-pluginはイメージをパッケージ化し、プライベートウェアハウスにアップロードします。

目次1. docker-maven-pluginの紹介2. 環境とソフトウェアの準備3. デモ例3....