首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Ganglia在CentOS 6.5的安装

一.Ganglia概述 Ganglia是UC Berkeley发起的一个开源集群监视项目,设计用于测量数以千计的节点。Ganglia的核心包含gmond、gmetad以及一个Web前端。主要是用来监控系统性能,如:cpu 、mem、硬盘利用率, I/O负载、网络流量情况等,通过曲线很容易见到每个节点的工作状态,对合理调整、分配系统资源,提高系统整体性能起到重要作用。(来自百度百科) 二.前期工作EPEL的安装 EPEL(Extra Packages for Enterprise Linux),这是针对RHEL设计的软件仓库,在这个仓库中有很多免费的常用软件,由Fedora项目维护,如果使用的是RHEL,CentOS,Scientific等RHEL系列的linux,可以非常方便的使用EPEL的yum源。 查看本机是否安装了EPEL: rpm -q epel-release package epel-release is not installed 如果没有安装,可以选择下面的情况来安装: 32位系统选择: rpm -ivh http://download.fedora.RedHat.com/pub/epel/6/i386/epel-release-6-8.noarch.rpm 64位系统选择: rpm -ivh http://download.fedora.redhat.com/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm 导入key: rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 安装后可以查看,得到: rpm -q epel-release epel-release-6-8.noarch 三.ganglia的安装 目前集群有三个节点:hdp1,hdp2,hdp3,其中hdp1为主节点 1.服务端安装 在服务器中需要安装 yum -y install ganglia 2.客户端安装 在客户端中需要安装 yum -y install ganglia-gmond 四.ganglia的配置 1.服务端配置 在/etc/ganglia/gmetad.conf中进行下面的配置 data_source "ShaQi" hdp1 hdp2 hdp3 setuid_username "apache" (可以不设置) 2.客户端配置 在/etc/ganglia/gmond.conf中进行下面的配置 cluster {   name = "ShaQi"   owner = "apache"   latlong = "unspecified"   url = "unspecified" } 其中name需要与gmetad.conf中data_source中的“ShaQi”匹配 owner需要与setuid_username中的值对应(如果没有设置,可以不用修改) 修改了setuid_username后需要对权限进行更改: Chown -R apache:apache /var/lib/ganglia/rrds 否则使用service gmetad status时出现gmetad dead but subsys locked 3.Apache的服务端配置 /etc/httpd/conf.d/ganglia.conf 代码如下: Alias /ganglia /usr/share/ganglia <Location /ganglia> Order deny,allow Allow from all </Location> 五.ganglia的启动 启动服务端gmetad并且设为开机启动 service gmetad start  chkconfig gmetad on 通过telnet localhost 8651进行测试 启动客户端的gmond并设为开机启动 service gmond start chkconfig gmond on 通过telnet localhost 8649进行测试 启动apache服务端 service httpd restart 六.ganglia的测试 通过浏览器访问:http://service_ip/ganglia加载下面界面

01

深入理解计算机系统(第三版)/ CSAPP 杂谈,第11章:网络编程

int socket(int domain, int type, int protocol) // 创建套接字描述符,成功返回非负数描述符,失败为-1 int connect(int clientfd, const struct sockaddr *addr, socklen_t addrlen) // 连接服务器,成功为 0,失败为 -1 int bind(int sockfd, const struct sockaddr *addr, socklen_t addrlen) // 连接客户端,成功为 0,失败为 -1 int listen(int sockfd, int backlog) // 等待客户端连接。此函数将主动套接字转化为监听套接字,成功为 0,失败为 -1 int accept(int listenfd, struct sockaddr *addr, socklen_t addrlen) // 等待来自客户端的连接,成功返回非负数连接描述符,失败为-1 int getaddrinfo(const char* host, const char* service, const struct addrinfo* hints, struct addrinfo** result) // 用于主机名,主机地址,服务名,端口号的字符串表示转换成 addrinfo // addrinfo 是一个列表,客户端调用 getaddrinfo 后需要遍历 result 这个列表,直到某个元素可以执行 socket 和 connect 成功 // host 可以是域名也可以是 ip 地址 // service 可以是服务名(http)或端口号 // hints 用于设置一些参数以便对返回的 result 列表做更好的控制 int getnameinfo(const struct sockaddr *sa, socklen_t salen, char* host, size_t hostlen, char *service, size_t servlen, int flags) // 用于 sockaddr 转换成 主机名,主机地址,服务名,端口号的字符串表示 // 简化版(非 Linux 内核内置) int open_clientfd(char *hostname, char *port) // 客户端连接服务器 int open_listenfd(char* port) // 服务器监听端口

03

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券