1. After running the command: ./20.04/install_elasticsearch.sh 7 to install Elasticsearch, the corresponding version of the IK analysis plugin was not installed. See Figure 1.

root@iZ2ze4fjghbbj74d4kfnf0Z:/var/www/laravel-shop# cd ~/laravel-ubuntu-init
root@iZ2ze4fjghbbj74d4kfnf0Z:~/laravel-ubuntu-init# ./20.04/install_elasticsearch.sh 7
===> Installing JAVA... [DONE]
===> Installing Elasticsearch 7... [DONE]
===> Installing Elasticsearch plugin... [DONE]
Installation complete
root@iZ2ze4fjghbbj74d4kfnf0Z:~/laravel-ubuntu-init# sudo /usr/share/elasticsearch/bin/elasticsearch-plugin list
root@iZ2ze4fjghbbj74d4kfnf0Z:~/laravel-ubuntu-init#
2. I decided to edit install_elasticsearch.sh, as the issue likely lies in the code that checks whether the plugin is installed being ineffective.
function install_es_plugins {
ESVersion=$(/usr/share/elasticsearch/bin/elasticsearch -V|awk -F',' '{print $1}'| awk '{print $2}')
# [[ -e /usr/share/elasticsearch/plugins/analysis-ik ]] || {
/usr/share/elasticsearch/bin/elasticsearch-plugin install --batch https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v${ESVersion}/elasticsearch-analysis-ik-${ESVersion}.zip
# }
mkdir -p /etc/elasticsearch/analysis/
touch /etc/elasticsearch/analysis/synonyms.txt
service elasticsearch restart
}
3. After running the command: /usr/share/elasticsearch/bin/elasticsearch-plugin list, the corresponding plugin is still missing.
root@iZ2ze4fjghbbj74d4kfnf0Z:~/laravel-ubuntu-init# /usr/share/elasticsearch/bin/elasticsearch-plugin list
root@iZ2ze4fjghbbj74d4kfnf0Z:~/laravel-ubuntu-init#
4. I finally decided to install the plugin manually. Reference: https://github.com/medcl/elasticsearch-analysis-ik . Reference: The corresponding relationship between IK version and ES version. See Figure 2.

5. Installing using elasticsearch-plugin. Since the ES version is 7.17.6, the latest version of IK can be installed. Error: plugin [analysis-ik] was built for Elasticsearch version 8.2.3 but version 7.17.6 is running. See Figure 3.
![Installing using elasticsearch-plugin. Since the ES version is 7.17.6, the latest version of IK can be installed. Error: plugin [analysis-ik] was built for Elasticsearch version 8.2.3 but version 7.17.6 is running](https://media.shuijingwanwq.com/2022/09/3-6.png)
root@iZ2ze4fjghbbj74d4kfnf0Z:~# curl 127.0.0.1:9200
{
"name" : "iZ2ze4fjghbbj74d4kfnf0Z",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "ML75WugQScOM5vF1Jeye1w",
"version" : {
"number" : "7.17.6",
"build_flavor" : "default",
"build_type" : "deb",
"build_hash" : "f65e9d338dc1d07b642e14a27f338990148ee5b6",
"build_date" : "2022-08-23T11:08:48.893373482Z",
"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"
}
root@iZ2ze4fjghbbj74d4kfnf0Z:~# cd ~/laravel-ubuntu-init
root@iZ2ze4fjghbbj74d4kfnf0Z:~/laravel-ubuntu-init#
root@iZ2ze4fjghbbj74d4kfnf0Z:~/laravel-ubuntu-init#
root@iZ2ze4fjghbbj74d4kfnf0Z:~/laravel-ubuntu-init#
root@iZ2ze4fjghbbj74d4kfnf0Z:~/laravel-ubuntu-init# /usr/share/elasticsearch/bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v8.2.3/elasticsearch-analysis-ik-8.2.3.zip
-> Installing https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v8.2.3/elasticsearch-analysis-ik-8.2.3.zip
-> Downloading https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v8.2.3/elasticsearch-analysis-ik-8.2.3.zip
[=================================================] 100%
-> Failed installing https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v8.2.3/elasticsearch-analysis-ik-8.2.3.zip
-> Rolling back https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v8.2.3/elasticsearch-analysis-ik-8.2.3.zip
-> Rolled back https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v8.2.3/elasticsearch-analysis-ik-8.2.3.zip
Exception in thread "main" java.lang.IllegalArgumentException: Plugin [analysis-ik] was built for Elasticsearch version 8.2.3 but version 7.17.6 is running
at org.elasticsearch.plugins.PluginsService.verifyCompatibility(PluginsService.java:391)
at org.elasticsearch.plugins.cli.InstallPluginAction.loadPluginInfo(InstallPluginAction.java:831)
at org.elasticsearch.plugins.cli.InstallPluginAction.installPlugin(InstallPluginAction.java:887)
at org.elasticsearch.plugins.cli.InstallPluginAction.execute(InstallPluginAction.java:245)
at org.elasticsearch.plugins.cli.InstallPluginCommand.execute(InstallPluginCommand.java:88)
at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:77)
at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:112)
at org.elasticsearch.cli.MultiCommand.execute(MultiCommand.java:95)
at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:112)
at org.elasticsearch.cli.Command.main(Command.java:77)
at org.elasticsearch.plugins.cli.PluginCli.main(PluginCli.java:36)
root@iZ2ze4fjghbbj74d4kfnf0Z:~/laravel-ubuntu-init#
6. I decided to install version 7.17.5 of the plugin. Error: plugin [analysis-ik] was built for Elasticsearch version 7.17.5 but version 7.17.6 is running. There is currently no version 7.17.6 of the plugin available.
root@iZ2ze4fjghbbj74d4kfnf0Z:~/laravel-ubuntu-init# /usr/share/elasticsearch/bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.17.5/elasticsearch-analysis-ik-7.17.5.zip
-> Installing https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.17.5/elasticsearch-analysis-ik-7.17.5.zip
-> Downloading https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.17.5/elasticsearch-analysis-ik-7.17.5.zip
[=================================================] 100%
-> Failed installing https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.17.5/elasticsearch-analysis-ik-7.17.5.zip
-> Rolling back https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.17.5/elasticsearch-analysis-ik-7.17.5.zip
-> Rolled back https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.17.5/elasticsearch-analysis-ik-7.17.5.zip
Exception in thread "main" java.lang.IllegalArgumentException: Plugin [analysis-ik] was built for Elasticsearch version 7.17.5 but version 7.17.6 is running
at org.elasticsearch.plugins.PluginsService.verifyCompatibility(PluginsService.java:391)
at org.elasticsearch.plugins.cli.InstallPluginAction.loadPluginInfo(InstallPluginAction.java:831)
at org.elasticsearch.plugins.cli.InstallPluginAction.installPlugin(InstallPluginAction.java:887)
at org.elasticsearch.plugins.cli.InstallPluginAction.execute(InstallPluginAction.java:245)
at org.elasticsearch.plugins.cli.InstallPluginCommand.execute(InstallPluginCommand.java:88)
at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:77)
at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:112)
at org.elasticsearch.cli.MultiCommand.execute(MultiCommand.java:95)
at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:112)
at org.elasticsearch.cli.Command.main(Command.java:77)
at org.elasticsearch.plugins.cli.PluginCli.main(PluginCli.java:36)
7. The only option is to roll back the Elasticsearch version to 7.17.5. I finally decided to start over. Edit /20.04/install_elasticsearch.sh. Specify the version as 7.17.5. See Figure 4.

function install_es {
curl -sS https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -
echo "deb https://mirrors.tuna.tsinghua.edu.cn/elasticstack/${VERSION}.x/apt stable main" > /etc/apt/sources.list.d/elastic-${VERSION}.x.list
apt-get update
apt-get install -y elasticsearch=7.17.5
service elasticsearch start
}
8. The Elasticsearch version is now 7.17.5, and the plugin has been installed. See Figure 5.

root@iZ2zeh119jtszpxb8sf8pvZ:~/laravel-ubuntu-init# curl 127.0.0.1:9200
{
"name" : "iZ2zeh119jtszpxb8sf8pvZ",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "65TOsoDbTn6sWU-JSfczZg",
"version" : {
"number" : "7.17.5",
"build_flavor" : "default",
"build_type" : "deb",
"build_hash" : "8d61b4f7ddf931f219e3745f295ed2bbc50c8e84",
"build_date" : "2022-06-23T21:57:28.736740635Z",
"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"
}
root@iZ2zeh119jtszpxb8sf8pvZ:~/laravel-ubuntu-init# sudo /usr/share/elasticsearch/bin/elasticsearch-plugin list
root@iZ2zeh119jtszpxb8sf8pvZ:~/laravel-ubuntu-init# /usr/share/elasticsearch/bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.17.5/elasticsearch-analysis-ik-7.17.5.zip
-> Installing https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.17.5/elasticsearch-analysis-ik-7.17.5.zip
-> Downloading https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.17.5/elasticsearch-analysis-ik-7.17.5.zip
[=================================================] 100%
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: plugin requires additional permissions @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
* java.net.SocketPermission * connect,resolve
See https://docs.oracle.com/javase/8/docs/technotes/guides/security/permissions.html
for descriptions of what these permissions allow and the associated risks.
Continue with installation? [y/N]y
-> Installed analysis-ik
-> Please restart Elasticsearch to activate any plugins installed
root@iZ2zeh119jtszpxb8sf8pvZ:~/laravel-ubuntu-init# service elasticsearch restart
root@iZ2zeh119jtszpxb8sf8pvZ:~/laravel-ubuntu-init# /usr/share/elasticsearch/bin/elasticsearch-plugin list analysis-ik
root@iZ2zeh119jtszpxb8sf8pvZ:~/laravel-ubuntu-init#
