asf centos,centos镜像
老铁们,大家好,相信还有很多朋友对于asf centos和centos镜像的相关问题不太懂,没关系,今天就由我来为大家分享分享asf centos以及centos镜像的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!
apache traffic server怎么配置webui
一介绍
Apache Traffic Server(ATS或TS)是一个高性能的、模块化的 HTTP代理和缓存服务器。Traffic Server最初是 Inktomi公司的商业产品,该公司在 2003年被 Yahoo收购,之后 Traffic Server一直在 Yahoo内部使用长达 4年,直到 2009年 8月 Yahoo向 Apache软件基金会(ASF)贡献了源代码,并于 2010年 4月成为了 ASF的顶级项目(Top-Level Project)。 Apache Traffic Server现在是一个开源项目,开发语言为C++。
Traffic Server的开发团队曾经由 Chuck Neerdaels领导,他也是 Harvest项目的早期创始人之一,Harvest项目后来发展为十分流行的 Squid项目;Leif Hedstrom直接管理着现在的 Traffic Server开发团队。目前 Chuck Neerdaels和 Leif Hedstrom都已加盟知名 CDN服务提供商 Akamai。
HTTP代理服务器是 HTTP服务器的一种实现,处于客户端(一般为浏览器)与另一个 HTTP服务器之间(通常指源服务器,Origin Server)。HTTP代理通常分为正向代理、反向代理和透明代理,我们主要关注的是反向代理(Reverse Proxy,见下图)反向代理服务器根据明确配置的映射规则来处理用户请求。反向代理服务器通常会设置一个较大的缓存区,服务器处理请求的同时将请求的内容缓存在服务器本地,当下次用户请求同一个对象时,服务器可直接从缓存区里取出对象,而不用去源服务器去取,起到了加速的效果。另外,配置反向代理的映射规则也能实现负载均衡的功能。除了 Traffic Server,常见的开源代理服务器还有 Squid,Varnish,Nginx,HAProxy。
Apache<wbr>Traffic<wbr>Server<wbr>简介
Traffic Server在 Yahoo内部使用了超过 4年,主要用于 CDN服务,CDN用于分发特定的 HTTP内容,通常是静态的内容如图片、JavaScript、CSS。下面是Traffic Server在 Yahoo CDN应用的一些情况:
超过 4年的使用中,缓存中没有出现已知的数据损坏(data corruption);
作为反向代理,服务器方便部署和管理,并且大部分配置的更改可直接在线上服务器完成,而不用重启服务;
在高并发情况下扩展良好,支持 HTTP/1.1协议特性,如 SSL、Keep-Alive;
在世界范围内部署了超过 100台服务器;
在实际CDN中,每秒处理超过 350,000次请求,达到 30 Gbps,最大容量至少十倍于普通使用,以应对高峰时的大量请求;
在实际 CDN中,每台服务器有 20,000到 30,000的 keep-alive并发连接,其中有 1,000到 2,000的连接是一直很活跃的;
实验环境中,单台服务器每秒处理 105,000次请求,请求的对象是被缓存住的小文件;
实验环境中,请求大文件时,单台服务器达到 3.6 Gbps(4x GigE NIC bonded)。
二组件、机制
Traffic Server(TS)的组成
1.Traffic Server缓存
TS缓存包含一个高速的对象数据库,数据库根据 URL和相关头部来索引对象,对于同一对象可以缓存不同版本(如不同的编码、语言)。
当缓存空间满后,TS会移除过期的数据。
当磁盘出错时,TS将不再使用该块磁盘,转而使用剩下的磁盘。所有磁盘都出错时,TS将切换至 proxy-only模式,即只代理,不缓存。
可分区,即可以给指定的协议和源服务器划分一定数量的磁盘空间
2.RAM缓存
内存缓存区储存比较热门的对象,在流量的高峰期时能加快处理速度和降低磁盘负载。
3.主机数据库
储存 DNS信息,方便主机名到 IP地址的快速转换
储存每个主机的 HTTP版本,方便高级协议特性的使用
储存主机的可靠性和可用性信息
4.DNS解析器
TS原生实现了 DNS解析器,不依赖较慢的传统解析库。同时也降低了 DNS的流量。
5.Traffic Server进程
traffic_server进程负责接受连接,处理协议请求,然后从缓存或源服务器获取对象并返回
traffic_manager进程是 TS的命令和控制设施,负责启动、监控和配置 traffic_server进程,它也负责代理的端口配置、统计信息的接口、集群管理和虚拟 IP的故障转移。
如果 traffic_manager检测到 traffic_server进程失效,它立即重启 traffic_server进程并且维护一个连接队列,保存此时到来的请求,完全重启后这个队列里的连接将按顺序被处理。
traffic_cop进程监视 traffic_server和 traffic_manager进程,此进程周期性的查询 traffic_server和 traffic_manager进程的健康状况,如果查询在一定间隔时间内未返回或者返回信息不正确,traffic_cop将重启 traffic_manager和 traffic_server进程。
Apache<wbr>Traffic<wbr>Server<wbr>简介
6.管理工具
Traffic Line是命令行程序,可以用来快速监视 Traffic Server的性能和网络流量,也能配置 TS。
Traffic Shell也是命令行工具,进入该 shell后有自己一套语法,可代替 Traffic Line完成监控、配置任务。
通过 Traffic Line和 Traffic Shell对配置作出的修改将会自动写入配置文件中。
Traffic Server的底层机制
Apache Traffic Server不同于大部分开源代理服务器,它结合了两种技术来处理高并发:
异步事件处理(Asynchronous event processing)
多线程(Multi-threading)
Traffic Server在多 CPU、多核的硬件上扩展良好,能充分利用所有可用的 CPU和其他资源。
HTTP代理缓存相关机制
1. Traffic Server处理请求的过程
1)用户请求一个 web对象,TS收到请求
2)TS通过对象的地址,在对象数据库(缓存)中去定位该对象
a.如果对象在缓存中,TS会检查对象是否新鲜(fresh)
如果新鲜,TS从缓存里返回该对象给用户,此时称为缓存命中(cache hit)
如果不新鲜(stale),TS会连接源服务器去验证对象是否仍然新鲜,即重新验证(revalidation),如果仍然新鲜,TS立即将缓存中的副本返回给用户
b.如果对象不在缓存中(缓存未命中,cache miss),或者缓存的副本不再有效,TS会去源服务器获取对象,然后同时做下面两件事
将对象返回给用户
将对象放到本地缓存中
2. Traffic Server判断 HTTP对象是否新鲜(fresh)的过程
如果有 Expires或者 max-age头部直接定义缓存的过期时间,TS将对比当前时间和过期时间去判断对象是否新鲜
如果没有上述头部,TS将检查 Last-Modified和 Date头部(其中Date是源服务器返回对象的时间,如果没有 Last-Modified头部,TS会用对象写入缓存的时间以作代替),然后用以下公式算出新鲜的时间范围(freshness_limit,可理解为保质期):
freshness_limit=( Date- Last-Modified) x 0.1
0.1这个参数可以作调整,并且能限制 freshness_limit的上下限,默认最小是 1小时,最大是 1天
如果没有 Expires头部或者没有 Last-Modified、Date头部,TS将使用默认的 fressness limit
另外,TS还会检查 cache.config配置文件中的 revalidate规则,该规则可以对特定的 HTTP对象设置特定的验证时间(特定的域名、IP、一定规则的 URL、特定的客户端等等)
3.缓存过期(stale),Traffic Server去源服务器重新验证对象可能的情况
仍然 fresh,TS重置 freshness_limit,并返回对象
对象新副本可用,TS缓存新对象,并同时返回给用户
源服务器上的对象不再存在,TS也不再返回该副本给用户
源服务器没有响应,TS返回过期的对象并发出警告。
更详细的说明请查看 Traffic Server管理文档中的 HTTP Proxy Caching部分
三安装、使用
Apache Traffic Server开源后添加了 64位支持,也移植到了常见的 Linux发行版、FreeBSD、OpenSolaris和 Mac OS X,开源之前 Yahoo Traffic Server一直运行在 32-bit Linux上。
(以 Apache Traffic Server 2.1.1 unstable为例在 32-bit Linux环境下进行安装测试)
安装
1.下载、解压
wget
wget
md5sum-c trafficserver-2.1.1-unstable.tar.bz2.md5
tar jxvf trafficserver-2.1.1-unstable.tar.bz2
cd trafficserver-2.1.1-unstable
2.编译、安装
查看 README说明文档,安装编译依赖的库(centos可参照 fedora依赖的软件包,pcre包替换为 pcre-devel即可)
./configure--help查看编译的一些选项
./configure(默认安装在/usr/local,如需修改,使用--prefix=PREFIX;参数中还有用户和用户组选项,这是 TS进程运行的身份,默认均为 nobody,centos可以不作修改,其他发行版可能需要修改,如./configure--with-group=nogroup)
make
make install以管理员身份执行
目录结构
默认目录
内容
/usr/local/var/log/trafficserver
运行时创建的日志文件
/usr/local/var/trafficserver
运行时的一系列文件
/usr/local/etc/trafficserver
配置文件
/usr/local/bin
可执行文件
/usr/local/libexec/trafficserver
插件
初步配置
records.config是 key-value格式的配置文件,负责大部分全局的选项设置,即主配置文件。
storage.config用于指定磁盘存储。
remap.config定义映射规则,用于请求的重写(rewrite),反向代理即在此配置。
records.config中关键的配置
CONFIG proxy.config.exec_thread.autoconfig INT 1
CONFIG proxy.config.exec_thread.autoconfig.scale FLOAT 2.0
CONFIG proxy.config.exec_thread.limit INT 2#经观察是每个核创建的线程数,官方文档中未提及
CONFIG proxy.config.cluster.ethernet_interface STRING eth0#设置以太网接口
CONFIG proxy.config.http.server_port INT 8080#监听端口,反向代理通常为80
LOCAL proxy.local.incoming_ip_to_bind STRING 0.0.0.0#绑定的 IP,可省略,默认即为 0.0.0.0
CONFIG proxy.config.http.cache.http INT 1#打开缓存功能
CONFIG proxy.config.cache.ram_cache.size INT 512M# RAM缓存大小
CONFIG proxy.config.reverse_proxy.enabled INT 1#打开
CONFIG proxy.config.url_remap.remap_required INT 1# 1为只反向代理,0为正向+反向代理
CONFIG proxy.config.url_remap.pristine_host_hdr INT 0
CONFIG proxy.config.ssl.enabled INT 0#关闭SSL
CONFIG proxy.config.ssl.server.cert.filename STRING server.pem
CONFIG proxy.config.http.server_max_connections INT 2000#同源服务器的最大连接数
CONFIG proxy.config.http.keep_alive_no_activity_timeout_out INT 60#当一个事务结束后同原服务器保持连接的时间
remap.config配置
map 通过 DNS轮询可实现负载均衡
reverse_map reverse_map能在源服务器有 HTTP重定向跳转时,修改重定向请求,即重写 Location头部内容
map
reverse_map
map
reverse_map
storage.config配置
/data1 67108864#指定一个或多个目录,注明缓存大小,也可直接指定 raw分区,详见storage.config中的注释说明
更详细的配置可参考官方管理指南
服务控制
运行/usr/local/bin/trafficserver start
结束/usr/local/bin/trafficserver stop
重启/usr/local/bin/trafficserver restart
命令行工具、监控
/usr/local/bin/traffic_line需用管理员身份执行
查看帮助 traffic_line-h
查看变量的值 traffic_line-r变量名(变量名见官方管理指南附录C,含 TS运行时统计数据)
给变量赋值 traffic_line-s变量名-v值(变量名见records.config)
不重启TS使配置生效 traffic_line-x
/usr/local/bin/traffic_shell需用管理员身份执行,进入后提示符为“%”
查看帮助 man traffic_shell(由于开发者疏忽,暂不能用)
show命令,如%show:cache-stats查看缓存统计,如命中情况,缓存大小;如%show:proxy-stats查看命中率
config命令,如%config:logging event disable关闭日志;如%config:cache clear,清除缓存,config命令作出的修改都会立即生效
/usr/local/bin/traffic_logcat日志查看工具
traffic_logcat-h获得帮助
查看二进制日志 traffic_logcat日志文件名
Traffic Server系统自身的运行日志可在/var/log/message中查看(centos),用于排错
traffic_logstats提供了基于日志的统计功能
四结论
Apache Traffic Server开源后功能在不断被开发,性能得到很大提升,社区也在逐渐发展,但除了 Yahoo之外还很少有其他实践,很多功能(如集群)的文档有待完善。Traffic Server丰富的插件开发是其一大亮点,模块化的特点使其拥有很好的扩展性和灵活性,再加上它的高性能,相信 Apache Traffic Server未来将在很多场景中替代传统的代理和缓存服务器而成为大家的首选。
怎么破解CentOS的root密码
在Linux系统中,如果忘记了root用户的密码,可以通过修改启动参数进入单用户模式来重置密码。以CentOS为例,具体步骤如下:
首先,在启动时进入GRUB引导菜单。可以通过在启动过程中按下“e”键来选择需要修改的内核项。然后,在该内核项的末尾加上“single”参数,表示启动单用户模式。接着,回车并按“b”启动系统。进入单用户模式后,无需输入密码。这时,可以使用“passwd root”命令修改root用户的密码。有时会提示“bad password”,这是由于设置的密码过于简单或为常见的单词所致,无需担心。
完成密码修改后,重启系统即可正常使用。
对于Debian Linux系统,同样可以使用GRUB引导菜单中的“recovery mode”选项,选择“rw single init=/bin/bash”参数启动。进入单用户模式后,执行“passwd root”命令修改root用户的密码,然后重启系统。
在FreeBSD系统中,开机后进入引导菜单,选择“single user mode”选项。执行“mount-a”和“fsck-y”命令,确保文件系统已正确挂载且无错误。接着,使用“passwd”命令修改root用户的密码,最后执行“init 6”命令重启系统。
对于Solaris系统,开机时选择“solaris failasfe”项,然后在系统提示下选择“y”以允许以读写模式挂载根文件系统。进入单用户模式后,执行“passwd”命令修改root用户的密码,最后执行“init 6”命令重启系统。
在NetBSD系统中,开机后在出现倒数五秒时,输入“boot-s”命令进入单用户模式。接着,执行“mount-a”和“fsck-y”命令确保文件系统已正确挂载且无错误。然后,使用“passwd”命令修改root用户的密码,最后使用“exit”命令返回多人模式。
nifin刹车系统是哪国的
nfifi简介
在Apache NiFi官网上,是这么介绍NiFi的:“一个易用、强大、可靠的数据处理与分发系统”。Apache NiFi的设计目标是自动化管理系统间的数据流。
NiFi之前是在美国国家安全局(NSA)开发和使用了8年的一个可视化、可定制的数据集成产品。2014年NSA将其贡献给了Apache开源社区,2015年7月成功成为Apache顶级项目。
nifi是一个基于web-ui用户界面,高度可配置的、安全的、基于工作流设计理念、具有很强交互性的、强大易用的、为不同系统间或者系统内的提供数据流管理与处理的系统。
单机版安装
采用maven编译的方式安装
1、安装git
可以使用Centos7上面自带的git。
2、安装maven,版本至少3.1.0以上
注意配置阿里云Maven镜像,不然编译的时候很慢。
3、Checking out from Git,从git中克隆源码
命令:git clone
4、安装
(1)nifi 1.x以上需要jdk8以上,0.x需jdk7以上
(2)Maven需要至少3.1.0以上版本
(3)有些构建步骤比较耗内存,确保MAVEN_OPTS提供足够的内存,可在环境变量中加入export MAVEN_OPTS=”-Xms1024m-Xmx3076m-XX:MaxPermSize=256m”,具体多大根据自己的实际情况来配置。
(4)构建完整的代码库。在源码树运行的根目录中如下命令:
mvn-T C2.0 clean package-Pinclude-grpc-DskipTests
(5)编译完之后在nifi-assembly/target目录下包含解压缩的文件,可以在bin目录下运行启动nifi,./nifi.sh start
(6)然后访问http://主机:8080/nifi/,可在ui界面上玩了。
注:8080是nifi默认端口,如果有冲突,可在nifi.properties中修改端口号。
简单使用
nifi核心术语
FlowFile
一个FlowFile代表每个被系统处理的数据对象,一个FlowFile由两部分组成:属性和内容。内容是数据本身,属性是与数据相关的key-value的键值对,用于描述数据
FlowFileProcessor
Processor是NiFi的组件,可以用来创建、发送、接受、转换、路由、割裂、合并、处理FlowFiles。在用户建立数据流时,Processor是最重要的组成部分,可以将操作结果提交给下一个Processor或者回滚。
Connection
提供Processors之间的连接,用来定义Processors之间的执行关系,并允许不同Processors之间以不同的速度进行交互。
Flow Controller
控制器,它记录processor之间的连接关系,管理线程,管理processor和线程之间的使用关系。是一个类似broker的角色。
Processgroup
它表示一组processor和它们之间的连接。对于这个group而言,它可以通过input端口和output端口,进行数据的接收和发送。
实例
在FTP服务器上有一个txt的压缩文件,内容为:
这里写图片描述
使用nifi从FTP上获取此文件,将其解压,并将M替换为“男”,F替换为“女”,并将处理后的txt文件put到HDFS。
在nifi的web-ui上通过拖拽的方式将Processor拖拽到画布上进行配置,对于nifi的processor的配置说明可参考官网nifi官方文档。
要实现以上功能需要5个processor,相关配置如下:
1.GetFTP,负责从FTP的特定路径下获取文件,并创建FlowFile供后续处理,具体配置如下:
这里写图片描述
File Filter Regex属性可以配置要处理文件名的正则表达式,从而起到筛选文件的作用。
2. CompressContent,负责压缩或解压FlowFile的内容,具体配置如下:
这里写图片描述
3.ReplaceText,通过定义正则表达式,可对正则表达式匹配到的内容进行替换,从而起到对FlowFile内容进行修改的作用。此ReplaceText将FlowFile内容中的M替换成文字“男”。具体配置如下:
这里写图片描述
4. ReplaceText,与上一个Processor是同一个类型,将FlowFile内容中的F替换成文字“女”。
5. PutHDFS,负责将FlowFile以文件形式存放到HDFS的中。