2024年Linux最新Elasticsearch-7,2024Linux运维高级进阶学习资料

为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪offer怀里抱!

这次整理的面试题,小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。

本份面试集锦涵盖了

  • 174 道运维工程师面试题
  • 128道k8s面试题
  • 108道shell脚本面试题
  • 200道Linux面试题
  • 51道docker面试题
  • 35道Jenkis面试题
  • 78道MongoDB面试题
  • 17道ansible面试题
  • 60道dubbo面试题
  • 53道kafka面试
  • 18道mysql面试题
  • 40道nginx面试题
  • 77道redis面试题
  • 28道zookeeper

总计 1000+ 道面试题, 内容 又全含金量又高

  • 174道运维工程师面试题

1、什么是运维?

2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?

3、现在给你三百台服务器,你怎么对他们进行管理?

4、简述raid0 raid1raid5二种工作模式的工作原理及特点

5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?

6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?

7、Tomcat和Resin有什么区别,工作中你怎么选择?

8、什么是中间件?什么是jdk?

9、讲述一下Tomcat8005、8009、8080三个端口的含义?

10、什么叫CDN?

11、什么叫网站灰度发布?

12、简述DNS进行域名解析的过程?

13、RabbitMQ是什么东西?

14、讲一下Keepalived的工作原理?

15、讲述一下LVS三种模式的工作过程?

16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?

17、如何重置mysql root密码?

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 修改相关配置连接Elasticsearch
➜  ~ vim /usr/local/modules/elasticsearch/kibana-7.8.0/config/kibana.yml
server.host: "localhost"
server.port: 5601
elasticsearch.hosts: ["http://localhost:9200"]
# 中文
i18n.locale: "zh-CN"

1.2.3 Kibana启动
  • 启动Kibana
➜  ~ /usr/local/modules/elasticsearch/kibana-7.8.0/bin/kibana
# 后台启动
➜  ~ nohup ➜  ~ /bin/kibana &

  • 浏览器访问: http://localhost:5601/app/kibana#/dev_tools/console

1.3 安装elasticsearch-analysis-ik-7.8.0

Elasticsearch-Analysis-IK是一个专门为Elasticsearch设计的中文分词器插件,它将Lucene IK分词器集成到Elasticsearch中,并支持自定义词典。

  • 下载解压:https://github.com/infinilabs/analysis-ik/tags

解压elasticsearch-analysis-ik-7.8.0 到/usr/local/modules/elasticsearch/elasticsearch-7.8.0/plugins/ik目录下

  • 重新启动Elasticsearch
./usr/local/modules/elasticsearch/elasticsearch-7.8.0/bin/elasticsearch

1.4 卸载Elasticsearch-7.8.0

  • 停止服务后。执行下面命令
[wolffy@hadoop102 module]$ rm -rf /opt/module/elasticsearch-7.8.0
[wolffy@hadoop102 module]$ rm -rf kibana-7.8.0

第二章 Elasticsearch-7.8.0集群基于Centos7

Elasticsearch安装hadoop102、hadoop103、hadoop104

Kibana安装hadoop102

2.1 安装 Elasticsearch-7.8.0

Elasticsearch(ES)是一个基于Apache Lucene的开源的分布式、高扩展、近实时的搜索引擎。它主要用于海量数据的快速存储、实时检索和高效分析。通过简单易用的RESTful API,它隐藏了Lucene的复杂性,使得全文搜索变得简单。

2.1.1 安装包下载

下载地址:https://www.elastic.co/downloads/past-releases#elasticsearch

2.1.2 解压安装ElasticSearch
  • 解压elasticsearch-7.8.0.tar.gz到/opt/module目录下,并更名
[wolffy@hadoop102 software]$ tar -zxvf /opt/software/elasticsearch-7.8.0-linux-x86_64.tar.gz -C /opt/module/

  • 在/opt/module/elasticsearch-7.8.0路径下创建data文件夹
[wolffy@hadoop102 elasticsearch-7.8.0]$ mkdir data

  • 修改配置文件/opt/module/elasticsearch-7.8.0/config/elasticsearch.yml
[wolffy@hadoop102 config]$ vi elasticsearch.yml

#-----------------------Cluster-----------------------
cluster.name: myes
#-----------------------Node-----------------------
node.name: node102
#-----------------------Paths-----------------------
path.data: /opt/module/elasticsearch-7.8.0/data
#-----------------------Memory-----------------------
bootstrap.memory\_lock: false
#-----------------------Network-----------------------
network.host: hadoop102 
#-----------------------Discovery-----------------------
discovery.seed\_hosts: ["hadoop102", "hadoop103","hadoop104"]
cluster.initial\_master\_nodes: ["node102", "node103","node104"]

cluster.name:如果要配置集群需要两个节点上的elasticsearch配置的cluster.name相同,都启动可以自动组成集群,这里如果不改cluster.name则默认是cluster.name=my-application,
node.name:随意取但是集群内的各节点不能相同

修改后的每行前面不能有空格,修改后的“:”后面必须有一个空格

  • 分发至hadoop103以及hadoop104,分发之后修改配置文件:
[wolffy@hadoop102 module]$ xsync.sh elasticsearch-7.8.0/

[wolffy@hadoop103 elasticsearch-7.8.0]$ vim /opt/module/elasticsearch-7.8.0/config/elasticsearch.yml
# 在hadoop103机器修改以下信息
node.name: node103
network.host: hadoop103

[wolffy@hadoop104 elasticsearch-7.8.0]$ vim /opt/module/elasticsearch-7.8.0/config/elasticsearch.yml
# 在hadoop104机器修改以下信息
node.name: node104
network.host: hadoop104

2.1.3 调整linux内核参数
  • 切换到root用户,编辑limits.conf 添加类似如下内容
[root@hadoop102 elasticsearch-7.8.0]# vi /etc/security/limits.conf
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096

注意:*不要省略掉。以上操作为增加Linux文件系统中可以同时打开的文件句柄数。

  • 切换到root用户修改配置sysctl.conf
[root@hadoop102 elasticsearch-7.8.0]# vi /etc/sysctl.conf
vm.max\_map\_count=655360

以上修改的Linux配置需要分发至其他节点.然后重新启动Linux,必须重启!!!

2.1.4 ElasticSearch启动
  • 单点启动
[wolffy@hadoop102 elasticsearch-7.8.0]$ /opt/module/elasticsearch-7.8.0/bin/elasticsearch
[wolffy@hadoop103 elasticsearch-7.8.0]$ /opt/module/elasticsearch-7.8.0/bin/elasticsearch
[wolffy@hadoop104 elasticsearch-7.8.0]$ /opt/module/elasticsearch-7.8.0/bin/elasticsearch

  • 群起脚本elasticsearch_control.sh
[wolffy@hadoop102 bin]$ vim /home/wolffy/bin/elasticsearch_control.sh
#!/bin/bash 

# 请确保SSH密钥认证已经设置好,以便脚本能够无密码登录到每台机器上执行命令 
# # 定义Elasticsearch的地址和端口
ELASTICSEARCH\_HOST=("hadoop102" "hadoop103" "hadoop104")  
ELASTICSEARCH\_PORT="9200"

# 定义启动Elasticsearch的命令 
START\_CMD="nohup /opt/module/elasticsearch-7.8.0/bin/elasticsearch > /dev/null 2>&1 &"
# 定义停止Elasticsearch的命令 
STOP\_CMD="ps -ef | grep Elasticsearch | grep -v grep | awk '{print \$2}' | xargs kill "
# 定义检查Elasticsearch状态的命令 
STATUS\_CMD="curl http://${ELASTICSEARCH\_HOST}:${ELASTICSEARCH\_PORT}/\_cat/nodes?v"  

# 函数:启动Elasticsearch服务 
start\_elasticsearch() {  
    for i in "${ELASTICSEARCH\_HOST[@]}"; do  
        echo "Starting Elasticsearch on $i..."  
        ssh $i "$START\_CMD"  
        if [ $? -eq 0 ]; then  
            echo "Elasticsearch started successfully on $i."  
        else  
            echo "Failed to start Elasticsearch on $i."  
        fi  
    done  
}  
  
# 函数:停止Elasticsearch服务 
stop\_elasticsearch() {  
    for i in "${ELASTICSEARCH\_HOST[@]}"; do  
        echo "Stopping Elasticsearch on $i..."  
        ssh $i "$STOP\_CMD"  
        if [ $? -eq 0 ]; then  
            echo "Elasticsearch stopped successfully on $i."  
        else  
            echo "Failed to stop Elasticsearch on $i."  
        fi  
    done  
}  

# 函数:检查Elasticsearch服务状态 
check\_elasticsearch\_status() {  
    for i in "${ELASTICSEARCH\_HOST[@]}"; do  
        echo "Checking Elasticsearch status on $i..."  
        ssh $i "$STATUS\_CMD"
        # 执行curl命令并输出集群健康状态 
        echo "Checking Elasticsearch cluster health..."  
        $CHECK\_HEALTH\_CMD 
        # 检查curl命令的退出状态,如果非0则输出错误消息 
        if [ $? -ne 0 ]; then  
            echo "Failed to retrieve Elasticsearch cluster health."  
            exit 1  
        fi
    done  
}   

# 解析命令行参数 
case "$1" in  
    start)  
        start_elasticsearch  
        ;;  
    stop)  
        stop_elasticsearch  
        ;;  
    status)  
        check_elasticsearch_status  
        ;;  
    *)  
        echo "Usage: $0 {start|stop|status}"  
        exit 1  
        ;;  
esac

[wolffy@hadoop102 bin]$ chmod +x /home/wolffy/bin/elasticsearch_control.sh
[wolffy@hadoop102 bin]$ elasticsearch_control.sh start
[wolffy@hadoop102 bin]$ elasticsearch_control.sh status
[wolffy@hadoop102 bin]$ elasticsearch_control.sh stop

  • 访问:http://hadoop102:9200/_cat/nodes?v

2.2 安装Kibana-7.8.0

Kibana是一个用于探索、可视化和分享ES数据的客户端。因此在任一节点安装即可。

2.2.1 安装包下载

下载地址:https://www.elastic.co/downloads/past-releases#kibana

2.2.2 解压安装Kibana
  • 将kibana压缩包上传到所安装节点的指定目录
[wolffy@hadoop102 module]$ tar -zxvf /opt/software/kibana-7.8.0-linux-x86_64.tar.gz -C /opt/module/
[wolffy@hadoop102 module]$ mv /opt/module/kibana-7.8.0-linux-x86_64/ /opt/module/kibana-7.8.0

  • 修改相关配置连接Elasticsearch
[wolffy@hadoop102 kibana-7.8.0]$ vi config/kibana.yml
server.host: "hadoop102"
server.port: 5601
elasticsearch.hosts: ["http://hadoop102:9200"]
i18n.locale: "zh-CN"

2.2.3 Kibana启动
  • 启动Kibana
[wolffy@hadoop102 kibana-7.8.0]$ bin/kibana

  • Kibana启停脚本(安装nodejs)
[wolffy@hadoop102 bin]$ vim /home/wolffy/bin/kibana_control.sh
#!/bin/bash 
  
# 定义Kibana的安装路径 
KIBANA\_HOME="/opt/module/kibana-7.8.0" 
  
# 定义Kibana的进程名或关键字,用于查找进程ID 
KIBANA\_PROCESS\_NAME="node ./bin/../src/cli"  
  
# 函数:启动Kibana 
start\_kibana() {  
    # 切换到Kibana的安装目录 
    cd "$KIBANA\_HOME" || exit  
  
    # 启动Kibana 
    echo "Starting Kibana..."  
    nohup ./bin/kibana &> kibana.log & # 在后台启动Kibana并将输出重定向到kibana.log 
  
    # 检查Kibana进程是否正在运行(可选) 
    sleep 5 # 等待Kibana启动 
    if pgrep -f "$KIBANA\_PROCESS\_NAME" > /dev/null; then  
        echo "Kibana started successfully."  
    else  
        echo "Failed to start Kibana."  
        exit 1  
    fi  
}  
  
# 函数:停止Kibana 
stop\_kibana() {  
    # 查找Kibana的进程ID 
    KIBANA\_PID=$(pgrep -f "$KIBANA\_PROCESS\_NAME")  
  
    # 检查是否找到了Kibana的进程ID 
    if [ -z "$KIBANA\_PID" ]; then  
        echo "Kibana is not running."  
        exit 0  
    fi  
  
    # 停止Kibana进程 
    echo "Stopping Kibana..."  
    kill "$KIBANA\_PID"  
  
    # 等待Kibana进程结束 
    wait "$KIBANA\_PID" || true  
  
    # 检查Kibana是否已停止 
    if pgrep -f "$KIBANA\_PROCESS\_NAME" > /dev/null; then  
        echo "Failed to stop Kibana."  
        exit 1  
    else  
        echo "Kibana stopped successfully."  
    fi  
}  
  
# 检查传入的参数 
case "$1" in  
    start)  
        start_kibana  
        ;;  
    stop)  
        stop_kibana  
        ;;  
    *)  
        echo "Usage: $0 {start|stop}"  
        exit 1  
        ;;  
esac
[wolffy@hadoop102 bin]$ chmod +x /home/wolffy/bin/kibana_control.sh

  • 浏览器访问:http://hadoop102:5601/app/kibana#/dev_tools/console

2.3 安装elasticsearch-analysis-ik-7.8.0

Elasticsearch-Analysis-IK是一个专门为Elasticsearch设计的中文分词器插件,它将Lucene IK分词器集成到Elasticsearch中,并支持自定义词典。

  • 下载解压:https://github.com/infinilabs/analysis-ik/tags
[wolffy@hadoop102 elasticsearch-7.8.0]$ cd plugins/
[wolffy@hadoop102 plugins]$ mkdir ik
[wolffy@hadoop102 plugins]$ cd ik
[wolffy@hadoop102 ik]$ unzip /opt/software/elasticsearch-analysis-ik-7.8.0.zip
[wolffy@hadoop102 ik]$ cp /opt/software/elasticsearch-analysis-ik-7.8.0/* /opt/module/elasticsearch-7.8.0/plugins/ik

  • 分发分词器到所有节点
[wolffy@hadoop102 plugins]$ xsync.sh ik

  • 重新启动Elasticsearch
[wolffy@hadoop102 plugins]$ elasticsearch_control.sh start

2.4 卸载Elasticsearch-7.8.0和Kibana-7.8.0

  • 停止服务后。执行下面命令
[wolffy@hadoop102 module]$ rm -rf /opt/module/elasticsearch-7.8.0
[wolffy@hadoop102 module]$ rm -rf kibana-7.8.0

2.5 注意

因为安全问题,Elasticsearch 不允许root用户直接运行,所以要创建新用户,在root用户中创建新用户,执行如下命令:

useradd wolffy  *# 新增wolffy用户*
passwd  wolffy  *# 为wolffy用户设置密码*
5、为新用户授权
chown -R wolffy:wolffy /opt/elasticsearch-7.4.0 *#文件夹所有者*
将 /opt/elasticsearch-7.4.0文件夹授权给wolffy用户:wolffy用户组

8.0以上需要增加如下配置

打开elasticsearch.yml
新增
xpack.security.enabled: false
xpack.security.transport.ssl.enabled: false

第三章 Elasticsearch-7.8.0通过Docker方式安装

3.1 安装 Elasticsearch-7.8.0

3.1.1 创建网络
# 因为需要部署kibana容器,因此需要让es和kibana容器互联。


**先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前在阿里**

**深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!**

**因此收集整理了一份《2024年最新Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。**
![img](https://img-blog.csdnimg.cn/img_convert/ddce590e5deae4120c8be330805b3860.png)
![img](https://img-blog.csdnimg.cn/img_convert/094528a88ce068a7d1a4fd187a82627d.png)
![img](https://img-blog.csdnimg.cn/img_convert/78fb1e447a9317308b20974af7b8cf76.png)
![img](https://img-blog.csdnimg.cn/img_convert/7740982c2e35bc3b3c3e7a3cc3a1bd25.png)
![img](https://img-blog.csdnimg.cn/img_convert/84fec2adf67eef728b8ee19f77d7d31c.png)

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!**

**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/topics/618542503)**



**先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前在阿里**

**深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!**

**因此收集整理了一份《2024年最新Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。**
[外链图片转存中...(img-npEo8YiW-1714741810563)]
[外链图片转存中...(img-1SNXw8XZ-1714741810563)]
[外链图片转存中...(img-Npn4I5UY-1714741810563)]
[外链图片转存中...(img-aztw46fl-1714741810564)]
[外链图片转存中...(img-1GpoV2h1-1714741810564)]

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!**

**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/topics/618542503)**

  • 16
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值