先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新大数据全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip204888 (备注大数据)
正文
- 检查,如果返回值为`vm.max_map_count = 262144`证明修改成功。
```
sysctl vm.max_map_count
```
- 句柄就是用户可以同时打开的文件句柄(包括文件、套接字等)的数量。
+ 修改最大线程数
```
vi /etc/security/limits.conf
```
```
# 添加以下内容
* soft nofile 65536
* hard nofile 65536
* soft nproc 4096
* hard nproc 4096
```
- `limits.conf`用于设置系统资源限制的配置文件。它可以帮助管理员限制用户或进程能够使用的系统资源量。
* 每一行表示对一个用户或用户组的限制,格式为`<domain> <type> <item> <value>`。其中domain:限制的对象,用户/用户组(@groupname)/所有用户(\*);type表示限制类型,如soft(软限制)、hard(硬限制)和 -(不设置限制)等;item表示限制的资源;value表示限制的具体数量。
* 软限制是超过会提示,硬限制是超过会阻塞等待。
* 第一行和第二行表示:限制系统中所有用户可以最多打开的文件数为65536。
* 第三行和第四行表示:限制所有用户可以最多启动的进程数为4096。
+ 重新启动服务
```
reboot
```
- 创建挂载目录
- 创建ES节点配置目录
mkdir -p /etc/es/elasticsearch/node-{1..3}/{config,plugins}
+ 创建ES节点数据目录
mkdir -p /home/es/elasticsearch/node-{1..3}/{data,log}
+ 创建kibana配置目录
mkdir -p /etc/es/kibana/config
+ 目录授权
chmod 777 /etc/es/elasticsearch/node-{1..3}/{config,plugins}
chmod 777 /home/es/elasticsearch/node-{1..3}/{data,log}
chmod 777 /etc/es/kibana/config
-
下载分词器
- 打开下载页面,地址 https://github.com/medcl/elasticsearch-analysis-ik/releases,下载7.17.5版本分词器。
- 切换上传目录
mkdir -p /home/download/es/ik/ && cd /home/download/es/ik/
- 上传
- 解压
unzip elasticsearch-analysis-ik-7.17.5.zip
- 删除zip压缩包,并返回上级
rm -rf elasticsearch-analysis-ik-7.17.5.zip && cd ../
- 复制到对应目录
cp -R ik/ /etc/es/elasticsearch/node-1/plugins/
cp -R ik/ /etc/es/elasticsearch/node-2/plugins/
cp -R ik/ /etc/es/elasticsearch/node-3/plugins/
-
编写配置文件
- node-1
vi /etc/es/elasticsearch/node-1/config/elasticsearch.yml
#集群名称 cluster.name: elastic #当前该节点的名称 node.name: node-1 #是不是有资格竞选主节点 node.master: true #是否存储数据 node.data: true #最大集群节点数 node.max_local_storage_nodes: 3 #给当前节点自定义属性(可以省略) #node.attr.rack: r1 #数据存档位置 path.data: /usr/share/elasticsearch/data #日志存放位置 path.logs: /usr/share/elasticsearch/log #是否开启时锁定内存(默认为是) #bootstrap.memory\_lock: true #设置网关地址,我是被这个坑死了,这个地址我原先填写了自己的实际物理IP地址, #然后启动一直报无效的IP地址,无法注入9300端口,这里只需要填写0.0.0.0 network.host: 0.0.0.0 #设置映射端口 http.port: 9200 #内部节点之间沟通端口 transport.tcp.port: 9300 # 寻找集群中的主节点,默认值为127.0.0.1:9300,也就是自己。如果要发现已存在的群集需要填写对应集群的服务节点信息,如果单节点可以忽略。es7.x 之后新增的配置,写入候选主节点的设备地址,在开启服务后可以被选为主节点,建议把所有的节点都写上。 discovery.seed_hosts: ["node-1","node-2","node-3"] #当你在搭建集群的时候,选出合格的节点集群,有些人说的太官方了, #其实就是,让你选择比较好的几个节点,在你节点启动时,在这些节点中选一个做领导者, #如果你不设置呢,elasticsearch就会自己选举,这里我们把三个节点都写上 cluster.initial_master_nodes: ["node-1","node-2","node-3"] #在群集完全重新启动后阻止初始恢复,直到启动N个节点 #简单点说在集群启动后,至少复活多少个节点以上,那么这个服务才可以被使用,否则不可以被使用 gateway.recover_after_nodes: 2 #删除索引是是否需要显示其名称,默认为显示 #action.destructive\_requires\_name: true #禁用安全配置,否则查询的时候会提示警告 xpack.security.enabled: false #配置允许跨域访问 http.cors.enabled: true http.cors.allow-origin: "\*"
- node-2
vi /etc/es/elasticsearch/node-2/config/elasticsearch.yml
#集群名称 cluster.name: elastic #当前该节点的名称 node.name: node-2 #是不是有资格竞选主节点 node.master: true #是否存储数据 node.data: true #最大集群节点数 node.max_local_storage_nodes: 3 #给当前节点自定义属性(可以省略) #node.attr.rack: r1 #数据存档位置 path.data: /usr/share/elasticsearch/data #日志存放位置 path.logs: /usr/share/elasticsearch/log #是否开启时锁定内存(默认为是) #bootstrap.memory\_lock: true #设置网关地址,我是被这个坑死了,这个地址我原先填写了自己的实际物理IP地址, #然后启动一直报无效的IP地址,无法注入9300端口,这里只需要填写0.0.0.0 network.host: 0.0.0.0 #设置映射端口 http.port: 9200 #内部节点之间沟通端口 transport.tcp.port: 9300 #寻找集群中的主节点,默认值为127.0.0.1:9300,也就是自己。如果要发现已存在的群集需要填写对应集群的服务节点信息,如果单节点可以忽略。es7.x 之后新增的配置,写入候选主节点的设备地址,在开启服务后可以被选为主节点,建议把所有的节点都写上。 discovery.seed_hosts: ["node-1","node-2","node-3"] #当你在搭建集群的时候,选出合格的节点集群,有些人说的太官方了, #其实就是,让你选择比较好的几个节点,在你节点启动时,在这些节点中选一个做领导者, #如果你不设置呢,elasticsearch就会自己选举,这里我们把三个节点都写上 cluster.initial_master_nodes: ["node-1","node-2","node-3"] #在群集完全重新启动后阻止初始恢复,直到启动N个节点 #简单点说在集群启动后,至少复活多少个节点以上,那么这个服务才可以被使用,否则不可以被使用 gateway.recover_after_nodes: 2 #删除索引是是否需要显示其名称,默认为显示 #action.destructive\_requires\_name: true #禁用安全配置,否则查询的时候会提示警告 xpack.security.enabled: false #配置允许跨域访问 http.cors.enabled: true http.cors.allow-origin: "\*"
- node-3
vi /etc/es/elasticsearch/node-3/config/elasticsearch.yml
#集群名称 cluster.name: elastic #当前该节点的名称 node.name: node-3 #是不是有资格竞选主节点 node.master: true #是否存储数据 node.data: true #最大集群节点数 node.max_local_storage_nodes: 3 #给当前节点自定义属性(可以省略) #node.attr.rack: r1 #数据存档位置 path.data: /usr/share/elasticsearch/data #日志存放位置 path.logs: /usr/share/elasticsearch/log #是否开启时锁定内存(默认为是) #bootstrap.memory\_lock: true #设置网关地址,我是被这个坑死了,这个地址我原先填写了自己的实际物理IP地址, #然后启动一直报无效的IP地址,无法注入9300端口,这里只需要填写0.0.0.0 network.host: 0.0.0.0 #设置映射端口 http.port: 9200 #内部节点之间沟通端口 transport.tcp.port: 9300 #寻找集群中的主节点,默认值为127.0.0.1:9300,也就是自己。如果要发现已存在的群集需要填写对应集群的服务节点信息,如果单节点可以忽略。es7.x 之后新增的配置,写入候选主节点的设备地址,在开启服务后可以被选为主节点,建议把所有的节点都写上。 discovery.seed_hosts: ["node-1","node-2","node-3"] #当你在搭建集群的时候,选出合格的节点集群,有些人说的太官方了, #其实就是,让你选择比较好的几个节点,在你节点启动时,在这些节点中选一个做领导者, #如果你不设置呢,elasticsearch就会自己选举,这里我们把三个节点都写上 cluster.initial_master_nodes: ["node-1","node-2","node-3"] #在群集完全重新启动后阻止初始恢复,直到启动N个节点 #简单点说在集群启动后,至少复活多少个节点以上,那么这个服务才可以被使用,否则不可以被使用 gateway.recover_after_nodes: 2 #删除索引是是否需要显示其名称,默认为显示 #action.destructive\_requires\_name: true #禁用安全配置,否则查询的时候会提示警告 xpack.security.enabled: false #配置允许跨域访问 http.cors.enabled: true http.cors.allow-origin: "\*"
- kibana
vi /etc/es/kibana/config/kibana.yml
server.port: 5601 server.host: "0.0.0.0" elasticsearch.hosts: ["http://node-1:9200","http://node-2:9200","http://node-3:9200"] #下面两项,需要开启RBAC时需要打开配合es使用 #elasticsearch.username: "user" #elasticsearch.password: "pass" # 设置中文 i18n.locale: "zh-CN"
-
创建docker-compose文件
- 创建目录并打开
mkdir -p /opt/docker/es && vi /opt/docker/es/docker-compose.yaml
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注大数据)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
& vi /opt/docker/es/docker-compose.yaml
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注大数据)
[外链图片转存中…(img-BV2G1Rju-1713121758148)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!