7.2. 使用 IDP 帐户访问集群


要登录到集群,您可以配置身份提供程序(IDP)。此流程使用 GitHub 作为示例 IDP。要查看其他支持的 IDP,请运行 rosa create idp --help 命令。

注意

或者,作为创建集群的用户,您可以使用快速访问过程。

流程

使用 IDP 帐户访问集群:

  1. 添加 IDP。

    1. 以下命令创建一个由 GitHub 支持的 IDP。运行此命令后,按照输出中的交互式提示访问 GitHub 开发人员设置 并配置新的 OAuth 应用。

      $ rosa create idp --cluster=<cluster_name> --interactive
    2. 输入以下值:

      • 身份提供程序类型: github
      • Restrict to members of: organizations(如果您没有 GitHub 机构,您可以立即创建一个)
      • GitHub organizations: rh-test-org (您的组织的名称)

      输出示例

      I: Interactive mode enabled.
      Any optional fields can be left empty and a default will be selected.
      ? Type of identity provider: github
      ? Restrict to members of: organizations
      ? GitHub organizations: rh-test-org
      ? To use GitHub as an identity provider, you must first register the application:
        - Open the following URL:
          https://github.com/organizations/rh-rosa-test-cluster/settings/applications/new?oauth_application%5Bcallback_url%5D=https%3A%2F%2Foauth-openshift.apps.rh-rosa-test-cluster.z7v0.s1.devshift.org%2Foauth2callback%2Fgithub-1&oauth_application%5Bname%5D=rh-rosa-test-cluster-stage&oauth_application%5Burl%5D=https%3A%2F%2Fconsole-openshift-console.apps.rh-rosa-test-cluster.z7v0.s1.devshift.org
        - Click on 'Register application'
      ...

    3. 使用输出中的 URL 并选择 Register application,在 GitHub 组织中注册新的 OAuth 应用程序。通过注册应用程序,您可以启用 ROSA 中构建的 OAuth 服务器,以便验证您的 GitHub 组织的成员到集群中。

      注意

      Register a new OAuth application GitHub 表单中的字段通过 Red Hat OpenShift Service on AWS (ROSA) CLI 定义的 URL 自动填充所需的值。

    4. 使用您创建的 GitHub 应用程序的信息并继续提示。输入以下值:

      • 客户端 ID: & lt;my_github_client_id>
      • Client Secret: [? for help] &lt ;my_github_client_secret>
      • hostname :(可选,您可以立即将其留空)
      • 映射方法: claim

      持续的输出示例

      ...
      ? Client ID: <my_github_client_id>
      ? Client Secret: [? for help] <my_github_client_secret>
      ? Hostname:
      ? Mapping method: claim
      I: Configuring IDP for cluster 'rh_rosa_test_cluster'
      I: Identity Provider 'github-1' has been created. You need to ensure that there is a list of cluster administrators defined. See 'rosa create user --help' for more information. To login into the console, open https://console-openshift-console.apps.rh-test-org.z7v0.s1.devshift.org and click on github-1

      在集群中配置 IDP 可能需要 1-2 分钟。

    5. 输入以下命令验证您的 IDP 是否已正确配置:

      $ rosa list idps --cluster=<cluster_name>

      输出示例

      NAME        TYPE      AUTH URL
      github-1    GitHub    https://oauth-openshift.apps.rh-rosa-test-cluster1.j9n4.s1.devshift.org/oauth2callback/github-1

  2. 登录到您的集群。

    1. 输入以下命令获取集群 的控制台 URL

      $ rosa describe cluster --cluster=<cluster_name>

      输出示例

      Name:        rh-rosa-test-cluster1
      ID:          1de87g7c30g75qechgh7l5b2bha6r04e
      External ID: 34322be7-b2a7-45c2-af39-2c684ce624e1
      API URL:     https://api.rh-rosa-test-cluster1.j9n4.s1.devshift.org:6443 1
      Console URL: https://console-openshift-console.apps.rh-rosa-test-cluster1.j9n4.s1.devshift.org
      Nodes:       Master: 3, Infra: 3, Compute: 4
      Region:      us-east-2
      State:       ready
      Created:     May 27, 2020

      1
      对于托管 control plane (HCP)集群的 Red Hat OpenShift Service on AWS (ROSA),端口号应为 443。
    2. 导航到 Console URL,再使用 Github 凭据登录。
    3. 在 OpenShift 控制台右上角,点您的名称并点击 Copy Login Command
    4. 选择您添加的 IDP 的名称(在这里是 github-1),然后点 Display Token
    5. oc login 命令复制并粘贴到终端中。

      $ oc login --token=z3sgOGVDk0k4vbqo_wFqBQQTnT-nA-nQLb8XEmWnw4X --server=https://api.rh-rosa-test-cluster1.j9n4.s1.devshift.org:6443 1
      1
      对于使用 HCP 集群的 ROSA,使用端口号 443。

      输出示例

      Logged into "https://api.rh-rosa-cluster1.j9n4.s1.devshift.org:6443" as "rh-rosa-test-user" using the token provided. 1
      
      You have access to 67 projects, the list has been suppressed. You can list all projects with 'oc projects'
      
      Using project "default".

      1
      对于使用 HCP 集群的 ROSA,端口号应为 443。
    6. 输入一个简单的 oc 命令,以验证一切设置是否正确且已登录。

      $ oc version

      输出示例

      Client Version: 4.4.0-202005231254-4a4cd75
      Server Version: 4.3.18
      Kubernetes Version: v1.16.2

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.