Red Hat Satellite - 为主机配置可使用的内容(存储库),注册主机并安装软件包

news2024/9/23 15:28:20

《OpenShift / RHEL / DevSecOps 汇总目录》

请先根据《Red Hat Satellite - 导入订阅清单》一文完成向 Red Hat Satellite 导入分配的订阅订单。
本文中的相关概念请参见《Red Hat Satellite - 核心概念篇》。

文章目录

  • 配置 Repository 并同步
  • 配置生命周期的环境路径
  • 配置内容视图
  • 发布内容视图到生命周期的指定环境
  • 配置激活秘钥
  • 注册和注销主机
    • 向 SCA 类型的组织注册主机
    • 向非 SCA 类型的组织注册主机
    • 注销主机
  • 查看主机和内容主机
  • 管理主机可用 Repository
  • 向主机安装软件包
    • 允许 root 用户远程登录
    • 为注册主机配置免密访问
    • 向注册主机安装软件包
  • 参考

配置 Repository 并同步

  1. 在 Satellite 控制台中进入 Content > Red Hat Repositories 菜单,然后从左边 Available Repositories 中选出以下 7 个存储库到 Enabled Repositories。
    在这里插入图片描述
  2. 在 Satellite 控制台中进入 Content > Sync Status 菜单,然后分别点击 Expand All 和 Select All 选中所有项目,最后点击 Synchronize Now 按钮。同步过程需要一定时间,完成后 RESULT 会显示 Syncing Complete。
    在这里插入图片描述

配置生命周期的环境路径

  1. 在 Satellite 控制台中进入 Content > Lifecycle Environments 菜单会显示下图。其中 Library 是 Satellite 缺省环境,所有下载的 Repositories 都会在 Library 中。
    在这里插入图片描述
  2. 点击上图的 Create Environment Path,然后在 New Environment 页面中按照下图创建名为 Development 环境。
    在这里插入图片描述
  3. 再点击 +Add New Environment 按钮,然后创建名为 Production 的环境。
    在这里插入图片描述
  4. 最后在 Lifecycle Environment Paths 页面中会显示下图。说明:如果想删除一个 Environment,可以先在下图点击进入它,然后再点击 Remove Environment 即可。
    在这里插入图片描述
  5. 也可执行以下命令查看生命周期包含的环境以及先后顺序
$ hammer lifecycle-environment list
---|-------------|------------
ID | NAME        | PRIOR  
---|-------------|------------
2  | Development | Library
1  | Library     |        
3  | Production  | Development 
---|-------------|------------

配置内容视图

  1. 在 Satellite 控制台中进入 Content > Content Views 菜单,然后点击 Create content view 按钮。在下图的 Create content view 弹出窗口中填入 Name 和 Label,最后点击 Create content view 按钮。
    在这里插入图片描述
  2. 完成后在 Content views 页面中可以看到名为 cn-rhel8 的内容视图。
    在这里插入图片描述
  3. 在 cv-rhel8 页面中点击 Show repositories 按钮。
    在这里插入图片描述
  4. 在下图的选中以下 3 个和 RHEL 8 相关的 Repositories,然后点击 Add repositories 按钮。
    在这里插入图片描述
  5. 最后可以看到名为 cv-rhel8 内容视图包含的 Repositories 如下图。
    在这里插入图片描述

发布内容视图到生命周期的指定环境

  1. 在上图中的内容视图页面中点击 Publish new version 按钮会弹出下图的 Publish 窗口。先点击 Next,在点击 Finish 即可将当前在 cv-rhel8 中的内容打包发布为 version-1.0,且该版本的内容可以在 Library 环境中被使用。
    在这里插入图片描述
    在这里插入图片描述
  2. 在 cv-rhel8 的 Versions 中可以看到 Version 1.0 中包含的存储库。
    在这里插入图片描述
  3. 点击上图的 Promote,然后在下图的弹出窗口选中生命周期的 Development 环境,然后点击 Promote 按钮。
    在这里插入图片描述
  4. 这样就可在处于 Library 和 Development 的环境中使用 Version 1.0 的内容了。
    在这里插入图片描述

配置激活秘钥

  1. 在 Satellite 控制台中进入 Content > Activation Keys 菜单,然后在下图页面中点击 Create Activation Key。
    在这里插入图片描述
  2. 在 New Activation Key 页面中按下图填写然后 Save。以下配置说明使用该激活秘钥注册的主机将能使用 Development 环境的 cv-rhel8 内容视图所配置的存储库。注意:在这里没有限制激活秘钥能注册的主机数量,如果需要限制,可以去掉 Unlimited Hosts 选项,并填写 Limit 数量即可。
    在这里插入图片描述
  3. 在下图 Activation Key 的详细页面中设置 Release Version 为 8,然后保存。
    在这里插入图片描述
  4. 另外还可在 Repository Sets 中调整注册主机可以使用的存储库。
    在这里插入图片描述

注册和注销主机

可以使用以下三种方法实现向 Satellite 注册主机:

  1. 使用 Satellite 的 Register Host 功能生成的 curl 命令注册,这是官方推荐的方法。
  2. 使用上图 Activation Key 页面生成的 subscription-manager 命令注册。由于这种注册方法不能为主机指定 Location(只能在注册后手动调整主机所属 Localtion),所以官方已经不推荐了。
  3. 使用 <SATELLITE_SERVER>/pub/bootstrap.py 提供的 Python 脚本注册,这种方法官方也不再推荐了。

另外在向 Satellite 注册主机过程中,如果主机所属的组织配置有 “SCA - 简单内容访问”,则注册过程无需再为主机配置所使用的订阅。如果是非 SCA 的组织,还需要手动为主机配置所使用的订阅。

以下使用 curl 方法分别介绍如何向 SCA 组织和非 SCA 组织注册主机。

向 SCA 类型的组织注册主机

  1. 在需要注册的主机上执行命令,查看当前主机的状态注册。
$ subscription-manager status
+-------------------------------------------+
   System Status Details
+-------------------------------------------+
Overall Status: Unknown

System Purpose Status: Unknown
  1. 在 Satellite 控制台中进入 Hosts > Register Host 菜单,然后在 Register Host 页面中按照下图选择主机相关的配置,最后点击 Generate。
    在这里插入图片描述
  2. 复制生成的 Registration command,然后再要注册的主机上以 root 用户执行该命令。
$ curl -sS --insecure 'https://satellite.example.local/register?activation_keys=ak-rhel8-my-org&location_id=2&organization_id=1&update_packages=false' -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjo0LCJpYXQiOjE3MDE5MTQ4NDEsImp0aSI6ImI4Y2JhMTY5MzFiOWJlZTVmMmQwNWQwNjhiNzIzZjIwZWU1NTkyNmZjOTU3Nzg4Y2Q0NmY0MjgwYzQ2YWRlNmYiLCJleHAiOjE3MDE5MjkyNDEsInNjb3BlIjoicmVnaXN0cmF0aW9uI2dsb2JhbCByZWdpc3RyYXRpb24jaG9zdCJ9.SBatG8EqAlaT5_2oLmDAe0wndBMzGZDZ6ZgqsO00140' | bash
  1. 再次查看主机的注册状态。
$ subscription-manager status
+-------------------------------------------+
   System Status Details
+-------------------------------------------+
Overall Status: Disabled
Content Access Mode is set to Simple Content Access. This host has access to content, regardless of subscription status.

System Purpose Status: Disabled

$ subscription-manager identity
system identity: 653290c4-5552-4e8b-9929-db6467a8e422
name: rhel-1
org name: My_Organization
org ID: My_Organization
environment name: Development/cv-rhel8
  1. 查看注册主机可用的内容存储库。
$ subscription-manager repos --list
+----------------------------------------------------------+
    Available Repositories in /etc/yum.repos.d/redhat.repo
+----------------------------------------------------------+
Repo ID:   rhel-8-for-x86_64-appstream-rpms
Repo Name: Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
Repo URL:  https://satellite.example.local/pulp/content/My_Organization/Development/cv-rhel8/content/dist/rhel8/$releasever/x86_64/appstr
           eam/os
Enabled:   1

Repo ID:   satellite-utils-6.14-for-rhel-8-x86_64-rpms
Repo Name: Red Hat Satellite Utils 6.14 for RHEL 8 x86_64 (RPMs)
Repo URL:  https://satellite.example.local/pulp/content/My_Organization/Development/cv-rhel8/content/dist/layered/rhel8/x86_64/sat-utils/
           6.14/os
Enabled:   0

Repo ID:   rhel-8-for-x86_64-baseos-rpms
Repo Name: Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs)
Repo URL:  https://satellite.example.local/pulp/content/My_Organization/Development/cv-rhel8/content/dist/rhel8/$releasever/x86_64/baseos
           /os
Enabled:   1
  1. 此时可以在 Content Hosts 页面中看到注册主机的基本配置以及可安装升级的软件包。
    在这里插入图片描述
  2. 由于注册以上主机用到了名为 ak-rhel8-my-org 的激活秘钥,进入 Content > Activation Keys 页面中可以从 Host Limit 列中看到使用该激活秘钥注册的主机数量。
    在这里插入图片描述
  3. 进入 Content > Subscription 菜单,查看订阅的消耗情况,确认 Consumed 一列为 0。这是由于 SCA 类型的组织不计算使用的订阅数量,而后面的非 SCA 组织会计算消耗的订阅。注意:SCA 不计算所使用的订阅不代表超用订阅是合规的。
    在这里插入图片描述
  4. 点击上图的 View Subscription Usage 后可以访问红帽官方网站查看 RHEL 的订阅使用情况。
    在这里插入图片描述

向非 SCA 类型的组织注册主机

  1. 执行前一节的前三步,但注册命令所关联的是非 SCA组织。
  2. 在 Satellite 控制台的 Content Hosts 中查看主机,其中 Subscription Status 是 Unentitled 状态。
    在这里插入图片描述
  3. 进入该主机,然后进入 Subscriptions,在 Subscription Details 下方区域切换到 Add。在选择可用的订阅后点击 Add Selected。
    在这里插入图片描述
  4. 此时主机的订阅状态已经变为 Fully entitled。
    在这里插入图片描述
  5. 进入 Content > Subscription 菜单,查看订阅的消耗情况,可以看到前面注册的主机所用的订阅已经 Consumed 了一个订阅。
    在这里插入图片描述

注销主机

在注册主机中以 root 用户执行以下命令,可以将主机从 Satellite 注销掉。

$ dnf clean all
Updating Subscription Management repositories.
16 files removed
$ rm -rf /var/cache/dnf/

$ subscription-manager remove --all
2 local certificates have been deleted.
2 subscriptions removed at the server.

$ subscription-manager unregister
Unregistering from: satellite.lab.example.com:443/rhsm
System has been unregistered.

$ subscription-manager clean
All local data removed

查看主机和内容主机

  1. 进入 Hosts > All Hosts 菜单可以看到 rhel-1 主机。
    在这里插入图片描述
    点击上图的 rhel-1 后可以看到下图主机的 Overview 页面。
    在这里插入图片描述
  2. 进入 Hosts > Content Hosts 菜单可以看到 rhel-1 主机。
    在这里插入图片描述
    点击上图的 Installable Updates 区域,然后在点击 Details 就可看到下图。
    在这里插入图片描述

管理主机可用 Repository

  1. 在被管主机上执行命令查看当前可用 Repositories。
$ subscription-manager repos --list
+----------------------------------------------------------+
    Available Repositories in /etc/yum.repos.d/redhat.repo
+----------------------------------------------------------+
Repo ID:   rhel-8-for-x86_64-baseos-rpms
Repo Name: Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs)
Repo URL:  https://satellite.example.local/pulp/content/My_Organization/Development/cv-rhel8/content/dist/rhel8/$rele
           asever/x86_64/baseos/os
Enabled:   1

Repo ID:   rhel-8-for-x86_64-appstream-rpms
Repo Name: Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
Repo URL:  https://satellite.example.local/pulp/content/My_Organization/Development/cv-rhel8/content/dist/rhel8/$rele
           asever/x86_64/appstream/os
Enabled:   1

Repo ID:   satellite-utils-6.14-for-rhel-8-x86_64-rpms
Repo Name: Red Hat Satellite Utils 6.14 for RHEL 8 x86_64 (RPMs)
Repo URL:  https://satellite.example.local/pulp/content/My_Organization/Development/cv-rhel8/content/dist/layered/rhe
           l8/x86_64/sat-utils/6.14/os
Enabled:   0
  1. 在 Satellite 中找到注册的被管主机,然后在其 Content > Repository Set 标签页中修改缺省可用的 Repository。
    在这里插入图片描述
  2. 再次在被管主机上查看可用 Repositories,确认已经更新。
$ subscription-manager repos --list
+----------------------------------------------------------+
    Available Repositories in /etc/yum.repos.d/redhat.repo
+----------------------------------------------------------+
Repo ID:   rhel-8-for-x86_64-baseos-rpms
Repo Name: Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs)
Repo URL:  https://satellite.example.local/pulp/content/My_Organization/Development/cv-rhel8/content/dist/rhel8/$rele
           asever/x86_64/baseos/os
Enabled:   1

Repo ID:   rhel-8-for-x86_64-appstream-rpms
Repo Name: Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
Repo URL:  https://satellite.example.local/pulp/content/My_Organization/Development/cv-rhel8/content/dist/rhel8/$rele
           asever/x86_64/appstream/os
Enabled:   1

Repo ID:   satellite-utils-6.14-for-rhel-8-x86_64-rpms
Repo Name: Red Hat Satellite Utils 6.14 for RHEL 8 x86_64 (RPMs)
Repo URL:  https://satellite.example.local/pulp/content/My_Organization/Development/cv-rhel8/content/dist/layered/rhe
           l8/x86_64/sat-utils/6.14/os
Enabled:   1

向主机安装软件包

使用 Satellite 向被管主机安装软件包需要首先在 Satellite 服务器和被管主机之间配置 root 用户免密 ssh 访问。另外 RHEL 8/9 版本缺省是禁止直接使用 root 用户登录提供的,因此还需先启用该功能。

允许 root 用户远程登录

  1. 修改 etc/ssh/sshd_config 文件,将 PermitRootLogin 设为 yes。
PermitRootLogin yes
  1. 然后重启 ssh 服务。
$ service sshd restart

为注册主机配置免密访问

  1. 在 Satellite 上用 root 用户执行以下命令,将公钥复制到 rhel-1 主机中。最后根据提示验证即可。
$ ssh-copy-id -i ~foreman-proxy/.ssh/id_rsa_foreman_proxy.pub root@rhel-1
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/usr/share/foreman-proxy/.ssh/id_rsa_foreman_proxy.pub"
The authenticity of host 'rhel-1 (192.168.203.172)' can't be established.
ECDSA key fingerprint is SHA256:0TULcDtHfLap5hYLgNbiAdfWdPVR9tMcp5fwNIbNk3A.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@rhel-1's password: 

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'root@rhel-1'"
and check to make sure that only the key(s) you wanted were added.

向注册主机安装软件包

  1. 进入 Content > Content Hosts 菜单,然后点击一个主机。
    在这里插入图片描述
  2. 进入到主机 Errate 的标签页,选择一行后点击 Apply。
    在这里插入图片描述
  3. 可查看安装 Job 的执行情况。
    在这里插入图片描述
  4. 点击上图下方的主机名链接,可查看详细的 Job 执行日志。
    在这里插入图片描述

参考

https://access.redhat.com/articles/4903191
https://access.redhat.com/solutions/2531791
https://redhatsummitlabs.gitlab.io/hands-on-with-satellite-6-5

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1311292.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

死锁的概念

死锁&#xff08;Deadlock&#xff09;、饥饿&#xff08;Starvation&#xff09;和死循环&#xff08;Infinite Loop&#xff09;是计算机科学中与并发和并行处理相关的三个概念&#xff0c;它们描述了不同类型的问题和情况。 死锁&#xff08;Deadlock&#xff09;: 定义: 死…

优先考虑静态成员类

在Java中&#xff0c;静态成员类&#xff08;static nested class&#xff09;是一种嵌套在另一个类中的类&#xff0c;且被声明为静态。静态成员类不依赖于外部类的实例&#xff0c;可以直接通过外部类的类名来访问。 优先考虑使用静态成员类的情况通常是当这个类与外部类的实…

IC卡卡号修改UID卡CUID卡物理卡号修改考勤工号修改

普通M1卡的物理卡号是锁死的&#xff0c;UID卡、CUID卡、FUID卡是特殊的M1卡&#xff0c;他们的物理卡号是可以修改的。考勤卡、门禁等读取到的IC卡卡号是这样的0136098153&#xff0c;10位卡号&#xff0c;这个卡号是随机的&#xff0c;不连续的&#xff0c;没有规律&#xff…

纯干货|聊一聊大促活动背后的技术:火山引擎边缘云CDN/DCDN/GA

12月12日&#xff0c;“抖音商城双12好物节”正式结束。据了解&#xff0c;双12期间&#xff0c;抖音电商推出了超值购、秒杀等多个优价频道和多个类目的主题榜单&#xff0c;让有消费需求的用户更高效地发现高性价比好物。除了货架场景&#xff0c;“抖音商城双12好物节”还发…

基于ssm校园资讯推荐系统论文

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本校园资讯推荐系统就是在这样的大环境下诞生&#xff0c;其可以帮助管理者在短时间内处理完毕庞大的数据信息…

31、应急响应——Windows

文章目录 一、账户排查1.1 登录服务器的途径1.2 弱口令1.3 可疑账号 二、网络排查三、进程排查四、注册表排查五、内存分析 一、账户排查 1.1 登录服务器的途径 3389smb 445httpftp数据库中间件 1.2 弱口令 弱口令途径&#xff1a;3389、smb 445、http、ftp、数据库、中间件…

C# 如何控制多线程同步执行

写在前面 使用Task类来控制多线程的同步执行&#xff0c;可应用于多任务分发执行后&#xff0c;再做归并处理。Tas既拥有线程池的优点&#xff0c;同时也解决了使用ThreadPool不易控制的弊端&#xff1b;可以非常简便并可靠地实现多线程的顺序执行。 代码实现 public class …

Qt 文字描边(基础篇)

项目中有时需要文字描边的功能 1.基础的绘制文字 使用drawtext处理 void MainWindow::paintEvent(QPaintEvent *event) {QPainter painter(this);painter.setRenderHint(QPainter::Antialiasing, true);painter.setRenderHint(QPainter::SmoothPixmapTransform, true);painte…

宏基因组学中如何计算分箱结果bins(基因组)的丰度?

1、基于metawrap环境计算bin丰度(推荐) MetaWRAp&#xff08;Metagenomic Workflow for Assembly, binning, and annotation&#xff09;是一个用于处理宏基因组学数据的工具&#xff0c;包括元组装、分箱&#xff08;binning&#xff09;、基因组注释等功能。要基于 MetaWRAp …

Python:五种算法RFO、GWO、DBO、HHO、SSA求解23个测试函数

一、五种算法介绍 &#xff08;1&#xff09;红狐优化算法&#xff08;Red fox optimization&#xff0c;RFO&#xff09; &#xff08;2&#xff09;灰狼优化算法(Grey Wolf Optimizer&#xff0c;GWO) &#xff08;3&#xff09;蜣螂优化算法&#xff08;Dung beetle opti…

maui 开发音乐播放APP 优化 用fastapi_amis_admin创建后台及接口(5)

相关的models from datetime import datetime from typing import List, Optional import sqlmodel from fastapi_amis_admin.amis.components import ColumnImage, InputImage, InputRichText from fastapi_amis_admin.models.enums import IntegerChoices from fastapi_amis…

VSCode 配置自动生成头文件

相关文章 VSCode 开发C/C实用插件分享——codegeex VSCode 开发C/C实用插件分享——koroFileHeader VSCode 配置自动生成头文件 一、snippets二、配置步骤三、效果展示 一、snippets 相信大家对C、C都头文件都不陌生&#xff0c;都会发现每个头文件都会包括下面的这些格式&…

引迈信息-JNPF平台怎么样?值得入手吗?

目录 1.前言 2.引迈低代码怎么样&#xff1f; 3.平台亮点展示 4.引迈产品特点 5.引迈产品技术栈&#xff1a; 1.前言 低代码是近几年比较火的一种应用程序快速开发方式&#xff0c;它能帮助用户在开发软件的过程中大幅减少手工编码量&#xff0c;并通过可视化组件加速应用…

【基于卷积神经网络的疲劳检测与预警系统的设计与实现】

基于卷积神经网络的疲劳检测与预警系统的设计与实现 引言数据集介绍技术与工具1. OpenCV2. TensorFlow3. 卷积神经网络&#xff08;CNN&#xff09; 系统功能模块1. 视频采集模块2. 图像预处理模块3. 人脸识别模块4. 疲劳程度判别模块5. 报警模块 系统设计创新点1. 实时监测与预…

GAN的原理分析与实例

为了便于理解&#xff0c;可以先玩一玩这个网站&#xff1a;GAN Lab: Play with Generative Adversarial Networks in Your Browser! GAN的本质&#xff1a;枯叶蝶和鸟。生成器的目标&#xff1a;让枯叶蝶进化&#xff0c;变得像枯叶&#xff0c;不被鸟准确识别。判别器的目标&…

Spring Boot之自定义starter

&#x1f973;&#x1f973;Welcome Huihuis Code World ! !&#x1f973;&#x1f973; 接下来看看由辉辉所写的关于Spring Boot的相关操作吧 目录 &#x1f973;&#x1f973;Welcome Huihuis Code World ! !&#x1f973;&#x1f973; 一. starter是什么 二.为什么要使…

什么是 API 代理?

API 代理就像您的计算机和互联网上的特殊服务之间的有用中间人。这有点像将翻译、保安和信使合而为一。 什么是 API 代理&#xff1f; API 代理就像您和在线服务之间的有用中间人。当您的计算机需要从特殊在线服务&#xff08;API&#xff09;获取某些内容时&#xff0c;API 代…

计算机网络:物理层(奈氏准则和香农定理,含例题)

带你速通计算机网络期末 文章目录 一、码元和带宽 1、什么是码元 2、数字通信系统数据传输速率的两种表示方法 2.1、码元传输速率 2.2、信息传输速率 3、例题 3.1、例题1 3.2、例题2 4、带宽 二、奈氏准则&#xff08;奈奎斯特定理&#xff09; 1、奈氏准则简介 2、…

leetcode做题笔记2132. 用邮票贴满网格图

给你一个 m x n 的二进制矩阵 grid &#xff0c;每个格子要么为 0 &#xff08;空&#xff09;要么为 1 &#xff08;被占据&#xff09;。 给你邮票的尺寸为 stampHeight x stampWidth 。我们想将邮票贴进二进制矩阵中&#xff0c;且满足以下 限制 和 要求 &#xff1a; 覆盖…

VUE中如果让全局组件在某一页面不显示

目录 前言 方法一 1.在全局组件中添加一个变量用于控制显示与隐藏。 2.在全局组件的模板中使用 v-if 条件来决定是否显示该组件 3.在不需要显示全局组件的页面中&#xff0c;修改 showGlobalComponent 变量的值为 false&#xff0c;以隐藏全局组件。 4.在需要隐藏全局组…