Hadoop 核心组件 HDFS 角色及概念 是Hadoop体系中数据存储管理的基础。它是一个高度容错的系统,用于在低成本的通用硬件上运行。 角色和概念 – Client – Namenode – Secondarynode – Datanode NameNode – Master节点,管理HDFS的名称空间和数据块映射信 息,配置副本策略,处理所有客户端请求。 Secondary NameNode – 定期合并 fsimage 和fsedits,推送给NameNode – 紧急情况下,可辅助恢复NameNode, 但Secondary NameNode并非NameNode的热备。 DataNode – 数据存储节点,存储实际的数据 – 汇报存储信息给NameNode。 Client – 切分文件 – 访问HDFS – 与NameNode交互,获取文件位置信息 – 与DataNode交互,读取和写入数据。 Block – 每块缺省64MB大小
filebeat: prospectors: # - #每个日志文件的开始 # paths: #定义路径 # - /var/www/logs/access.log #绝对路径 # input_type: log #日志类型为log # document_type: api4-nginx-accesslog # 此名称要与logstash定义的名称相对应,logstash要使用此名称做type判断使用 - paths: - /opt/apps/huhu/logs/ase.log input_type: log document_type: "ase-ase-log" encoding: utf-8 tail_files: true #每次最后一行 multiline.pattern: '^\[' #分割符 multiline.negate: true multiline.match: after #最后合并
[root@master ~]# mkdir /srv/salt/prod/pkg [root@master ~]# mkdir /srv/salt/prod/haproxy [root@master ~]# mkdir /srv/salt/prod/haproxy/files [root@master pkg]# pwd /srv/salt/prod/pkg [root@master pkg]# vim pkg-init.sls [root@master pkg]# cat pkg-init.sls pkg-init: pkg.installed: - names: - gcc - gcc-c++ - glibe - make - autoconf - openssl - openssl-devel [root@master prod]# cd haproxy/files/ [root@master files]# wget https://fossies.org/linux/mis
root pts/1 2018-11-16 00:38 (desktop-4a0ohej) [root@master init]# tail -f /var/log/messages Nov 16 01:01:01 master systemd: Starting Session 34 of user root. Nov 16 01:10:01 master systemd: Started Session 35 of user root. Nov 16 01:10:01 master systemd: Starting Session 35 of user root. Nov 16 01:14:00 master root: [euid=root]:root pts/0 2018-11-16 00:29 (desktop-4a0ohej):[pwd]export PROMPT_COMMAND=' { msg=$(history 1 | { read x y; echo $y; });logger "[euid=$(whoami)]":$(who am i):['
状态模块: https://docs.saltstack.com/en/latest/ref/states/all/salt.states.file.html#module-salt.states.file [root@master ~]# grep -v '^$' /etc/salt/master |grep -v '#' client_acl: luo: - test.ping - network.* file_roots: #top.sls路径,可以写多个 base: #但是只读取base路径 - /srv/salt/base test: - /srv/salt/test prod: - /srv/salt/prod pillar_roots: base: - /srv/pillar mysql.host: '192.168.43.118' mysql.user: 'salt' mysql.pass: 'Myq1231!' mysql.db: 'salt' mysql.port: 330
目标 https://docs.saltstack.com/en/latest/ 模块 https://docs.saltstack.com/en/latest/ref/modules/all/index.html salt '*' service.available sshd 验证sshd服务 [root@master ~]# grep -v '^$' /etc/salt/master |grep -v '#' client_acl: #客户端开启模块限制 luo: #用户名 - test.ping - network.* file_roots: base: - /srv/salt pillar_roots: base: - /srv/pillar [root@master ~]# systemctl restart salt-master 给用户授权 [root@master ~]# useradd luo useradd:用户“luo”已存在 [root@master ~]# passwd
[root@localhost master]# salt-key -A 同意所有 [root@localhost master]# salt-key -a 192* 可选 *代表所有 -L 列表 -D 删除所有 -d 删除选中的 [root@localhost master]# salt-key -a 192* The following keys are going to be accepted: Unaccepted Keys: 192.168.43.118 192.168.43.71 Proceed? [n/Y] Y Key for minion 192.168.43.118 accepted. Key for minion 192.168.43.71 accepted.
Saltstack工作机制 Master和Minion都以守护进程的方式运行 Master监听配置文件里定义的ret_port(接收minion请求),和publish_port(发布消息)的端口 当Minion运行时,他会自动连接到配置文件里定义的Master地址ret_port端口进行连接认证
使用SAN共享存储空间 一 配置后端存储 1.1 装包 1.2 修改配置文件 1.3 启动服务 1.4 查看 1.1 装包 yum list |grep -i scsi yum -y install scsi-target-utils rpm -qc scsi-target-utils 1.2 修改配置文件 vim /etc/tgt/targets.conf <target iqn.2018-01.cn.tedu.56.diskb> 63 backing-store /dev/vdb 定义存储设备 66 write-cache off # initiator-address 192.168.4.53 定义前端ip 67 vendor_id tarena 定义出厂商 product_id disktwo 定义磁盘标识 68 </target> <target iqn.2018-01.cn.tedu.56.diskc> 73 backing-store /dev/vdc 76
keepalived(HA)任意单故障节点的高可用集群 1 在高可用集群主机上分别安装keepalived软件 2 分别修改服务的配置文件 3 分别启动keepalived服务 4 在高可用集群主机上分别是否获取VIP地址 5 254客户端访问 1 在高可用集群主机上分别安装keepalived软件 yum list |grep -i keepalived yum -y install keepalived rpm -qc keepalived 2 分别修改服务的配置文件 主: vim /etc/kepalived/kepalived.conf global_defs { notification_email { abc@localhost 设置报警邮件人邮箱 } notification_email_from Alexandre.Cassen@firewall.loc 设置发件人 smtp_server 192.168.200.1 定义邮件服务器 smtp_connect_timeout 30
工作模式: LVS/NAT:通过网络地址转换实现的虚拟服务器 缺点:大并发访问时,调度器的性能成为瓶颈 LVS/DR:直接使用路由技术实现虚拟服务器 节点服务器需要配置VIP,注意MAC地址广播 LVS/TUN:通过隧道方式实现虚拟服务器 负载均衡调度算法: (Round Robin)rr轮询:将客户端请求平均分发到Real Server (Weighted Round Robin)wrr加权轮询:根据Real Server权重值进行轮询调度 (Least Connections)lc最少连接:选择连接数最少的服务器 (Weighted Least Connections)wlc加权最少连接:根据Real Server权重值,选择连接数最少的服务器 (Source Hashing)sh源地值散列:根据请求的目标IP地址,作为散列键(Hash Key)从静态分配的散列表找出对应的服务器
构建一个有http和ssh服务的镜像 mkdir /root/build cd /root/build mkdir /root/build/dockerfile cp /etc/yum.repos.d/xixi.repo /root/build/ vim oo.sh #!/bin/bash EnvironmentFile=/etc/sysconfig/sshd /usr/sbin/sshd -D & EnvironmentFile=/etc/sysconfig/httpd /usr/sbin/httpd -DFOREGROUND & wait chmod 755 oo.sh vim Dockerfile FROM centos MAINTAINER luozixu RUN rm -rf /etc/yum.repos.d/*.repo ADD local.repo /etc/yum.repos.d/xix.repo RUN yum -y install net-tools psmisc vim-enhanced iproute httpd openssh-server EN
Kibana 安装 – kibana 的安装非常简单,我们使用 rpm 方式安装 rpm –ivh kibana-4.5.2-1.x86_64.rpm – kibana 默认安装在 /opt/kibana 下面,配置文件在 /opt/kibana/config/kibana.yml – 我们只需要修改少量的配置就可以启动 kibana.yml 的配置 vim /opt/kibana/config/kibana.yml server.port: 5601 server.host: "0.0.0.0" elasticsearch.url: "http://192.168.4.13:9200" kibana.index: ".kibana" kibana.defaultAppId: "discover" elasticsearch.pingTimeout: 1500 elasticsearch.requestTimeout: 30000 elasticsearch.startupTimeout: 5000 – 除 elasticsearch.url 需要配置为我们 ES 集群的地址之外
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号