### linux创建用户,elastic不能用root用户启动 -- adduser方式为脚本方式,一行搞定 #添加用户 $ adduser chenbing #设置密码 $ passwd chenbing # 切换用户 $ su chenbing # 进入到用户的根目录 $ cd ~ # 进入到chenbing同级目录 $ cd .. # 切换root用户 $ su root # 给chenbing设置权限 $ chmod 777 -R chenbing # 然后切换用户 $ su chenbing -- useradd方式有点繁琐2. 下载解压
# 选择某一目录,下载 $ wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.16.1-linux-x86_64.tar.gz $ wget https://artifacts.elastic.co/downloads/logstash/logstash-7.16.1-linux-x86_64.tar.gz # 解压 $ tar -zxvf elasticsearch-7.16.1-linux-x86_64.tar.gz $ tar -zxvf logstash-7.16.1-linux-x86_64.tar.gz3. logstash-cbb.conf配置
# 路径:logstash-7.16.1/conf/logstash-cbb.conf input { stdin { } jdbc { # type => "test_user" # MySQL数据库基础配置 jdbc_connection_string => "jdbc:mysql://localhost:3306/elk_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false" jdbc_driver_library => "/home/chenbing/cbbUtil/mysql-connector-java-8.0.22.jar" jdbc_driver_class => "com.mysql.jdbc.Driver" jdbc_paging_enabled => "true" jdbc_page_size => "50000" jdbc_user => "root" jdbc_password => "root" # 有设置分页的情况,注意sql不要加分号;同样,导入多表数据,只需要多写几个jdbc{},在output作判断 statement => "select * from user" # statement_filepath => "/home/chenbing/cbbUtil/elk_test.sql" # cron表达式,'* * * * *'表示每分钟执行一次,可参考学习:https://tool.lu/crontab/ schedule => "* * * * *" # 指定追踪的字段,createdate是否驼峰可根据logstash控制台日志打印看到 tracking_column => "createdate" # 追踪字段的类型,目前只有数字(numeric)和时间类型(timestamp),默认是数字类型 tracking_column_type => "timestamp" #记录最后一次运行的结果 record_last_run => true #上面运行结果的保存位置 last_run_metadata_path => "/home/chenbing/cbbSoft/logstash-7.16.1/jdbc-result.txt" } } #filter { # json { # source => "message" # remove_field => ["message"] # } # mutate { # rename => { "CreateDate" => "createdate" } # } #} output { elasticsearch { # ES的IP地址及端口 hosts => ["localhost:9200"] # 索引名称,可自定义,对应database index => "user" # 需要关联的数据库中有一个id字段(table的主键),对应类型中的id document_id => "%{userid}" # 文档类型对应table document_type => "_doc" } stdout { # 控制台以json格式打印 codec => json_lines # 下面这种打印格式会看起来更舒服些 # codec => rubydebug } }4. 启动
### 1、启动elastic # 进入es解压包,执行如下启动ES # 直接当前终端启动,进入elasticsearch-7.16.1目录 $ /bin/elasticsearch # 如要将 Elasticsearch 作为守护进程运行,请-d在命令行中指定,并使用以下-p选项将进程 ID 记录在文件中,官网方式 # 启动可能会报错,控制台日志显示是需要配置进入config/elasticsearch.yml配置,配置内容见附录 ./bin/elasticsearch -d -p pid ### 2、启动logstash,进入logstash-7.16.1目录 $ bin/logstash -f config/logstash-cbb.conf5. 关闭
### 1、两种方式关闭elastic #### 方式一 # 查看java进程,elasticsearch前面的数字就是进程号 $ jps $ kill -9 进程号 #### 方式二 # 第一条记录为elastic进程信息,第一列为elastic的用户,第二列为进程号 $ ps -ef | grep elastic $ kill -9 进程号 ### 2、关闭logstash,同样也可以试试上面的方法附录 config/elasticsearch.yml配置
# ======================== Elasticsearch Configuration ========================= # # NOTE: Elasticsearch comes with reasonable defaults for most settings. # Before you set out to tweak and tune the configuration, make sure you # understand what are you trying to accomplish and the consequences. # # The primary way of configuring a node is via this file. This template lists # the most important settings you may want to configure for a production cluster. # # Please consult the documentation for further information on configuration options: # https://www.elastic.co/guide/en/elasticsearch/reference/index.html # # ---------------------------------- Cluster ----------------------------------- # # Use a descriptive name for your cluster: # cluster.name: my-application # # ------------------------------------ Node ------------------------------------ # # Use a descriptive name for the node: # node.name: node-1 # # Add custom attributes to the node: # #node.attr.rack: r1 # # ----------------------------------- Paths ------------------------------------ # # Path to directory where to store the data (separate multiple locations by comma): # #path.data: /path/to/data # # Path to log files: # #path.logs: /path/to/logs # # ----------------------------------- Memory ----------------------------------- # # Lock the memory on startup: # #bootstrap.memory_lock: true #bootstrap.memory_lock: true #ES_JAVA_OPTS: "-Xms512m -Xmx1024m" #MAX_LOCKED_MEMORY: unlimited # # Make sure that the heap size is set to about half the memory available # on the system and that the owner of the process is allowed to use this # limit. # # Elasticsearch performs poorly when the system is swapping the memory. # # ---------------------------------- Network ----------------------------------- # # By default Elasticsearch is only accessible on localhost. Set a different # address here to expose this node on the network: # #network.host: 192.168.0.1 network.host: 0.0.0.0 # # By default Elasticsearch listens for HTTP traffic on the first free port it # finds starting at 9200. Set a specific HTTP port here: # #http.port: 9200 http.port: 9200 # # For more information, consult the network module documentation. # # --------------------------------- Discovery ---------------------------------- # # Pass an initial list of hosts to perform discovery when this node is started: # The default list of hosts is ["127.0.0.1", "[::1]"] # #discovery.seed_hosts: ["host1", "host2"] discovery.seed_hosts: ["0.0.0.0", "[::1]"] # # Bootstrap the cluster using an initial set of master-eligible nodes: # #cluster.initial_master_nodes: ["node-1", "node-2"] cluster.initial_master_nodes: ["node-1"] # # For more information, consult the discovery and cluster formation module documentation. # # ---------------------------------- Various ----------------------------------- # # Require explicit names when deleting indices: # action.destructive_requires_name: true # # ---------------------------------- Security ---------------------------------- # # *** WARNING *** # # Elasticsearch security features are not enabled by default. # These features are free, but require configuration changes to enable them. # This means that users don’t have to provide credentials and can get full access # to the cluster. Network connections are also not encrypted. # # To protect your data, we strongly encourage you to enable the Elasticsearch security features. # Refer to the following documentation for instructions. # # https://www.elastic.co/guide/en/elasticsearch/reference/7.16/configuring-stack-security.html运行报错vm.max_map_count [65530] is too low
# 在/etc/sysctl.conf文件最后添加一行:vm.max_map_count=262144 $ vim /etc/sysctl.conf # 立即生效 $ /sbin/sysctl -p
办法千万种,解决最重要。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)