OpenShift 4 - 为 OpenShift 托管集群配置用户认证(视频)

news2024/11/24 5:05:06

《OpenShift / RHEL / DevSecOps / Ansible 汇总目录》
说明:本文已经在 OpenShift 4.13 + ACM 2.8 + AWS 环境中验证

本文是《OpenShift 4 - 用 HyperShift 实现以“托管集群”方式部署运行 OpenShift 集群(视频)》的后续。

文章目录

  • 托管集群的管理模式
  • 创建托管集群
  • 配置基于 HTPasswd 的用户认证
  • 配置托管用户的访问权限
  • 验证
  • 视频
  • 参考

托管集群的管理模式

由于 OpenShift 托管集群的 “控制平面” 是运行在 “管理集群” 中对应的命名空间里,因此 “控制集群” 的一部分运维管理是由 “管理集群” 的管理员完成的。

  • “管理集群”的管理员负责创建、升级所有“托管集群”环境、手动扩展“托管集群”的节点、配置“托管集群”的认证方式等。
  • “托管集群”的管理员负责管理管理自己集群内部资源的管理,例如分配所属“托管集群”的用户的访问权限、安装 Operator 等。
  • “托管集群”的一般用户负责部署应用资源,监控应用运行。
    在这里插入图片描述
    本文为演示方便,将在 “管理集群” 上为一个 “托管集群” 配置 HTPasswd 认证方式。正式环境可以配置例如 RedHat SSO 或其他更正式的用户认证方式。

创建托管集群

  1. 执行命令可以创建一个名为 devops 的托管集群。
$ hypershift create cluster aws \
  --name devops \
  --infra-id devops \
  --region us-west-1 \
  --zones us-west-1b,us-west-1c \
  --instance-type m5a.large \
  --root-volume-type gp3 \
  --root-volume-size 100 \
  --etcd-storage-class gp3-csi \
  --control-plane-availability-policy SingleReplica \
  --infra-availability-policy SingleReplica \
  --network-type OVNKubernetes \
  --release-image quay.io/openshift-release-dev/ocp-release:4.13.2-x86_64 \
  --node-pool-replicas 1 \
  --namespace local-cluster \
  --secret-creds aws-credentials \
  --auto-repair \
  --generate-ssh
  1. 在托管集群完成创建后,可以查看到登录该托管集群的方法,包括 API 地址、管理员和密码。
    在这里插入图片描述

  2. 可执行以下命令删除托管集群。

$ hypershift destroy cluster aws --name devops --secret-creds aws-credentials --namespace local-cluster

配置基于 HTPasswd 的用户认证

  1. 执行命令创建一个包含用户名和密码的文件,然后再基于该文件在 local-cluster 项目中生成 Secret 对象 devops-htpass-secret。
$ htpasswd -b -c users.htpasswd user1 password
$ htpasswd -b users.htpasswd user2 password
$ oc create secret generic devops-htpass-secret --from-file=htpasswd=users.htpasswd -n local-cluster
  1. 执行名创建基于 HTPasswd 的 identityProvider 配置 文件,它使用了 devops-htpass-secret 对象作为认证源。
$ cat << EOF > patch.yaml
spec:
  configuration:
    oauth:
      identityProviders:
        - htpasswd:
            fileData:
              name: devops-htpass-secret
          mappingMethod: claim
          name: my_htpasswd_provider
          type: HTPasswd
EOF
  1. 执行命令,使用 patch.yaml 更新名为 devops 的 hostedcluster 配置。
$ oc patch hostedcluster devops -n local-cluster --type merge --patch-file patch.yaml
  1. 查看 oauth-openshift 相关的 pod 的状态,更新完。
$ oc get pod -n local-cluster-devops | grep oauth-openshift -w
oauth-openshift-757f596578-xf5m8                      2/2     Running     0          31s

配置托管用户的访问权限

  1. 执行获得使用 kubeadmin 用户访问托管集群的 kubeconfig 文件,并将其设到 KUBECONFIG 环境变量。
$ oc get secret devops-kubeadmin-password -n local-cluster --template='{{ .data.password }}' | base64 -d > $HOME/.kube/devops.kubeadmin-password
$ oc get secret devops-admin-kubeconfig -n local-cluster --template='{{ .data.kubeconfig }}' | base64 -d > $HOME/.kube/devops-kubeconfig
$ KUBECONFIG=$HOME/.kube/devops-kubeconfi
  1. 执行命令,设置托管集群的 user1 用户的访问权限。
$ oc adm policy add-cluster-role-to-user cluster-admin user1
  1. 执行命令退出托管管集群。
$ unset KUBECONFIG

验证

  1. 执行命令,使用 user1 或 user2 用户登录托管集群。
$ oc login <HOSTED_CLUSTER_API> -u user1 -p password

视频

演示视频

参考

https://hypershift-docs.netlify.app/how-to/cluster-configuration/

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

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

相关文章

【vue3】vue3的一般项目结构、成功显示自己的vue3页面

一、vue3的一般项目结构 Vue 3并没有规定特定的项目结构&#xff0c;因此您可以根据项目的需求和个人偏好来组织您的Vue 3项目。以下是一个常见的Vue 3项目结构示例&#xff0c;供参考&#xff1a; your-project/|- public/| |- index.html # 应用程序的入口HTML文件…

项目里程碑有什么作用?设置里程碑时应注意什么?

正如 "里程碑 "一词的原意是表示所走距离的标记&#xff0c;项目中的里程碑也代表着迄今为止已完成的任务或活动。但实际上&#xff0c;里程碑的作用远不止于此。 项目里程碑为何重要&#xff1f; 项目的成功取决于细节。项目里程碑之所以重要&#xff0c;是因为它…

会不会好奇ai绘画生成器?ai创作的灵感从何而来?

在这个宁静的公园里&#xff0c;阳光透过树叶的缝隙洒在的地面上&#xff0c;微风轻拂着艺术家的发丝&#xff0c;带来一丝清凉。坐在长椅上的他&#xff0c;手中紧握着一支触控画笔&#xff0c;目光凝视着眼前的美景。旁边一台智能绘画助手正在悄悄发光&#xff0c;它似乎能够…

99%误报与1%真实告警之间,差一个“威胁情报”

在网络安全领域&#xff0c;平均检测时间&#xff08;MTTD&#xff09;与平均响应时间&#xff08;MTTR&#xff09;是衡量企业应对威胁事件能力的重要指标。根据 SANS 2019 事件响应的调查&#xff0c;52.6%的企业平均检测时间少于24小时。一旦检测到事件&#xff0c;67%的企业…

陪诊小程序定制|医院陪诊系统源码|陪诊小程序开发

随着人们对健康关注的日益增加&#xff0c;陪诊服务的需求也在不断增长。为了提供便捷、高效的陪诊服务&#xff0c;陪诊小程序应运而生。下面将介绍一些陪诊小程序开发的优势。   便捷的预约与安排   陪诊小程序提供了便捷的预约与安排功能。用户可以通过小程序随时随地进…

【leetcode】leetcode69 x的平方根

文章目录 给你一个非负整数 x &#xff0c;计算并返回 x 的 算术平方根 。原理牛顿法&#xff08;数值分析中使用到的&#xff09;:二分法 解决方案java 实现实例执行结果 python 实现实例 给你一个非负整数 x &#xff0c;计算并返回 x 的 算术平方根 。 由于返回类型是整数&…

树、二叉树(C语言版)详解

&#x1f355;博客主页&#xff1a;️自信不孤单 &#x1f36c;文章专栏&#xff1a;数据结构与算法 &#x1f35a;代码仓库&#xff1a;破浪晓梦 &#x1f36d;欢迎关注&#xff1a;欢迎大家点赞收藏关注 文章目录 &#x1f34a;树的概念及结构1. 树的概念2. 树的相关概念3.树…

MySQL5.7 与 MariaDB10.1 审计插件兼容性验证

这是一篇关于发现 MariaDB 审计插件导致 MySQL 发生 crash 后&#xff0c;展开适配验证并进行故障处理的文章。 作者&#xff1a;官永强 爱可生DBA 团队成员&#xff0c;擅长 MySQL 运维方面的技能。热爱学习新知识&#xff0c;亦是个爱打游戏的宅男。 本文来源&#xff1a;原创…

20.1K Star!Notion的开源替代方案:AFFiNE

Notion这款笔记软件相信很多开发者都比较熟悉了&#xff0c;很多读者&#xff0c;包括我自己都用它来记录和管理自己的笔记。今天给大家推荐一个最近比较火的开源替代方案&#xff1a;AFFiNE。目前该开源项目已经斩获20.1K Star&#xff0c;热度非常的高&#xff0c;下面一起来…

Unhandled Exception: User denied permissions to access the device‘s location.

在写android app时&#xff0c;有的时候遇到这样的错误&#xff1a;未处理的异常:用户拒绝访问设备位置的权限。 即使加上了官网讲述的&#xff1a;下面两行代码任意一行&#xff0c;也不行。 <uses-permission android:name"android.permission.ACCESS_FINE_LOCATIO…

Java的第十四篇文章——文件和IO流

目录 学习目标 1. FIle类 1.1 File类的构造方法 1.2 FIle类的创建方法 1.3 File类的删除方法 1.4 File类的判断方法 1.4.1 绝对路径和相对路径 1.5 File类的获取的方法 1.6 File类的方法listFIles() 2. IO流对象 2.1 IO流对象的分类 2.1.1 按照操作的文件类型分类 …

【简单认识MySQL的MHA高可用配置】

文章目录 一、简介1、概述2、MHA 的组成3&#xff0e;MHA 的特点4、MHA工作原理 二、搭建MHA高可用数据库群集1.主从复制2.MHA配置 三、故障模拟四、故障修复步骤&#xff1a; 一、简介 1、概述 MHA&#xff08;Master High Availability&#xff09;是一套优秀的MySQL高可用…

Java网络编程基础概念

一、网络编程入门 1.1、软件结构 c/s结构&#xff1a;指客户端和服务器结构。如下图 B/S结构&#xff1a;指浏览器和服务器结构。如下图 共同点&#xff1a;无论哪一种架构&#xff0c;都离不开网络的支持。因此就设计到网络编程&#xff08;在一定的协议下&#xff0c;实…

android app控制ros机器人二

Ros-Mobile的使用基本熟悉&#xff0c;接下来熟悉代码&#xff0c;记录中间的问题。 GitHub - ROS-Mobile/ROS-Mobile-Android: Visualization and controlling application for Android 使用android studio打开项目后有bug。 BUG&#xff1a; 1.FAILURE: Build failed wit…

nvidia-smi输出的结果代表什么

nvidia-smi(NVIDIA System Management Interface) 是基于nvml的gpu的系统管理接口,主要用于显卡的管理和状态监控。 nvidia-smi简称NVSMI&#xff0c;提供监控GPU使用情况和更改GPU状态的功能&#xff0c;是一个跨平台工具&#xff0c;支持所有标准的NVIDIA驱动程序支持的Linu…

CMIP6数据处理及在气候变化、水文、生态等领域中的应用

气候变化对农业、生态系统、社会经济以及人类的生存与发展具有深远影响&#xff0c;是当前全球关注的核心议题之一。IPCC&#xff08;Intergovernmental Panel on Climate Change&#xff0c;政府间气候变化专门委员会&#xff09;的第六次评估报告明确&#xff1b;指出&#x…

低代码平台浅析:JNPF快速开发平台

目录 一、前言 二、低代码平台体验简述 三、关于平台 平台简介&#xff1a; 四、场景及用户分析 五、产品分析 1、着重讲一下JNPF的编辑器 2、业务流程 六、总结 一、前言 低代码平台能够改变了应用交付和管理的模式&#xff0c;大幅缩减交付周期&#xff0c;最终帮助业务加速创…

使用深度学习模型CNN进行实时情绪检测研究(Matlab代码实现)

目录 &#x1f4a5;1 概述 &#x1f4da;2 运行结果 &#x1f389;3 参考文献 &#x1f308;4 Matlab代码实现 &#x1f4a5;1 概述 使用深度学习模型CNN进行实时情绪检测是一种应用广泛的研究方向。下面是一个简要的步骤&#xff1a; 1. 数据收集和标注&#xff1a;收集包含…

华为OD机试真题 Java 实现【阿里巴巴找黄金宝箱(III)】【2023 B卷 100分】,附详细解题思路

目录 专栏导读一、题目描述二、输入描述三、输出描述四、解题思路五、Java算法源码六、效果展示1、输入2、输出3、说明4、那么问题来了&#xff0c;如果有两个满足的怎么办&#xff1f; 华为OD机试 2023B卷题库疯狂收录中&#xff0c;刷题点这里 专栏导读 本专栏收录于《华为O…

类和对象(下篇)

目录 1.再谈构造函数1.1构造函数体赋值1.2初始化列表1.3explicit关键字 2.Static成员2.1概念2.2特性 3.友元3.1友元函数3.2友元类 4.内部类5.再次理解类和对象总结 1.再谈构造函数 1.1构造函数体赋值 如下为对象赋初值构造函数体的语句&#xff0c;不能称作初始化。 class D…