Cloudera托管两种类型的软件存储库,您可以使用它们来安装诸如Cloudera Manager或CDH-parcel存储库和软件包存储库之类的产品。
在大多数情况下,这些存储库是有效的解决方案,但有时需要自定义安装解决方案。使用Cloudera托管的软件存储库需要通过Internet进行客户端访问。典型安装使用最新的可用软件。在某些情况下,这些行为可能并不可取,例如:
- 您需要安装较旧的产品版本。例如,在CDH群集中,所有主机必须运行相同的CDH版本。完成初始安装后,您可能希望添加主机。这可能是为了增加群集的大小以处理更大的任务或替换旧的硬件。
- 要安装Cloudera产品的主机未连接到Internet,因此无法访问Cloudera存储库。(对于parcel安装,只有Cloudera Manager Server需要Internet访问,但对于软件包安装,所有集群主机都需要访问Cloudera存储库)。大多数组织将其网络的一部分与外部访问分开。隔离网段可提高安全性,但可能会增加安装过程的复杂性。
继续阅读:
包裹介绍
包裹是一种包装格式,便于从Cloudera Manager中升级软件。您可以从Cloudera Manager中下载,分发和激活所有新软件。Cloudera Manager将parcel下载到本地目录。将宗地下载到Cloudera Manager Server主机后,不再需要Internet连接来部署宗地。有关地块的详细信息,请参阅包裹。
如果Cloudera Manager Server无法访问Internet,则可以获取所需的parcel文件并将其放入parcel存储库。有关更多信息,请参阅使用内部包裹存储库。
了解包管理
在深入了解如何在您的环境中配置自定义程序包管理解决方案之前,获取有关以下内容的更多信息会很有用:
包管理工具
Packages(rpm 要么 deb文件)通过满足包依赖性来帮助确保安装成功完成。安装特定软件包时,将同时安装所有其他必需软件包。例如,Hadoop-0.20-hive依赖于取决于 Hadoop-0.20。
包管理工具,如 yum (RHEL), zypper(SLES),和 apt-get(Ubuntu)是可以找到并安装所需包的工具。例如,在RHEL兼容系统上,您可以运行该命令yum install hadoop-0.20-hive。该yum 实用程序通知您Hive包需要 Hadoop-0.20 并提供为您安装它。 zypper和 apt-get提供类似的功能。
包存储库
包管理工具依赖包存储库来安装软件并解决任何依赖性要求。有关创建内部存储库的信息,请参阅使用内部包存储库。
存储库配置文件
有关包存储库的信息存储在配置文件中,配置文件的位置根据包管理工具而有所不同。
- RHEL compatible (yum): /etc/yum.repos.d
- SLES (zypper): /etc/zypp/zypper.conf
- Ubuntu (apt-get): /etc/apt/apt.conf (Additional repositories are specified using .list files in the /etc/apt/sources.list.d/ directory.)
例如,在典型的CentOS系统上,您可能会发现:
ls -l /etc/yum.repos.d/
total 36
-rw-r--r--. 1 root root 1664 Dec 9 2015 CentOS-Base.repo
-rw-r--r--. 1 root root 1309 Dec 9 2015 CentOS-CR.repo
-rw-r--r--. 1 root root 649 Dec 9 2015 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root 290 Dec 9 2015 CentOS-fasttrack.repo
-rw-r--r--. 1 root root 630 Dec 9 2015 CentOS-Media.repo
-rw-r--r--. 1 root root 1331 Dec 9 2015 CentOS-Sources.repo
-rw-r--r--. 1 root root 1952 Dec 9 2015 CentOS-Vault.repo
-rw-r--r--. 1 root root 951 Jun 24 2017 epel.repo
-rw-r--r--. 1 root root 1664 Dec 9 2015 CentOS-Base.repo
-rw-r--r--. 1 root root 1309 Dec 9 2015 CentOS-CR.repo
-rw-r--r--. 1 root root 649 Dec 9 2015 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root 290 Dec 9 2015 CentOS-fasttrack.repo
-rw-r--r--. 1 root root 630 Dec 9 2015 CentOS-Media.repo
-rw-r--r--. 1 root root 1331 Dec 9 2015 CentOS-Sources.repo
-rw-r--r--. 1 root root 1952 Dec 9 2015 CentOS-Vault.repo
-rw-r--r--. 1 root root 951 Jun 24 2017 epel.repo
-rw-r--r--. 1 root root 1050 Jun 24 2017 epel-testing.repo
该 .repo files包含指向一个或多个存储库的指针。配置文件中有类似的指针zypper 和 apt-get。在以下摘录中 CentOS-Base.repo,定义了两个存储库:一个名为 Base 和一个名字 Updates。该 mirrorlist 参数指向一个网站,该网站包含可以下载此存储库的位置列表。
[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#released updates
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#released updates
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
列出存储库
您可以通过运行以下命令之一列出已启用的存储库:
- RHEL compatible: yum repolist
- SLES: zypper repos
- Ubuntu: apt-get does not include a command to display sources, but you can determine sources by reviewing the contents of /etc/apt/sources.list and any files contained in /etc/apt/sources.list.d/.
以下显示了输出的示例 百胜再造者 在CentOS 7系统上:
repo id repo name status
base/7/x86_64 CentOS-7 - Base 9,591
epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 12,382
extras/7/x86_64 CentOS-7 - Extras 392
updates/7/x86_64 CentOS-7 - Updates 1,962
repolist: 24,327
base/7/x86_64 CentOS-7 - Base 9,591
epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 12,382
extras/7/x86_64 CentOS-7 - Extras 392
updates/7/x86_64 CentOS-7 - Updates 1,962
repolist: 24,327