百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Elastic8.7集群搭建(搭建elk集群)

nanshan 2024-10-22 12:55 33 浏览 0 评论

ELK(elasticsearch+kibana)



根据操作系统选择需要的安装包

这里以windows为例(版本是8.7.1),Linux的操作是一致的

下载压缩包,解压,先说明一下文件目录

bin:可执行程序,包括elasticsearch启动程序也在这个目录

config:配置文件,包括jvm的配置

data:数据存储的目录,该目录会在启动的时候自动生成

jdk:因为es是用java开发的,如果本机安装的jdk版本不支持当前的es的版本,那么使用该目录下的

logs:日志目录,必须有

modules:es的一些模块

plugins:插件存放的目录,初始是空的

修改es的配置,主要修改下面这几个配置项

elasticsearch.yml

#集群名称
cluster.name: my-application
#节点的名字
node.name: node-1
#节点的端口
http.port: 9201

jvm的配置,主要是修改一下内存占用,默认是4G,可以根据业务的需要,自行配置,这里设置为512mb。

jvm.options

################################################################
## IMPORTANT: JVM heap size
################################################################
##
## The heap size is automatically configured by Elasticsearch
## based on the available memory in your system and the roles
## each node is configured to fulfill. If specifying heap is
## required, it should be done through a file in jvm.options.d,
## which should be named with .options suffix, and the min and
## max should be set to the same value. For example, to set the
## heap to 4 GB, create a new file in the jvm.options.d
## directory containing these lines:
##
-Xms512m
-Xmx512m

启动

启动第一个节点,以独立节点的方式启动(-d后台执行)

.\elasticsearch -d

获取一下elastic的密码,后面可以用于登录kibana

.\elasticsearch-reset-password -u elastic

如果出现错误,重置可以通过下面的步骤实现

1、删掉config/elasticsearch.keystore、config/certs文件夹

2、config/elasticsearch.yml从

#----------------------- BEGIN SECURITY AUTO CONFIGURATION -----------------------开始,后面的全部删除

3、删除data目录

获取一下加入集群的token

 .\elasticsearch-create-enrollment-token -s node

这个是jwt的token,可以解码看一下里面的内容,可以看到token里面包含了主节点的ip和端口信息。


把一个新节点加入到集群,拷贝上一步获取到的token

.\elasticsearch --enrollment-token eyJ2ZXIiOiI4LjcuMSIsImFkciI6WyIxNzIuMTguMC44NDo5MjAxIl0sImZnciI6IjFhNzUwYjFhMDI3YTAyN2M3NTI0NzQxMjM2NmM5OWRhYTM2YjY2M2Q4NzdlYjY5NDk3MWY5Mzg1MzI0NTUxNjMiLCJrZXkiOiJzcHFOYjRnQlAtVVV6SHVXRjVWaDpmN2lUeS13VFRUQzViNnlEc0QzMVp3In0= -d

后续添加节点,均按这个步骤重复进行。


安装kibana

下载解压之后,到bin目录执行

打开http://localhost:5601/?code=391977,如果

直接通过http://localhost:5601打开,后面会要求输入验证,回到控制台,可以看到6位的验证码。

产生kibana的登录token

.\elasticsearch-create-enrollment-token -s kibana

token登录



用账号登录



登录之后,到控制台查看集群情况


.NET 使用ES(官方的例子)

using Elastic.Clients.Elasticsearch;
using Elastic.Transport;

var nodes = new Uri[]
{
    new Uri("https://localhost:9201"),
    new Uri("https://localhost:9202")
};

var pool = new StaticNodePool(nodes);

var settings = new ElasticsearchClientSettings(pool)
.CertificateFingerprint("1A:75:0B:1A:02:7A:02:7C:75:24:74:12:36:6C:99:DA:A3:6B:66:3D:87:7E:B6:94:97:1F:93:85:32:45:51:63")
 .Authentication(new BasicAuthentication("elastic", "9JUjqtpWdIXaqFP5Sn_P"));

  
var tweet = new Tweet 
{
    Id = 1,
    User = "stevejgordon",
    PostDate = new DateTime(2009, 11, 15),
    Message = "Trying out the client, so far so good?"
};
var client=new ElasticsearchClient(settings);
var response = await client.IndexAsync(tweet, "my-tweet-index"); 

if (response.IsValidResponse) 
{
    Console.WriteLine(#34;Index document with ID {response.Id} succeeded."); 
}
else{
    Console.WriteLine("err:"+response.ElasticsearchServerError);
}

public class Tweet
{
    public int Id { get; set; } 
    public string User { get; set; }
    public DateTime PostDate { get; set; }
    public string Message { get; set; }
}

产生CertificateFingerprint

asp.net core


public static class ElasticsearchExtensions
{
    public static void AddElasticsearch(this IServiceCollection services, IConfiguration configuration)
    {
        var url = configuration["elasticsearch:url"];
        var defaultIndex = configuration["elasticsearch:index"];
 
 
        var settings = new ConnectionSettings(new Uri(url))
            .DefaultIndex(defaultIndex);
 
 
        AddDefaultMappings(settings);
 
 
        var client = new ElasticClient(settings);
 
 
        services.AddSingleton(client);
 
 
        CreateIndex(client, defaultIndex);
    }
 
 
    private static void AddDefaultMappings(ConnectionSettings settings)
    {
        settings
            DefaultMappingFor<Product>(m => m
                .Ignore(p => p.Price)
                .Ignore(p => p.Quantity)
                .Ignore(p => p.Rating)
            );
    }
 
 
    private static void CreateIndex(IElasticClient client, string indexName)
    {
        var createIndexResponse = client.Indices.Create(indexName,
            index => index.Map<Product>(x => x.AutoMap())
        );
    }
}



相关推荐

服务器数据恢复—Raid5数据灾难不用愁,Raid5数据恢复原理了解下

Raid5数据恢复算法原理:分布式奇偶校验的独立磁盘结构(被称之为raid5)的数据恢复有一个“奇偶校验”的概念。可以简单的理解为二进制运算中的“异或运算”,通常使用的标识是xor。运算规则:若二者值...

服务器数据恢复—多次异常断电导致服务器raid不可用的数据恢复

服务器数据恢复环境&故障:由于机房多次断电导致一台服务器中raid阵列信息丢失。该阵列中存放的是文档,上层安装的是Windowsserver操作系统,没有配置ups。因为服务器异常断电重启后,rai...

服务器数据恢复-V7000存储更换磁盘数据同步失败的数据恢复案例

服务器数据恢复环境:P740+AIX+Sybase+V7000存储,存储阵列柜上共12块SAS机械硬盘(其中一块为热备盘)。服务器故障:存储阵列柜中有磁盘出现故障,工作人员发现后更换磁盘,新更换的磁盘...

「服务器数据恢复」重装系统导致XFS文件系统分区丢失的数据恢复

服务器数据恢复环境:DellPowerVault系列磁盘柜;用RAID卡创建的一组RAID5;分配一个LUN。服务器故障:在Linux系统层面对LUN进行分区,划分sdc1和sdc2两个分区。将sd...

服务器数据恢复-ESXi虚拟机被误删的数据恢复案例

服务器数据恢复环境:一台服务器安装的ESXi虚拟化系统,该虚拟化系统连接了多个LUN,其中一个LUN上运行了数台虚拟机,虚拟机安装WindowsServer操作系统。服务器故障&分析:管理员因误操作...

「服务器数据恢复」Raid5阵列两块硬盘亮黄灯掉线的数据恢复案例

服务器数据恢复环境:HPStorageWorks某型号存储;虚拟化平台为vmwareexsi;10块磁盘组成raid5(有1块热备盘)。服务器故障:raid5阵列中两块硬盘指示灯变黄掉线,无法读取...

服务器数据恢复—基于oracle数据库的SAP数据恢复案例

服务器存储数据恢复环境:某品牌服务器存储中有一组由6块SAS硬盘组建的RAID5阵列,其中有1块硬盘作为热备盘使用。上层划分若干lun,存放Oracle数据库数据。服务器存储故障&分析:该RAID5阵...

「服务器虚拟化数据恢复」Xen Server环境下数据库数据恢复案例

服务器虚拟化数据恢复环境:Dell某型号服务器;数块STAT硬盘通过raid卡组建的RAID10;XenServer服务器虚拟化系统;故障虚拟机操作系统:WindowsServer,部署Web服务...

服务器数据恢复—RAID故障导致oracle无法启动的数据恢复案例

服务器数据恢复环境:某品牌服务器中有一组由4块SAS磁盘做的RAID5磁盘阵列。该服务器操作系统为windowsserver,运行了一个单节点Oracle,数据存储为文件系统,无归档。该oracle...

服务器数据恢复—服务器磁盘阵列常见故障表现&amp;解决方案

RAID(磁盘阵列)是一种将多块物理硬盘整合成一个虚拟存储的技术,raid模块相当于一个存储管理的中间层,上层接收并执行操作系统及文件系统的数据读写指令,下层管理数据在各个物理硬盘上的存储及读写。相对...

「服务器数据恢复」IBM某型号服务器RAID5磁盘阵列数据恢复案例

服务器数据恢复环境:IBM某型号服务器;5块SAS硬盘组成RAID5磁盘阵列;存储划分为1个LUN和3个分区:第一个分区存放windowsserver系统,第二个分区存放SQLServer数据库,...

服务器数据恢复—Zfs文件系统下误删除文件如何恢复数据?

服务器故障:一台zfs文件系统服务器,管理员误操作删除服务器上的数据。服务器数据恢复过程:1、将故障服务器所有磁盘编号后取出,硬件工程师检测所有硬盘后没有发现有磁盘存在硬件故障。以只读方式将全部磁盘做...

服务器数据恢复—Linux+raid5服务器数据恢复案例

服务器数据恢复环境:某品牌linux操作系统服务器,服务器中有4块SAS接口硬盘组建一组raid5阵列。服务器中存放的数据有数据库、办公文档、代码文件等。服务器故障&检测:服务器在运行过程中突然瘫痪,...

服务器数据恢复—Sql Server数据库数据恢复案例

服务器数据恢复环境:一台安装windowsserver操作系统的服务器。一组由8块硬盘组建的RAID5,划分LUN供这台服务器使用。在windows服务器内装有SqlServer数据库。存储空间LU...

服务器数据恢复—阿里云ECS网站服务器数据恢复案例

云服务器数据恢复环境:阿里云ECS网站服务器,linux操作系统+mysql数据库。云服务器故障:在执行数据库版本更新测试时,在生产库误执行了本来应该在测试库执行的sql脚本,导致生产库部分表被tru...

取消回复欢迎 发表评论: