《OpenShift 4.x HOL教程汇总》
说明:本文已经在OpenShift 4.6环境中验证

文章目录

  • 创建新的SSH Key秘钥对
  • 获取当前OpenShift已有SSH Key
  • 更新OpenShift的SSH Key

在安装OpenShift的时候会向OpenShift提供公钥,这样就可以用对应的私钥直接访问OpenShift集群的节点。在OpenShift安装过程中需要使用秘钥登录集群节点。虽然在OpenShift集群安装成功后可以使用“oc debug”命令进入集群节点,但是还可继续使用秘钥登录集群节点,以便在OpenShift API Server无法使用的时候还可继续登录集群节点。

创建新的SSH Key秘钥对

执行命令,创建新的SSH Key秘钥对

$ mkdir ssh-key
$ ssh-keygen -N '' -f ssh-key/id_rsa
Generating public/private rsa key pair.
Your identification has been saved in ./id_rsa.
Your public key has been saved in ./id_rsa.pub.
The key fingerprint is:
SHA256:TdXJAwu5jhA8/oKtprjzDTKwH5Eq+imEJttCrUT42uU xiaoyliu-redhat.com@bastion.pek-e7a3.internal
The key's randomart image is:
+---[RSA 3072]----+
|     .    ..o+ . |
|      +   .o .=  |
|.    . o  ...  . |
|.. .  o  o.      |
|+.+  o oSo.      |
|+B.oo o o .      |
|%=+o . .         |
|O*o=E            |
|+B*o.            |
+----[SHA256]-----+

查看创建结果中的公钥内容。

$ ll ssh-key/
total 8
-rw-------. 1 xiaoyliu-redhat.com users 2643 Apr  4 11:33 id_rsa
-rw-r--r--. 1 xiaoyliu-redhat.com users  599 Apr  4 11:33 id_rsa.pub
$ more ssh-key/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDf6NJpKq6qN97045mtBnSyLO1lMe9MQ43bPJ9+55WOkcZmPs3RrRjGRdFKN4qLkvleZVhNeabXvR79tmFal0npPbysjHEWQojzeLBYxhOTUgiGvLBjofAQxnfzsCaS24WzdltdBcWOVRliG6kF8h7aYhq4bW3uepJeocG2T4nA2bCS1gqmthIkZeeqx6BrifCfDfTNOcvIhAN61Jv8xo91f/9C6gmgMUb0O16yTpnPeVVfaAq2YKTUGzpZ5HwjOCKTMhv7ij5MHncAZgeS7AoZBY/0SeWidNgttF7xYeg1GISj8ii/4n/5fhUV0zJkDyUPUOqTaq25Ge+590xfIJcMnj18QA+DwKDDndjbKUgjfpnL6PHLYBFwVIN24Lz7AI2lzRS8i05mihma+nvOgZ0o49+CLUPrlBX2D/RAzRBfIsEsx/bld4jn812DrFwJuIwTcYVa1+YhGj86Nrk+JNKi84xBN6EMJMwhU5NEFt8g2AT/Cvh1KD6WOyQ1ub6Gaoc= xiaoyliu-redhat.com@bastion.pek-e7a3.internal

获取当前OpenShift已有SSH Key

ssh-key保存在OpenShift的MachineConfig对象中,可以执行以下命令获取到ssh-key。

$ oc get mc 99-master-ssh -o yaml > 99-master-ssh.yml
$ oc get mc 99-worker-ssh -o yaml > 99-worker-ssh.yml

查看文件内容,其中“sshAuthorizedKeys”中的“ssh-rsa”的内容即为公钥内容。

。。。
spec:config:ignition:version: 3.2.0passwd:users:- name: coresshAuthorizedKeys:- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCje3xSJLcOXbSBKVNPATHA7hYCmaUyupqOVjw0InTLlwwNyIZg0tKV5x1vYxcMJPy4V3jdOCclAqaeNqWzOD4EAKIQ07MNihPuFZckHDpXLsuV09vfD0iUSE6u
M97KhrcDl4gghTYn5z+ltS7ToNFoSxLJDmMVKPpANuagu9Yh+4TXVL5z4MMNmTKzuNBHzuZSaQK65HNTZivMXDlmGGrrsPB+F1Cy9xMT28omlZTKq0AUw8ck6fG5ysR4hRjPFFPZU3GZF+1tcpT8vPbh4e/1lwvfmlFk+ATzQl
ddv6PjifqzoBvczsXWYtggWWJlBPFZ3rZH72Mvm2RrR+iUhc6h root@support
。。。

更新OpenShift的SSH Key

将上一步生成的公钥加入到第一步生成的 99-master-ssh.yml 和 99-worker-ssh.yml 文件中。

。。。sshAuthorizedKeys:- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC1sUtNm/u8EPq13a2L5vhtEl/QtrKy8Vi9LYy2iSLtGi3uJ9l3kdFpccq/kxWoCfHk5EHsz1UDdehDG4sSf/XdSLLUfTp0VBLW2yqEVq0+5xW236h5c8ShZ3HM0ZS1Gl7z6tW0M9agW/au6Siqq/Cvrt+42nWlv8+tuoaQe44aTf9Rj4thiOUhRlu2A+WHpZMsqZgKph78B2VFa6UHMTqSmuPoMP56Z9HVi7/zWKx+InxaqWY9ohrDRpVcjer85br4EZ865wRkkzNk4Qf5SXcYcHbULBld3r9aS4RUxFLVJhtIkKudgJm0C0OcpEQoEjNxfgv7yHN54dbBwM9EvdMv ec2-user@bastion.pek-e7a3.internal- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDf6NJpKq6qN97045mtBnSyLO1lMe9MQ43bPJ9+55WOkcZmPs3RrRjGRdFKN4qLkvleZVhNeabXvR79tmFal0npPbysjHEWQojzeLBYxhOTUgiGvLBjofAQxnfzsCaS24WzdltdBcWOVRliG6kF8h7aYhq4bW3uepJeocG2T4nA2bCS1gqmthIkZeeqx6BrifCfDfTNOcvIhAN61Jv8xo91f/9C6gmgMUb0O16yTpnPeVVfaAq2YKTUGzpZ5HwjOCKTMhv7ij5MHncAZgeS7AoZBY/0SeWidNgttF7xYeg1GISj8ii/4n/5fhUV0zJkDyUPUOqTaq25Ge+590xfIJcMnj18QA+DwKDDndjbKUgjfpnL6PHLYBFwVIN24Lz7AI2lzRS8i05mihma+nvOgZ0o49+CLUPrlBX2D/RAzRBfIsEsx/bld4jn812DrFwJuIwTcYVa1+YhGj86Nrk+JNKi84xBN6EMJMwhU5NEFt8g2AT/Cvh1KD6WOyQ1ub6Gaoc= xiaoyliu-redhat.com@bastion.pek-e7a3.internal
。。。

执行命令,更新OpenShift集群节点的MachineConfig配置。

$ oc apply -f 99-master-ssh.yml
$ oc apply -f 99-worker-ssh.yml

可以查看节点重启状态。

$ oc get MachineConfigPool
NAME     CONFIG                                             UPDATED   UPDATING   DEGRADED   MACHINECOUNT   READYMACHINECOUNT   UPDATEDMACHINECOUNT   DEGRADEDMACHINECOUNT   AGE
master   rendered-master-42216de6f0c6919dae3b07593e9b7e27   True      False      False      3              3                   3                     0                      4d10h
worker   rendered-worker-45768542f13f0b2cd71b09fa9461d063   True      False      False      2              2                   2                     0                      4d10h

可以查看节点的daemon运行日志。

$ oc -n openshift-machine-config-operator logs -c machine-config-daemon $(oc -n openshift-machine-config-operator get pod -l k8s-app=machine-config-daemon --field-selector spec.nodeName=${NODE} -o name) -f
。。。
I0111 19:59:07.360110    7993 update.go:258] SSH Keys reconcilable
...
I0111 19:59:07.371253    7993 update.go:569] Writing SSHKeys at "/home/core/.ssh"
...
I0111 19:59:07.372208    7993 update.go:613] machine-config-daemon initiating reboot: Node will reboot into config worker-96b48815fa067f651fa50541ea6a9b5d
。。。

最后用新秘钥登录OpenShift集群节点。

ssh -i ssh-key/id_rsa core@<OC-NODE>

OpenShift 4 - 向OpenShift添加新的SSH Key相关推荐

  1. Git添加多个SSH key公钥

    2019独角兽企业重金招聘Python工程师标准>>> 1,添加第二个远程仓库或者多个以下内容类推即可,例如sohu的 ssh-keygen -t rsa -f ~/.ssh/id_ ...

  2. 如何使用ssh-keygen生成新的SSH key

    1.什么是ssh-keygen Ssh-keygen是用于为SSH创建新的身份验证密钥对的工具. 此类密钥对用于自动登录,单点登录和验证主机. 2.SSH key与公钥认证 SSH协议使用公共密钥加密 ...

  3. 一台电脑同时添加git和bitbucket两个网站的ssh key

    添加第一个ssh key 就不多说了,不懂的可以自己查资料 ssh-keygen -t rsa -C 'email_1@email.com' 然后一路enter就好了 假设已经添加好了git的ssh ...

  4. 在 github 上添加 SSH key 的步骤

    版权声明:个人学习笔记,不喜勿喷,文章转载请标明出处,谢谢! <a class="copy-right-url" href=" https://blog.csdn. ...

  5. linux添加ssh key

    检查SSH keys是否存在 ls -al ~/.ssh 如果没有配置过,会显示如下信息: 如果配置过,会显示如下信息: drwx------ 2 wx wx 4096 3月 20 16:35 . d ...

  6. github 公钥 私钥_ubuntu git生成ssh key (公钥私钥)配置github或者码云

    Git是分布式的代码管理工具,远程的代码管理是基于SSH的,所以要使用远程的Git则需要SSH的配置. github的SSH配置如下: 设置Git的user name和email: git confi ...

  7. window下配置SSH连接GitHub、GitHub配置ssh key

    此经验分两部分: 第一部分介绍:在windows下通过msysGit(Git for windows.Git Bash)配置SSH Keys连接GitHub. 第二部分介绍:在GitHub上创建仓库, ...

  8. 本地连接远程代码库——生成公钥SSH Key(Linux版)

    一.问题描述 在linux服务器上连接远程gitlab代码库,报错Please make sure you have the correct access rights and the reposit ...

  9. 如何在Github上配置ssh key的密钥

    Step0 : 解释说明 git使用SSH配置, 初始需要以下三个步骤 使用秘钥生成工具生成rsa秘钥和公钥 将rsa公钥添加到代码托管平台 将rsa秘钥添加到ssh-agent中,为ssh clie ...

最新文章

  1. 时间序列的截尾和拖尾_R语言:时间序列(一)
  2. 4阶范德蒙德行列式例题_线性代数入门——“爪型行列式”的计算及其应用
  3. 作者:魏凯(1981-),男,中国信息通信研究院移动互联网与大数据部高级工程师、副主任。...
  4. 他不怕被拒绝_不会敬酒很吃亏,送你五个敬酒词的模版,再也不怕劝酒了
  5. python爬虫模拟点击下拉菜单和_python+selenium爬虫过程中的模拟点击问题
  6. 想让自己的网站变得精致吗?那就进来看看吧:跟随鼠标的天使
  7. python自学行吗-《》 python自学行吗?
  8. Nginx Location 工作流程图及总结
  9. 清华大学计算机学院教授简介,清华大学计算机科学与技术系导师教师师资介绍简介-王继龙...
  10. Spotfire 表达式之日期和时间函数
  11. 软件项目管理期末选择题复习100题(含答案)
  12. 基于51单片机的手机电话拨号盘模拟protues仿真
  13. 项目经理之我思员工能动性
  14. 数学分析(1): 实数
  15. python统计大写辅音字母_大写
  16. 通俗易懂的Latex教程文档
  17. D. Sequence and Swaps
  18. 软件开发环境SDK安装及注意事项
  19. 0.96寸OLED的使用
  20. java神雕侠侣1古墓情缘游戏攻略_《神雕侠侣》手游古墓秘境1到5关详细攻略

热门文章

  1. 64位树莓派运行linux,树莓派3B+安装64位debian GUN/Linux系统
  2. python 描述器 详解_描述器使用指南
  3. html5 ocr图片识别,OCR识别控件LEADTOOLS HTML5案例:整页OCR识别
  4. python获取命令行参数_Python获取命令行参数的正确方法,案例详解
  5. 设计趋势:液态渐变色彩背景
  6. python 新式类和旧式类_python新式类和旧式类区别
  7. java解析dxf文件_CAD文件无法打开,这两点原因你必须要知道
  8. CEF编译教程(手把手教学版)
  9. DM框架中CString/CStringW 转 double (c++通用)
  10. 【R】ployroot函数求解多项式方程