美文网首页
TiDB Ansible 部署方案

TiDB Ansible 部署方案

作者: nightwish夜愿 | 来源:发表于2018-05-30 12:43 被阅读0次

https://www.pingcap.com/docs-cn/op-guide/ansible-deployment/

注意事项 如何配置 ssh 互信及 sudo 免密码

在中控机上创建 tidb 用户,并生成 ssh key。

# useradd tidb

# passwd tidb

# su - tidb

$

$ ssh-keygen -t rsa

Generating public/private rsa key pair.

Enter file in which to save the key (/home/tidb/.ssh/id_rsa):

Created directory '/home/tidb/.ssh'.

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /home/tidb/.ssh/id_rsa.

Your public key has been saved in /home/tidb/.ssh/id_rsa.pub.

The key fingerprint is:

SHA256:eIBykszR1KyECA/h0d7PRKz4fhAeli7IrVphhte7/So tidb@172.16.10.49

The key's randomart image is:

+---[RSA 2048]----+

|=+o+.o.          |

|o=o+o.oo        |

| .O.=.=          |

| . B.B +        |

|o B * B S        |

| * + * +        |

|  o + .          |

| o  E+ .        |

|o  ..+o.        |

+----[SHA256]-----+

如何使用 Ansible 自动配置 ssh 互信及 sudo 免密码

参照在中控机器上下载 TiDB-Ansible下载 TiDB-Ansible,将你的部署目标机器 IP 添加到 [servers] 区块下。

$ vi hosts.ini

[servers]

172.16.10.49

172.16.10.50

172.16.10.61

172.16.10.62

[all:vars]

username = tidb

执行以下命令,按提示输入部署目标机器 root 密码。

$ ansible-playbook -i hosts.ini create_users.yml -k

如何手工配置 ssh 互信及 sudo 免密码

以 root 用户依次登录到部署目标机器创建 tidb 用户并设置登录密码。

# useradd tidb

# passwd tidb

执行以下命令,将 tidb ALL=(ALL) NOPASSWD: ALL 添加到文件末尾,即配置好 sudo 免密码。

# visudo

tidb ALL=(ALL) NOPASSWD: ALL

以 tidb 用户登录到中控机,执行以下命令,将 172.16.10.61 替换成你的部署目标机器 IP,按提示输入部署目标机器 tidb 用户密码,执行成功后即创建好 ssh 互信,其他机器同理。

[tidb@172.16.10.49 ~]$ ssh-copy-id -i ~/.ssh/id_rsa.pub 172.16.10.61

验证 ssh 互信及 sudo 免密码

以 tidb 用户登录到中控机,ssh 登录目标机器 IP,不需要输入密码并登录成功,表示 ssh 互信配置成功。

[tidb@172.16.10.49 ~]$ ssh 172.16.10.61

[tidb@172.16.10.61 ~]$

以 tidb 用户登录到部署目标机器后,执行以下命令,不需要输入密码并切换到 root 用户,表示 tidb 用户 sudo 免密码配置成功。

[tidb@172.16.10.61 ~]$ sudo -su root

[root@172.16.10.61 tidb]#

相关文章

网友评论

      本文标题:TiDB Ansible 部署方案

      本文链接:https://www.haomeiwen.com/subject/sfmtsftx.html