新闻  |   论坛  |   博客  |   在线研讨会
配置计算节点之间的SSH
天翼云开发者 | 2024-08-26 14:58:39    阅读:35   发布文章

本文分享自天翼云开发者社区《配置计算节点之间的SSH》,作者:y****n

如果在管理程序之间调整或迁移实例,可能会遇到SSH(拒绝权限)错误。请确保每个节点都配置了SSH密钥验证,以便Compute服务可以通过SSH将磁盘移动到其他节点。 

在计算节点之间共享密钥对的操作步骤如下:

1.在第一个节点上获取密钥对(公钥和私钥)。使用根密钥目录或生成新的密钥对,存放的位置在:/root/.ssh/id_rsa and /root/.ssh/id_rsa.pub。

#ssh-keygen


2.在第一个节点上执行setenforce 0命令将SELinux设置为允许模式。

#setenforce 0


3.在第一个节点为nova用户开启登录能力:

# usermod -s /bin/bash nova
切换到nova帐户。

# su nova


4.在第一个节点上,作为root用户,创建SSH所需要的文件夹,并将步骤1中获取的私钥放在该文件夹中:

# mkdir -p /var/lib/nova/.ssh

# mkdir /var/lib/nova/.ssh/authorized_keys

# cp <private key>  /var/lib/nova/.ssh/id_rsa

# echo 'StrictHostKeyChecking no' >> /var/lib/nova/.ssh/config

# chmod 600 /var/lib/nova/.ssh/id_rsa /var/lib/nova/.ssh/authorized_keys

注意:由于几个计算节点之间不是互通的,只能通过deploy节点登录到不同计算节点,且执行ssh-copy-id -i <public key> nova@remote-host命令会报错误:Permission denied(publickey)。故采用直接将public key追加到本节点的authorized_keys文件夹中,再将所需文件拷贝到别的计算节点

 

5.在第一个节点上,将公钥安装到authorized_keys文件夹中

# cd /var/lib/nova/.ssh

# cat id_rsa.pub >> authorized_keys

 

6.打包第一个节点上/var/lib/nova/.ssh下的所有文件,并拷贝到/home/secure/下

# cd /var/lib/nova/.ssh

# tar -zcvf key.tar.gz ./

# cp key.tar.gz /home/secure/

 

7.将第6步骤打包好的压缩包发送到deploy节点上

在deploy节点上执行:

# scp -P10000 secure@10.9.200.14:/home/secure/key.tar.gz ./       (secure@10.9.200.14为第一个节点的信息)


8.再将这个key.tar.gz发送到其余计算节点

在deploy节点上执行:

# scp -P10000 key.tar.gz  secure@10.9.200.15:/home/secure/

# scp -P10000 key.tar.gz  secure@10.9.200.16:/home/secure/

...

在其余计算节点上重复步骤9-12

 

9.执行setenforce 0命令将SELinux设置为允许模式。

#setenforce 0


10.为nova用户开启登录能力:

# usermod -s /bin/bash nova
切换到nova帐户。

# su nova


11.作为root用户,创建SSH所需要的文件夹

# mkdir -p /var/lib/nova/.ssh


12.将打包好的文件放到/var/lib/nova/.ssh下

# mv /home/secure/key.tar.gz /var/lib/nova/.ssh

# cd /var/lib/nova/.ssh

# tar -zxvf chen.tar.gz ./

# chmod 600 /var/lib/nova/.ssh/id_rsa /var/lib/nova/.ssh/authorized_keys

# rm -rf key.*

 

13.在每个节点上将ssh连接的默认端口设置为10000

# vi /etc/ssh/ssh_config

修改Port为10000


14.在每个节点上重启sshd服务

# systemctl restart sshd

 

15.在每个节点上确保nova用户无需密码即可登录各节点:

# su nova

$ ssh *computeNodeAddress*

$ exit

 

16.在每个节点上以root用户重新启动libvirt和Compute服务:

# systemctl restart libvirtd.service

# systemctl restart openstack-nova-compute.service

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
天翼云提供云主机、CDN、云电脑、大数据及AI等全线产品和场景化解决方案。
最近文章
Consul简介
2024-11-19 15:06:06
推荐文章
最近访客