Gabriel Cánepa 发布的文章

每过段时间,就有新的设备和技术出来,因此如果我们想要充分利用它,保持最新的 Linux 内核就显得很重要。此外,更新系统内核将使我们能够利用新的内核优化,并且它还可以帮助我们避免在早期版本中发现的漏洞。

建议阅读: 如何升级 CentOS 7内核

准备好了在 Ubuntu 16.04 或其上下游衍生版本(如 Debian 和 Linux Mint)中更新你的内核了么?如果准备好了,请你继续阅读!

第一步:检查安装的内核版本

要发现当前系统安装的版本,我们可以:

$ uname -sr

下面的截图显示了在 Ubuntu 16.04 server 中上面命令的输出:

Check Kernel Version in Ubuntu

在 Ubuntu 中检查内核版本

第二步:在 Ubuntu 16.04 中升级内核

要升级 Ubuntu 16.04 的内核,打开 http://kernel.ubuntu.com/~kernel-ppa/mainline/ 并选择列表中需要的版本(发布此文时最新内核是 4.10.1)。

接下来,根据你的系统架构下载 .deb 文件:

对于 64 位系统:

$ wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.10.1/linux-headers-4.10.1-041001_4.10.1-041001.201702260735_all.deb
$ wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.10.1/linux-headers-4.10.1-041001-generic_4.10.1-041001.201702260735_amd64.deb
$ wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.10.1/linux-image-4.10.1-041001-generic_4.10.1-041001.201702260735_amd64.deb

这是 32 位系统:

$ wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.10.1/linux-headers-4.10.1-041001_4.10.1-041001.201702260735_all.deb
$ wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.10.1/linux-headers-4.10.1-041001-generic_4.10.1-041001.201702260735_i386.deb
$ wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.10.1/linux-image-4.10.1-041001-generic_4.10.1-041001.201702260735_i386.deb

下载完成这些所有内核文件后,如下安装:

$ sudo dpkg -i *.deb

安装完成后,重启并验证新的内核已经被使用了:

$ uname -sr

就是这样。你下载就可以使用比 Ubuntu 16.04 默认安装的内核的更新版本了。

总结

本文我们展示了如何在 Ubuntu 系统上轻松升级Linux内核。这里还有另一个流程,但我们在这里没有展示,因为它需要从源代码编译内核,这不推荐在生产 Linux 系统上使用。

如果你仍然有兴趣编译内核作为一个学习经验,你可以在 Kernel Newbies 网站中得到指导该如何做。

一如既往,如果你对本文有任何问题或意见,请随时使用下面的评论栏。


作者简介:

Gabriel Cánepa - 一位来自阿根廷圣路易斯梅塞德斯镇 (Villa Mercedes, San Luis, Argentina) 的 GNU/Linux 系统管理员,Web 开发者。就职于一家世界领先级的消费品公司,乐于在每天的工作中能使用 FOSS 工具来提高生产力。


via: http://www.tecmint.com/upgrade-kernel-in-ubuntu/

作者:Gabriel Cánepa 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

在 Linux 中为什么会有一个名为 root 的特定账户?该怎么使用 root 账户?它在哪些场景下必须使用,哪些场景下不能使用?对于以上几个问题,如果您感兴趣的话,那么请继续阅读。

本文中,我们提供了一些关于 root 账户的参考资料,方便您了解。

root 是什么?

首先,记住这一点,在 Unix 类操作系统中,目录的层级结构被设计为树状结构。起始目录是一个特殊目录,使用斜杠 / 表示,而其他目录都是由起始目录分支而来。由于这种结构很像现实中的树,所以 / 也被称为 root 目录。

下图,我们可以看到以下命令的输出:

$ tree -d / | less

该命令主要是演示一下 / 根目录和树 root 的类比。

Linux 的目录层级

Linux 的目录层级

虽然 root 账户命名的原因还不是很清楚,可能是因为 root 账户是唯一一个在根目录 / 中有写权限的账号吧。

此外,由于 root 账户可以访问 Unix 类操作系统中的所有文件和命令,因此,它也常被称为超级用户。

另外,根目录 //root 目录不能混淆了,/root 目录是 root 账户的家目录。实际上,/root 目录是根目录 / 的子目录。

获取 root 权限

当我们说到 root(或者超级用户)权限的时候,我们指的是这样一种账户的权限:其在系统上的权限包含(但不限于)修改系统并授权其他用户对系统资源的访问权限。

胡乱使用 root 账户,轻则系统崩溃重则系统完全故障。这就是为什么会说,以下准则是使用 root 账户的正确姿势:

首先,使用 root 账户运行 visudo 命令编辑 /etc/sudoers 文件,给指定账户(如:supervisor)授予最低的超级用户权限。

最低超级用户权限可以包含,例如:添加用户 (adduser)修改用户 (usermod)等权限。

接着,使用 supervisor 账户登录并使用 sudo 执行用户管理任务。此时,你可能会发现,当你执行需要超级用户权限(例如:删除软件包)的其它任务时,会失败。

没有使用超级用户权限运行命令

没有使用超级用户权限运行命令

在必须使用超级用户权限时,重复执行以上两个步骤,一旦执行完成,则立即使用 exit 命令退回到无特限的账户。

此时,你需要确定一下其他周期性的任务是否需要超级用户权限?如果需要,那么在 /etc/sudoers 中,给指定的账户或组授予必要的权限,尽量避免直接使用 root 账户操作。

摘要

本文可以作为在 Unix 类操作系统中正确使用 root 账户的简单参考。收藏一下,你就可以随时翻阅!

还是一样,如果您对本文有什么疑问或建议,请使用以下的评论表单给我们评论留言,期待您的回音!


作者简介:

Gabriel Cánepa 来自 Villa Mercedes, San Luis, Argentina。他是一名 GNU/Linux 系统管理员和 Web 开发员,现在一家全球领先的消费品公司就职。他很喜欢使用 FOSS 工具来提高自己的工作效率。


via: http://www.tecmint.com/who-is-root-why-does-root-exist-in-linux/

作者:Gabriel Cánepa 译者:zhb127 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

首先,我能确定本文提及的内容一定会造成激烈的辩论,从之前那篇 我讨厌 GNU/Linux 的五个理由 – 你呢,爱还是恨? 的页底评论区就可见一斑。

也因此,我在此没有使用 hate 这个词,那会让我感觉很不舒服,所以我觉得用 不喜欢 dislike 来代替更合适。

也就是说,请读者记住,文中的观点完完全全出于我个人和自身的经历,而这些想法和经历可能会和他人的相似,也可能相去甚远。

此外,我也意识到,这些所谓的 不喜欢 dislike 是与经验相关的,Linux 就是这个样子。然而,但正是这些事实阻碍了新用户做出迁移系统的决定。

像从前一样,随时留下评论并展开讨论,或者提出任何其他符合本文主题的观点。

不喜欢理由之一:从 Windows 迁移到 Linux 对用户来说是个陡峭的学习曲线

如果说使用 Windows 已经成为了你生活中不可缺少的一个部分,那么你在 Linux 电脑上安装一个新软件之前,还必须要习惯和理解诸如 远程仓库 repository 依赖关系 dependency package 包管理器 package manager 等概念。

不久你也会发现,仅仅使用鼠标点击一个可执行程序是很难完成某个程序的安装的。或者由于一些原因,你没有可用的网络,那么安装一个你想要的软件会是一件非常累人的任务。

不喜欢理由之二:独立学习使用仍存在困难

类似理由一,事实上,最开始独立学习 Linux 知识的时候,很多人都会觉得那是一个巨大挑战。尽管网上有数以千万计的教程和 大量的好书,但初学者也会因此烦了选择困难症,不知从何开始学习。

此外,数不清的社区 (比如:linuxsay.com) 论坛中都有大量的有经验用户为大家无偿提供(通常都是这样的)解答,但不幸的是,这些问题的解答并不完全可信、或者与新用户的经验和知识层面不匹配,导致用户无法理解。

事实上,因为有太多的发行版系列及其衍生版本可以获取,这使得我们有必要向第三方机构付费,让他们指引我们走向 Linux 世界的第一步、了解这些发行版系列之间的相同点以及区别。

不喜欢理由之三:新老系统/软件迁移问题

一旦你下定决心开始使用 Linux,那么无论是在家里或是办公室,也无论是个人版或者企业级,你都要完全从旧系统向新系统迁移,然后要考虑这些年来你所使用的软件在 Linux 平台上的替代产品。

而这确实令人矛盾不已,特别是要面对相同类型(比如文本处理器、关系型数据库系统、图形套件等) 的多个不同程序,而又没有受过专业指导和训练,那么很多人都下定不了决心要使用哪个好。

除非有可敬的有经验用户或者教学视频进行指导,否则存在太多的软件实例给用户进行选择,真的会让人走进误区。

不喜欢理由之四:缺乏硬件厂商的驱动支持

恐怕没有人能否认这样的事实,Linux 走过了漫长的历史,它的第一个内核版本公布已经有 20 多年了(LCTT 译注:准确说是将近 26 年了,1991.10.05 —— 2017.02,相信现今很多我们这些 Linux 用户在第一个内核版本公布的时候都还没出生,包括译者在内)。随着越来越多的设备驱动编译进每次发布的稳定内核中、越来越多的厂商开始支持研究和开发兼容 Linux 的设备驱动,Linux 用户们不再会经常遇到设备运行不正常的情况了,但还是会偶尔遭遇的。

并且,如果你的个人计算或者公司业务需要一个特殊设备,但恰巧又没有现成的 Linux 驱动,你还得困在 Windows 或者其他有驱动支持的其他系统。

尽管你经常这样提醒自己:“闭源软件真他妈邪恶!”,但事实上的确有闭源软件,并且不幸的是,出于商业需求我们多数情况还是被迫使用它。

不喜欢理由之五:Linux 的主要力量仍在于服务器

这么说吧,我加入 Linux 阵营的主要原因是多年前它将一台老电脑生机焕发并能够正常使用让我看到了它的前景。花费了一段时间来解决不喜欢理由之一、之二中遇到的那些问题,并且成功使用一台 566 MHz 赛扬处理器、10 GB IDE 硬盘以及仅有 256 MB 内存的机器搭载 Debian Squeeze 建立起一个家庭文件/打印/ Web 服务于一体的服务器之后,我非常开心。

当我发现即便是处于高负载的情况,htop 显示 系统资源消耗才勉强到达一半,这令非常我惊喜。

你可能已经不停在再问自己,文中明明说的是不喜欢 Linux,为什么还提这些事呢?答案很简单,我是需要一个比较好的 Linux 桌面发行版来运行在一台相对老旧的电脑上。当然我并不指望能够有那么一个发行版可以运行上述提到那种硬件特征的电脑上,但我的确没有发现有任何一款外观漂亮的可定制桌面系统能运行在 1 GB 内存以下的电脑中,如果可以,其速度大概比鼻涕虫还慢吧。

我想在此重申一下:我是说“我没发现”,而非“不存在”。可能某天我会发现一个较好的 Linux 桌面发行版能够用在我房间里那台寿终正寝的笔记本上。如果那天真的到来,我将首先删除这篇文章,并向它竖起大拇指。

总而言之

在本文中,我也尝试了提及 Linux 在某些地方仍需不断改进。我是一名幸福的 Linux 用户,并由衷地感谢那些杰出的社区不断为 Linux 系统、组件和其他功能做出贡献。我想重复一下我在本文开头说的 —— 这些明显的不足点,如果从适当的角度去看也是一种优势,或者也快了吧。

在那到来之前,让我们相互支持,一起学习并帮助 Linux 成长和传播。随时在下方留下你的评论和问题 —— 我们期待你不同的观点。


作者简介:

Gabriel Cánepa —— 一位来自 阿根廷圣路易斯梅塞德斯镇 Villa Mercedes, San Luis, Argentina 的 GNU/Linux 系统管理员,Web 开发者。就职于一家世界领先级的消费品公司,乐于在每天的工作中能使用 FOSS 工具来提高生产力。


译者简介:

GHLandy —— 生活中所有欢乐与苦闷都应藏在心中,有些事儿注定无人知晓,自己也无从说起。


via: http://www.tecmint.com/things-i-dislike-and-love-about-gnu-linux/

作者:Gabriel Cánepa 译者:GHLandy 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

如果你经常光顾 Distrowatch 网站,你会发现每一年的 Linux 系统流行度排行榜几乎都没啥变化。

排在前十名的一直都是那几个发行版,而其它一些发行版也许现在还在排行榜中,到下一年年底就有可能不在了。

关于 Distrowatch 的一个大家很不了解的功能叫做候选列表,它包括以下类型的发行版:

  • 还未进行评审
  • 组件缺失或有缺陷
  • 相关的英文资料不够丰富
  • 该项目好像都没人进行维护

一些非常具有潜力,但是还未被评审的 Linux 系统发行版也是值得大家去关注的。但是注意,由于 Distrowatch 网站暂时没时间或人力去评审这些新的发行版,因此它们可能永远无法进入网站首页排名。

因此,我们将会跟大家分享下 2017 年最具潜力的 5 个新的 Linux 发行版系统,并且会对它们做一些简单的介绍。

由于 Linux 系统的生态圈都非常活跃,你可以期待着这篇文章后续的不断更新,或许在下一年中它将完全大变样了。

不管怎么说,咱们还是来看下这些新系统吧!

1、 SemicodeOS 操作系统

SemicodeOS 操作系统 是一个专为程序员和 Web 开发人员设计的 Linux 发行版。它包括所有的开箱即用的代码编译器,各种文本编辑器,最流行的编程语言的 IDE 环境,以及团队协作编程工具。

即使你不是程序员或者开发人员,但是期望成为他们中的一员,SemicodeOS 系统自带的 Scratch IDE 工具可以在你起步时给以指引。尽管该系统还处于测试阶段,但是我相信这个开发于苏丹的 Linux 发行版在接下来的一年中将会让 Linux 开源社区变得更加丰富多彩。

你可以通过其官网了解更多的详细信息。

Semicode Linux Distro

Semicode Linux 操作系统

2、 EnchantmentOS 操作系统

EnchantmentOS 操作系统是一个基于 Xubuntu 16.04 的发行版,它包括一些经过特别挑选的对内存要求较低的应用程序。这无论对新老设备来说都是一个不错的选择。

它同样遵循 Xubuntu 系统的长期支持周期,并且旨在提供可靠和安全的 Linux 应用软件。除此这外,即便是对非技术人员,其内置的应用程序也都非常地简单易用。

还有, EnchantmentOS 系统即使从 USB 存储设备启动时也表现出超强的性能,这一点是其创建者引以为豪的。

EnchantmentOS

EnchantmentOS 操作系统

3、 Escuelas Linux 操作系统

Escuelas Linux 操作系统(在西班牙语中是 “Linux 学校” 的意思)是一个基于 Bodhi 的 Linux 发行版,它主要是为中小学教育而设计的,它包括各种各样的与教育相关的应用软件。请忽略其西班牙语名字,它也提供全英语支持。

Escuelas Linux 系统其它方面的特性就是它使用的是轻量级桌面环境,低内存和低存储空间要求。其官网宣称,该系统只需要 300 MB 的内存和 20 GB 的硬盘存储空间就可以完美运行。

Escuelas Linux

Escuelas Linux 操作系统

4、 OviOS 操作系统

与前面几个 Linux 发行版截然不同的是,OviOS 操作系统 并不是一个多用途的操作系统。相反,它被描述为企业级存储操作系统,虽然它不基于任何发行版,但是完全与 Linux 标准基线(LSB)相兼容。

你可以把 OviOS 系统作为一种功能强大的存储设备,它能够处理 iSCSI、NFS、SMB 或者是 FTP 服务,除此之外,最新版的 OviOS 系统还能实现复制及高可用性。因此,你还在等什么呢?赶紧去试用一下吧。

OviOS

OviOS 操作系统

5、 Open Network Linux

ONL 操作系统(简称)是一个基于 Debian 的发行版,而且(就像 OviOS 操作系统一样),它也不是一个多用途的操作系统。

如果你是一名网络管理员,你应该为找到这个操作系统而感到庆幸(如果你之前不知道的话),你可以把 ONL 系统应用于裸交换机设备上,替换原有的昂贵且需要授权的操作系统。

值得注意的是, ONL 操作系统因其包含各种各样的开箱即用的软件而出名,并且这些软件都是与面向网络的裸设备相关的。你准备好去尝试了吗?

总结

你应该注意到所有这些发行版在最近几个月内都已经提交给 Distrowatch 网站进行评审了。如果你对其中一些比较感兴趣,可以查看 候选列表 页面,单击发行版名称旁边的 推荐 按钮。你所做的操作将会推动 Distrowatch 网站安排相关人员对该系统进行评审。

像往常一样,如果你对这篇文章有任何问题或建议,请随意提出来。请通过下面的评论区随时与我们进行交流。我们非常期待你的参与!


作者简介:

Gabriel Cánepa 来自 Argentina , San Luis , Villa Mercedes ,他是一名 GNU/Linux 系统管理员和网站开发工程师。目前在一家世界领先的消费品公司工作,在日常工作中,他非常善于使用 FOSS 工具来提高公司在各个领域的生产率。


via: http://www.tecmint.com/new-linux-distributions-2017/

作者:Gabriel Cánepa 译者:rusking 校对:jasminepeng

本文由 LCTT 原创编译,Linux中国 荣誉推出

如果你在阅读本文,那么你可能是一个 Linux 新手或者是 Linux 的潜在用户。又或者我猜的都不对,你只是好奇于我所说的当今需要安装 Linux 的五大理由。

不管如何,我都欢迎你来看看我做出的解释。如果说你能够读完全文,记得使用下边的评论功能分享你的想法。

建议阅读: GNU/Linux,爱憎由之

声明:以下列出的理由并非按照重要性顺序排列。也就是说,你可以从上到下或者以你愿意的顺序来进行阅读。

理由 1 – Linux 自由、免费

在 Linux 这个生态系统中, 自由、免费 free 有两种含义:1) 自由使用 Free as in freedom 以及 2) 免费使用 Free as in beer

第一个含义意味着,你可以自由使用 Linux 做你想要的任何事,比如个人使用或者商业用途。

第二个含义表明这样一个事实,多数 (99%) 的 Linux 发行版 (或者说,不同风格的 Linux) 都可以免费的下载和运行在大多数电脑上。

建议阅读: 2016 年最流行的 Linux 发行版

商业发行版经常应用到企业环境,以便获取其后公司的技术支持。红帽公司著名的 红帽企业级 Linux 就是这样一个例子。

Linux 自由、免费

Linux 自由、免费

理由 2 – Linux 可以使老旧设备起死回生

是的,你没看错。如果你有一部老旧电脑已经积满灰尘,因为它已经无法满足其他操作系统的硬件要求,那么 Linux 可以帮你拯救它。以我的经验来说,我第一台电脑 (2000 年末,我母亲给我的高中毕业礼物) 作为家庭服务器已经连续运行 5 年了 —— 一直在使用 Debian 最新的稳定版。

建议阅读: 老旧电脑和笔记本值得尝试的 6 个 Linux 发行版

Linux 支持老旧设备

Linux 支持老旧设备

理由 3 – Linux 是学习计算机如何工作的最好工具

即使是新手,访问并与电脑硬件进行交互也是相对容易的。通过诸如 dmesg (从内核中列出相关信息)等 命令行工具加上一点耐心,你可以很容易了解从你按下电源开关到加载好一个完整可用的系统到底发生了哪些事情。当然,这只是其中一个例子。

学习 Linux

学习 Linux

理由 4 – Linux 是学习编程的最好工具

我常常说,要是我早些认识 Linux 该多好。安装好系统之后,它就具备了开始学习 Python 编程 的必备工具。作为当今最流行的面向对象的编程语言之一,Python 在多所顶尖大学里都是计算机科学专业的主修课程。

学习 Linux 及 Python 编程

学习 Linux 及 Python 编程

理由 5 – 大量自由的世界一流软件

当然,我知道这与 理由 1 多少有些相似,但我还是决定将其列为一个独立的理由。为何?因为这为我们强调了这样一个事实,我们今天所使用的软件大多数是来自于大量志愿者的努力。

是的,写出这些优秀软件的人员从中不挣一分钱。在某些情况下,也有些公司为软件的开发和维护提供资金。

建议阅读: 2015 年我找到的 20 款自由开源的软件

Linux 系统是相当稳定的,所以他们都想要将他们的软件运行其中。这就是为什么很多公司愿意为 Linux 生态系统做出大量贡献的原因 (指捐赠或者提供人力)。

自由开源软件

自由开源软件

总结

感谢你花费时间来阅读本文!关于我会第一时间建议他人使用的 Linux 的理由,我已经尽最大努力来阐述了。

如果你有不同于本文的意见,欢迎随时使用下方评论表单来分享您的观点。


作者简介:

Gabriel Cánepa - 一位来自 阿根廷圣路易斯梅塞德斯镇 Villa Mercedes, San Luis, Argentina 的 GNU/Linux 系统管理员,Web 开发者。就职于一家世界领先级的消费品公司,乐于在每天的工作中能使用 FOSS 工具来提高生产力。

译者简介:

GHLandy —— 划不完粉腮柳眉泣别离。


via: http://www.tecmint.com/install-linux-today/

作者:Gabriel Cánepa 译者:GHLandy 校对:jasminepeng

本文由 LCTT 原创编译,Linux中国 荣誉推出

从系统管理员接手服务器和主机管理以来,像应用监控这样的工具就成了他们的好帮手。其中比较有名的有 NagiosZabbixIcinga 和 Centreon。以上这些是重量级的监控工具,让一个新手管理员来设置,并使用其中的高级特性是有些困难的。

本文将向你介绍 Ganglia,它是一个易于扩展的监控系统。使用它可以实时查看 Linux 服务器和集群(图形化展示)中的各项性能指标。

Ganglia 能够让你以集群(按服务器组)和网格(按地理位置)的方式更好地组织服务器。

这样,我们可以创建一个包含所有远程主机的网格,然后将那些机器按照其它标准分组成小的集合。

此外, Ganglia 的 web 页面对移动设备进行过优化,也允许你导出 csv.json 格式的数据。

我们的测试环境包括一个安装 Ganglia 的主节点服务器 CentOS 7 (IP 地址 192.168.0.29),和一个作为被监控端的 Ubuntu 14.04 主机(192.168.0.32)。我们将通过 Ganglia 的 Web 页面来监控这台 Ubuntu 主机。

下面的例子可以给大家提供参考,CentOS7 作为主节点,Ubuntu 作为被监控对象。

安装和配置 Ganglia

请遵循以下步骤,在主节点服务器安装监控工具。

1、 启用 EPEL 仓库 ,然后安装 Ganglia 和相关工具:

# yum update && yum install epel-release
# yum install ganglia rrdtool ganglia-gmetad ganglia-gmond ganglia-web

在上面这步随 Ganglia 将安装一些应用,它们的功能如下:

  • rrdtool,Round-Robin 数据库,它是一个储存并图形化显示随着时间变化的数据的工具;
  • ganglia-gmetad 一个守护进程,用来收集被监控主机的数据。被监控主机与主节点主机都要安装 Ganglia-gmond(监控守护进程本身);
  • ganglia-web 提供 Web 前端,用于显示监控系统的历史数据和图形。 2、 使用 Apache 提供的基本认证功能,为 Ganglia Web 界面(/usr/share/ganglia)配置身份认证。

如果你想了解更多高级安全机制,请参阅 Apache 文档的 授权与认证部分。

为完成这个目标,我们需要创建一个用户名并设定一个密码,以访问被 Apache 保护的资源。在本例中,我们先来创建一个叫 adminganglia 的用户名,然后给它分配一个密码,它将被储存在 /etc/httpd/auth.basic(可以随意选择另一个目录 和/或 文件名, 只要 Apache 对此有读取权限就可以。)

# htpasswd -c /etc/httpd/auth.basic adminganglia

给 adminganglia 输入两次密码完成密码设置。

3、 修改配置文件 /etc/httpd/conf.d/ganglia.conf

Alias /ganglia /usr/share/ganglia
<Location /ganglia>
AuthType basic
AuthName "Ganglia web UI"
AuthBasicProvider file
AuthUserFile "/etc/httpd/auth.basic"
Require user adminganglia
</Location>

4、 编辑 /etc/ganglia/gmetad.conf

首先,使用 gridname 指令来为网格设置一个描述性名称。

gridname "Home office"

然后,使用 data_source 指令,后面跟集群名(服务器组)、轮询时间间隔(秒)、主节点主机和被监控节点的 IP 地址:

data_source "Labs" 60 192.168.0.29:8649 # 主节点
data_source "Labs" 60 192.168.0.32 # 被监控节点

5、 编辑 /etc/ganglia/gmond.conf

a) 确保集群的配置类似下面。

cluster {
name = "Labs" # gmetad.conf 中的  data_source 指令的名字
owner = "unspecified"
latlong = "unspecified"
url = "unspecified"
}

b) 在 udp_send_chanel 中,注释掉 mcast_join

udp_send_channel   {
# mcast_join = 239.2.11.71
host = localhost
port = 8649
ttl = 1
}

c) 在 udp_recv_channel 中,注释掉 mcast_joinbind 部分:

udp_recv_channel {
# mcast_join = 239.2.11.71 ## comment out
port = 8649
# bind = 239.2.11.71 ## comment out
}

保存并退出。

6、打开 8649/udp 端口,使用 SELinux 确保 php 脚本(通过 Apache 运行)能够连接到网络:

# firewall-cmd --add-port=8649/udp
# firewall-cmd --add-port=8649/udp --permanent
# setsebool -P httpd_can_network_connect 1

7、重启 Apache、gmetad、gmond,并确保它们启用了“开机启动”。

# systemctl restart httpd gmetad gmond
# systemctl enable httpd gmetad httpd

至此,我们现在能够打开 Ganglia 的 Web 页面 http://192.168.0.29/ganglia 并用步骤 2 中设置的凭证登录。

Gangila Web Interface

Gangila Web 页面

8、 在 Ubuntu 主机上,只需安装 Ganglia-monitor,等同于 CentOS 上的 ganglia-gmond:

$ sudo aptitude update && aptitude install ganglia-monitor

9、 编辑被监控主机的 /etc/ganglia/gmond.conf 文件。与主节点主机上是相同的文件,除了被注释掉的 cluster, udp_send_channeludp_recv_channel 这里不应被注释:

cluster {
name = "Labs" # The name in the data_source directive in gmetad.conf
owner = "unspecified"
latlong = "unspecified"
url = "unspecified"
}
udp_send_channel   {
mcast_join = 239.2.11.71
host = localhost
port = 8649
ttl = 1
}
udp_recv_channel {
mcast_join = 239.2.11.71 ## comment out
port = 8649
bind = 239.2.11.71 ## comment out
}

之后重启服务。

$ sudo service ganglia-monitor restart

10、 刷新页面,你将在 Home office grid / Labs cluster 中看到两台主机的各种统计及图形化的展示(用下拉菜单选择集群,本例中为 Labs):

Ganglia Home Office Grid Report

Ganglia 中 Home office 网格报告

使用菜单按钮(如上指出的),你可以获取到每台服务器和集群的信息。还可以使用 对比主机Compare Hosts选项卡来比较集群中所有服务器的状态。

可以使用正则表达式选择一组服务器,立刻就可以看到它们性能的对比:

Ganglia Host Server Information

Ganglia 服务器信息

我最喜欢的一个特点是对移动端有友好的总结界面,可以通过 Mobile 选项来访问。选择你感兴趣的集群,然后选中一个主机。

Ganglia Mobile Friendly Summary View

Ganglia 移动端总结截图

总结

本篇文章向大家介绍了 Ganglia,它是一个功能强大、扩展性很好的监控工具,主要用来监控集群和网格。它可以随意安装,便捷的组合各种功能(你甚至可以尝试一下官方网站提供的 Demo)。

此时,你可能会发现许多知名的 IT 或非 IT 的企业在使用 Ganglia。除了我们在文章中提及的之外,还有很多理由这样做,其中易用性,统计的图形化(在名字旁附上脸部照片更清晰,不是吗)可能是最重要的原因。

但是请不要拘泥于本篇文章,尝试一下自己去做。如果你有任何问题,欢迎给我留言。


via: http://www.tecmint.com/install-configure-ganglia-monitoring-centos-linux/

作者:Gabriel Cánepa 译者:ivo-wang 校对:jasminepeng

本文由 LCTT 组织编译,Linux中国 荣誉推出