华为云征文|华为Flexus X服务器实例使用Docker搭建ES和Kibana

目录

开放端口

Flexus控制台-安全组操作

服务器实例内-开放防火墙端口

[Flexus X实例安装Docker](#Flexus X实例安装Docker)

Docker安装ElasticSearch

Docker安装Kibana

安装IK分词器


华为云基于创新的"柔性算力"技术,重磅推出云服务器产品:华为云Flexus云服务器X实例

如果你还在使用CentOS7.x相关实例,到期可以考虑下华为的这个产品。

可听闻CentOS7版本在2024年6月30日达到了生命周期的终点(EOL)? ,不再从官方获得任何更新或安全补丁,这也是导致前不久传出"Docker崩了-.-"的新闻的原因之一,就是因为CentOS7版本停止维护,这对CentOS7等实例需要依赖最新系统库和组件的软件造成了严重的兼容性问题。

这事件让我们选择服务器实例有多了一个考虑点,一些较为老旧的实例被迭代掉也是趋势走向。

华为云服务器实例的持久维护是必然的,而且Flexus X实例独家支持CPU内存的柔性配比,支持100+规格,最高支持CPU内存3:1配比,让CPU与内存更贴合业务应用需求;

Flexus X实例介绍/购买地址: Flexus云服务器X实例-华为云

下面让我们使用Flexus X实例来安装Docker并使用Docker安装并启动ElasticSearch 和Kibana容器作为测试,查看Flexus X实例的可用性和性能如何。

使用镜像:CentOS8.x

开放端口

Flexus控制台-安全组操作

我们需要使用ElasticSearch和Kibana,当使用docker将ES和Kibana启动之后,需要开放相关端口我们才能访问到。

ES端口: 9200 , 9300

Kibana端口:5601

让我们来看看Flexus操作安全组开放端口的操作:

选择需要操作的Flexus实例:

进入安全组配置:

【入口方向规则】-添加规则

把三个端口都添加上:

服务器实例内-开放防火墙端口

连接进入到Flexus实例,查看防火墙状态:

查看防火墙状态:systemctl status firewalld

开启防火墙:systemctl start firewalld

查询端口开放状态:firewall-cmd --permanent --query-port=5601/tcp

开放指定端口:firewall-cmd --permanent --add-port=5601/tcp

通过命令如上命令将5601,9200,9300都开放。

添加后一定重启防火墙,让端口开放生效。

firewall-cmd --reload

Flexus X实例安装Docker

我们使用Docker来安装ES和Kibana,所以我们先安装一下Docker:

1. 安装前置依赖

html 复制代码
yum install -y yum-utils device-mapper-persistent-data lvm2

2. 为 YUM 包管理器添加 Docker 的阿里云镜像源

html 复制代码
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3. 安装docker

html 复制代码
yum -y install docker-ce

4.开启docker服务

html 复制代码
# 启动docker
systemctl start docker

# 测试(查看docker本地镜像)
docker images

# 查看docker安装路径
docker info

5. 开启docker开启自启动 (可选)

html 复制代码
systemctl enable docker

Docker安装ElasticSearch

1. 创建网络 , 方便内部连接

html 复制代码
docker network create es-net

2. 拉取ES镜像

关于镜像拉取失败问题:

在目前国内docker镜像源基本失效,导致无法使用docker拉取镜像。

解决办法:

方法1. 购买 地区处于境外的服务器,例如香港。可直接拉取镜像。

方法2.网络上寻找你想要的镜像.tar包(docker save打包的镜像) ,使用docker load加载。

html 复制代码
docker pull  elasticsearch:7.12.1

**3.**创建本地数据卷-两个目录(数据和插件),例如:

注意,需要将创建的**文件夹赋予全部权限chmod777,**否者容器会启动失败。

例如如下创建的目录data和plugins作为测试。

4. 创建并运行ES容器

html 复制代码
docker run -d \
--restart=always \
--name es \
--network es-net \
-p 9200:9200 \
-p 9300:9300 \
--privileged \
-v /maohe/dockerV/data:/usr/share/elasticsearch/data \
-v /maohe/dockerV/plugins:/usr/share/elasticsearch/plugins \
-e "discovery.type=single-node" \
-e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \
elasticsearch:7.12.1

如上:创建容器时将本地的数据卷目录进行关联挂载。

-V 本地目录(自选):容器内目录(固定)

查看容器运行状态:docker ps

访问IP:9200查看是否启动成功:

如果访问失败,检查两个方面:

**1.**服务器安全组端口 和 防火墙端口(修改后记得重启生效) 的开放请情况。

**2.**数据卷挂载的文件夹权限是否赋予777。

其他:使用命令【docker logs -f 容器名】 查看启动日志。

Docker安装Kibana

1. 拉取kibana镜像

html 复制代码
docker pull kibana:7.12.1

2. 创建并启动Kibana容器

html 复制代码
docker run -d \
--restart=always \
--name kibana \
--network es-net \
-p 5601:5601 \
-e ELASTICSEARCH_HOSTS=http://es:9200 \
kibana:7.12.1

其中因为使用了同一docker网络 ,可以直接上容器名通信,使用es容器名:9200与ES关联。

3. 访问IP:5601访问到Kibana控制台

安装IK分词器

ElasticSearch自带的分词器对于中文并不友好,所以我们可以安装【IK分词器】解决我们的中文分词需求。

访问GitHub下载地址: https://github.com/infinilabs/analysis-ik

找到对应ES版本 的IK分词器ZIP包下载

然后将ZIP包上传 到刚才创建数据卷目录:plugins中解压即可:

在plugins目录下新建一个目录ik ,将下载的压缩包放到ik目录下解压

测试分词器:

至此,使用Flexus服务器实例安装Docker ,然后使用Docker安装ElasticSearch和Kibana就结束了。

相关推荐
Just_Paranoid2 天前
华为云Flexus+DeepSeek征文|基于Dify构建音视频内容转录工作流
华为云·音视频·dify·maas·deepseek·flexusx
小明说Java2 天前
华为云Flexus+DeepSeek征文 | 基于华为云Flexus X实例部署Dify平台构建企业行政助手的可用性研究
华为云·maas·deepseek·flexus
降世神童2 天前
华为云Flexus+DeepSeek征文| 使用华为云CCE容器部署Dify-LLM高可用方案的验证与测试
运维·华为云·aigc
安 当 加 密2 天前
多云密钥统一管理实战:CKMS对接阿里云/华为云密钥服务
数据库·阿里云·华为云
降世神童2 天前
华为云Flexus+DeepSeek征文| 基于华为云Dify-LLM高可用平台开发运维故障处理智能体
运维·华为云·aigc
cooldream20092 天前
华为云Flexus+DeepSeek征文|利用华为云一键部署 Dify 平台并接入 DeepSeek 大模型,构建长篇文章生成助手
大模型·华为云·dify
Linux猿2 天前
华为云Flexus+DeepSeek征文|基于华为云Flexus云服务的Dify 快速构建联网搜索助手
华为云·华为云服务·华为云征文·联网搜索助手·华为云flexus云服务
江湖有缘2 天前
华为云Flexus+DeepSeek征文|基于 Dify-LLM 构建网站智能客服助手的实践探索
华为云
AI生存日记2 天前
AI 日报:阿里、字节等企业密集发布新技术,覆盖语音、图像与药物研发等领域
人工智能·华为云·语音识别·open ai大模型
lgbisha12 天前
华为云Flexus+DeepSeek征文|体验华为云ModelArts快速搭建Dify-LLM应用开发平台并创建自己的AI写作神器
人工智能·ai·语言模型·自然语言处理·华为云·ai写作