TDSQL 安装部署附图的实现(图文)
<p>分布式数据库(tencent distributed sql,tdsql)是腾讯打造的一款分布式数据库产品,具备强一致高可用、全球部署架构、分布式水平扩展、高性能、企业级安全等特性,同时提供智能 dba、自动化运营、监控告警等配套设施,为客户提供完整的分布式数据库解决方案。</p>
<p>
tdsql按照官方要求配置相对较高,现通过4台虚拟机演示tdsql的全套部署。 如有不对的地方请指证 wx:moonstar00</p>
<p>
<span><strong>** 机器数量规划:**</strong></span></p>
<p>
tdsql 规划机器如下:4台(cpu:2core/mem:8g/hdd:50g) ,内存至少5g以上 ,cpu 至少2c以上, 否则检查通不过</p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/2521da932f9f12797295c28111f296d0.jpg"></p>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_580212">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
<div class="line number21 index20 alt2">
21</div>
<div class="line number22 index21 alt1">
22</div>
<div class="line number23 index22 alt2">
23</div>
<div class="line number24 index23 alt1">
24</div>
<div class="line number25 index24 alt2">
25</div>
<div class="line number26 index25 alt1">
26</div>
<div class="line number27 index26 alt2">
27</div>
<div class="line number28 index27 alt1">
28</div>
<div class="line number29 index28 alt2">
29</div>
<div class="line number30 index29 alt1">
30</div>
<div class="line number31 index30 alt2">
31</div>
<div class="line number32 index31 alt1">
32</div>
<div class="line number33 index32 alt2">
33</div>
<div class="line number34 index33 alt1">
34</div>
<div class="line number35 index34 alt2">
35</div>
<div class="line number36 index35 alt1">
36</div>
<div class="line number37 index36 alt2">
37</div>
<div class="line number38 index37 alt1">
38</div>
<div class="line number39 index38 alt2">
39</div>
<div class="line number40 index39 alt1">
40</div>
<div class="line number41 index40 alt2">
41</div>
<div class="line number42 index41 alt1">
42</div>
<div class="line number43 index42 alt2">
43</div>
<div class="line number44 index43 alt1">
44</div>
<div class="line number45 index44 alt2">
45</div>
<div class="line number46 index45 alt1">
46</div>
<div class="line number47 index46 alt2">
47</div>
<div class="line number48 index47 alt1">
48</div>
<div class="line number49 index48 alt2">
49</div>
<div class="line number50 index49 alt1">
50</div>
<div class="line number51 index50 alt2">
51</div>
<div class="line number52 index51 alt1">
52</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">#######################</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">tdsql安装部署</code>
</div>
<div class="line number3 index2 alt2">
<code class="sql plain">#######################</code>
</div>
<div class="line number4 index3 alt1">
<code class="sql plain">1.设主机名</code>
</div>
<div class="line number5 index4 alt2">
<code class="sql plain">hostnamectl </code><code class="sql keyword">set</code><code class="sql plain">-hostname huyidb01</code>
</div>
<div class="line number6 index5 alt1">
<code class="sql plain">hostnamectl </code><code class="sql keyword">set</code><code class="sql plain">-hostname huyidb02</code>
</div>
<div class="line number7 index6 alt2">
<code class="sql plain">hostnamectl </code><code class="sql keyword">set</code><code class="sql plain">-hostname huyidb03</code>
</div>
<div class="line number8 index7 alt1">
<code class="sql plain">hostnamectl </code><code class="sql keyword">set</code><code class="sql plain">-hostname huyidb04</code>
</div>
<div class="line number9 index8 alt2">
</div>
<div class="line number10 index9 alt1">
<code class="sql plain">2.配置主机名</code>
</div>
<div class="line number11 index10 alt2">
<code class="sql plain">vim /etc/hosts</code>
</div>
<div class="line number12 index11 alt1">
<code class="sql plain">10.85.10.51 huyidb01</code>
</div>
<div class="line number13 index12 alt2">
<code class="sql plain">10.85.10.52 huyidb02</code>
</div>
<div class="line number14 index13 alt1">
<code class="sql plain">10.85.10.53 huyidb03</code>
</div>
<div class="line number15 index14 alt2">
<code class="sql plain">10.85.10.54 huyidb04</code>
</div>
<div class="line number16 index15 alt1">
</div>
<div class="line number17 index16 alt2">
<code class="sql plain">3.设置时间同步</code>
</div>
<div class="line number18 index17 alt1">
<code class="sql plain">以huyidb01为主时钟</code>
</div>
<div class="line number19 index18 alt2">
<code class="sql plain">mount /dev/cdrom /mnt</code>
</div>
<div class="line number20 index19 alt1">
<code class="sql plain">yum -y install ntp*</code>
</div>
<div class="line number21 index20 alt2">
</div>
<div class="line number22 index21 alt1">
<code class="sql plain"># vim /etc/ntp.conf</code>
</div>
<div class="line number23 index22 alt2">
<code class="sql plain">#同步地址</code>
</div>
<div class="line number24 index23 alt1">
<code class="sql plain">server 127.127.1.0 iburst</code>
</div>
<div class="line number25 index24 alt2">
<code class="sql plain">systemctl restart ntpd.service</code>
</div>
<div class="line number26 index25 alt1">
<code class="sql plain"># vim /etc/ntp.conf</code>
</div>
<div class="line number27 index26 alt2">
<code class="sql plain">server 10.85.10.51</code>
</div>
<div class="line number28 index27 alt1">
<code class="sql keyword">restrict</code> <code class="sql plain">10.85.10.51 mask 255.255.240.0 nomodify notrap</code>
</div>
<div class="line number29 index28 alt2">
<code class="sql plain">systemctl restart ntpd.service</code>
</div>
<div class="line number30 index29 alt1">
<code class="sql plain">ntpdate -u 10.85.10.51</code>
</div>
<div class="line number31 index30 alt2">
<code class="sql plain"># vim /etc/ntp.conf</code>
</div>
<div class="line number32 index31 alt1">
<code class="sql plain">server 10.85.10.51</code>
</div>
<div class="line number33 index32 alt2">
<code class="sql keyword">restrict</code> <code class="sql plain">10.85.10.51 mask 255.255.240.0 nomodify notrap</code>
</div>
<div class="line number34 index33 alt1">
<code class="sql plain">systemctl restart ntpd.service</code>
</div>
<div class="line number35 index34 alt2">
<code class="sql plain">ntpdate -u 10.85.10.51</code>
</div>
<div class="line number36 index35 alt1">
<code class="sql plain"># vim /etc/ntp.conf</code>
</div>
<div class="line number37 index36 alt2">
<code class="sql plain">server 10.85.10.51</code>
</div>
<div class="line number38 index37 alt1">
<code class="sql keyword">restrict</code> <code class="sql plain">10.85.10.51 mask 255.255.240.0 nomodify notrap</code>
</div>
<div class="line number39 index38 alt2">
<code class="sql plain">systemctl restart ntpd.service</code>
</div>
<div class="line number40 index39 alt1">
<code class="sql plain">ntpdate -u 10.85.10.51</code>
</div>
<div class="line number41 index40 alt2">
</div>
<div class="line number42 index41 alt1">
<code class="sql plain">4.配置免密登录(管理机 110.85.10.54 上操作)</code>
</div>
<div class="line number43 index42 alt2">
<code class="sql plain">ssh-keygen -t rsa </code><code class="sql comments">--这里不用输入密码,免密码登录</code>
</div>
<div class="line number44 index43 alt1">
<code class="sql plain">ssh-copy-id 10.85.10.51 </code><code class="sql comments">--下面要输入远程主机的密码</code>
</div>
<div class="line number45 index44 alt2">
<code class="sql plain">ssh-copy-id 10.85.10.52</code>
</div>
<div class="line number46 index45 alt1">
<code class="sql plain">ssh-copy-id 10.85.10.53</code>
</div>
<div class="line number47 index46 alt2">
<code class="sql plain">ssh-copy-id 10.85.10.54</code>
</div>
<div class="line number48 index47 alt1">
<code class="sql plain">#这里是通过ip copy的 ,测试的时候也只要用ip 例: ssh 10.85.10.51</code>
</div>
<div class="line number49 index48 alt2">
</div>
<div class="line number50 index49 alt1">
<code class="sql plain">5.准备数据目录路径(所有机器)</code>
</div>
<div class="line number51 index50 alt2">
<code class="sql plain">mkdir -p /mysql/data</code>
</div>
<div class="line number52 index51 alt1">
<code class="sql plain">mkdir -p /mysql/log</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_261420">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">#安装ansible</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">unzip tdsql_full_install_ansible.zip</code>
</div>
<div class="line number3 index2 alt2">
<code class="sql plain">cd tdsql_full_install_ansible</code>
</div>
<div class="line number4 index3 alt1">
<code class="sql plain">python settings/install_ansible.py</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_979511">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
<div class="line number21 index20 alt2">
21</div>
<div class="line number22 index21 alt1">
22</div>
<div class="line number23 index22 alt2">
23</div>
<div class="line number24 index23 alt1">
24</div>
<div class="line number25 index24 alt2">
25</div>
<div class="line number26 index25 alt1">
26</div>
<div class="line number27 index26 alt2">
27</div>
<div class="line number28 index27 alt1">
28</div>
<div class="line number29 index28 alt2">
29</div>
<div class="line number30 index29 alt1">
30</div>
<div class="line number31 index30 alt2">
31</div>
<div class="line number32 index31 alt1">
32</div>
<div class="line number33 index32 alt2">
33</div>
<div class="line number34 index33 alt1">
34</div>
<div class="line number35 index34 alt2">
35</div>
<div class="line number36 index35 alt1">
36</div>
<div class="line number37 index36 alt2">
37</div>
<div class="line number38 index37 alt1">
38</div>
<div class="line number39 index38 alt2">
39</div>
<div class="line number40 index39 alt1">
40</div>
<div class="line number41 index40 alt2">
41</div>
<div class="line number42 index41 alt1">
42</div>
<div class="line number43 index42 alt2">
43</div>
<div class="line number44 index43 alt1">
44</div>
<div class="line number45 index44 alt2">
45</div>
<div class="line number46 index45 alt1">
46</div>
<div class="line number47 index46 alt2">
47</div>
<div class="line number48 index47 alt1">
48</div>
<div class="line number49 index48 alt2">
49</div>
<div class="line number50 index49 alt1">
50</div>
<div class="line number51 index50 alt2">
51</div>
<div class="line number52 index51 alt1">
52</div>
<div class="line number53 index52 alt2">
53</div>
<div class="line number54 index53 alt1">
54</div>
<div class="line number55 index54 alt2">
55</div>
<div class="line number56 index55 alt1">
56</div>
<div class="line number57 index56 alt2">
57</div>
<div class="line number58 index57 alt1">
58</div>
<div class="line number59 index58 alt2">
59</div>
<div class="line number60 index59 alt1">
60</div>
<div class="line number61 index60 alt2">
61</div>
<div class="line number62 index61 alt1">
62</div>
<div class="line number63 index62 alt2">
63</div>
<div class="line number64 index63 alt1">
64</div>
<div class="line number65 index64 alt2">
65</div>
<div class="line number66 index65 alt1">
66</div>
<div class="line number67 index66 alt2">
67</div>
<div class="line number68 index67 alt1">
68</div>
<div class="line number69 index68 alt2">
69</div>
<div class="line number70 index69 alt1">
70</div>
<div class="line number71 index70 alt2">
71</div>
<div class="line number72 index71 alt1">
72</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">#配置tdsql_hosts</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">vi /soft/tdsql_full_install_ansible/tdsql_hosts</code>
</div>
<div class="line number3 index2 alt2">
<code class="sql plain"></code>
</div>
<div class="line number4 index3 alt1">
<code class="sql plain">tdsql_huyidb01 ansible_ssh_host=10.85.10.51</code>
</div>
<div class="line number5 index4 alt2">
<code class="sql plain">tdsql_huyidb02 ansible_ssh_host=10.85.10.52</code>
</div>
<div class="line number6 index5 alt1">
<code class="sql plain">tdsql_huyidb03 ansible_ssh_host=10.85.10.53</code>
</div>
<div class="line number7 index6 alt2">
<code class="sql plain">tdsql_huyidb04 ansible_ssh_host=10.85.10.54</code>
</div>
<div class="line number8 index7 alt1">
<code class="sql plain"></code>
</div>
<div class="line number9 index8 alt2">
<code class="sql plain">tdsql_zk1 ansible_ssh_host=10.85.10.51</code>
</div>
<div class="line number10 index9 alt1">
<code class="sql plain">tdsql_zk2 ansible_ssh_host=10.85.10.52</code>
</div>
<div class="line number11 index10 alt2">
<code class="sql plain">tdsql_zk3 ansible_ssh_host=10.85.10.53</code>
</div>
<div class="line number12 index11 alt1">
<code class="sql plain"></code>
</div>
<div class="line number13 index12 alt2">
<code class="sql plain">tdsql_scheduler1 ansible_ssh_host=10.85.10.52</code>
</div>
<div class="line number14 index13 alt1">
<code class="sql plain">tdsql_scheduler2 ansible_ssh_host=10.85.10.53</code>
</div>
<div class="line number15 index14 alt2">
<code class="sql plain"></code>
</div>
<div class="line number16 index15 alt1">
<code class="sql plain">tdsql_oss1 ansible_ssh_host=10.85.10.52</code>
</div>
<div class="line number17 index16 alt2">
<code class="sql plain">tdsql_oss2 ansible_ssh_host=10.85.10.53</code>
</div>
<div class="line number18 index17 alt1">
<code class="sql plain"></code>
</div>
<div class="line number19 index18 alt2">
<code class="sql plain">tdsql_chitu1 ansible_ssh_host=10.85.10.52</code>
</div>
<div class="line number20 index19 alt1">
<code class="sql plain">tdsql_chitu2 ansible_ssh_host=10.85.10.53</code>
</div>
<div class="line number21 index20 alt2">
<code class="sql plain"></code>
</div>
<div class="line number22 index21 alt1">
<code class="sql plain">tdsql_monitor1 ansible_ssh_host=10.85.10.52</code>
</div>
<div class="line number23 index22 alt2">
<code class="sql plain">tdsql_monitor1 ansible_ssh_host=10.85.10.53</code>
</div>
<div class="line number24 index23 alt1">
<code class="sql plain"></code>
</div>
<div class="line number25 index24 alt2">
<code class="sql plain">tdsql_db1 ansible_ssh_host=10.85.10.51</code>
</div>
<div class="line number26 index25 alt1">
<code class="sql plain">tdsql_db2 ansible_ssh_host=10.85.10.52</code>
</div>
<div class="line number27 index26 alt2">
<code class="sql plain">tdsql_db3 ansible_ssh_host=10.85.10.53</code>
</div>
<div class="line number28 index27 alt1">
<code class="sql plain"></code>
</div>
<div class="line number29 index28 alt2">
<code class="sql plain">tdsql_proxy1 ansible_ssh_host=10.85.10.51</code>
</div>
<div class="line number30 index29 alt1">
<code class="sql plain">tdsql_proxy2 ansible_ssh_host=10.85.10.52</code>
</div>
<div class="line number31 index30 alt2">
<code class="sql plain">tdsql_proxy3 ansible_ssh_host=10.85.10.53</code>
</div>
<div class="line number32 index31 alt1">
<code class="sql plain"></code>
</div>
<div class="line number33 index32 alt2">
<code class="sql plain">tdsql_hdfs1 ansible_ssh_host=10.85.10.54</code>
</div>
<div class="line number34 index33 alt1">
<code class="sql plain"></code>
</div>
<div class="line number35 index34 alt2">
<code class="sql plain">tdsql_lvs1 ansible_ssh_host=10.85.10.52</code>
</div>
<div class="line number36 index35 alt1">
<code class="sql plain">tdsql_lvs2 ansible_ssh_host=10.85.10.53</code>
</div>
<div class="line number37 index36 alt2">
<code class="sql plain"></code>
</div>
<div class="line number38 index37 alt1">
<code class="sql plain">tdsql_kafka1 ansible_ssh_host=10.85.10.51</code>
</div>
<div class="line number39 index38 alt2">
<code class="sql plain">tdsql_kafka2 ansible_ssh_host=10.85.10.52</code>
</div>
<div class="line number40 index39 alt1">
<code class="sql plain">tdsql_kafka3 ansible_ssh_host=10.85.10.53</code>
</div>
<div class="line number41 index40 alt2">
<code class="sql plain"></code>
</div>
<div class="line number42 index41 alt1">
<code class="sql plain">tdsql_consumer1 ansible_ssh_host=10.85.10.54</code>
</div>
<div class="line number43 index42 alt2">
<code class="sql plain"></code>
</div>
<div class="line number44 index43 alt1">
<code class="sql plain">tdsql_es1 ansible_ssh_host=10.85.10.54</code>
</div>
<div class="line number45 index44 alt2">
<code class="sql plain"></code>
</div>
<div class="line number46 index45 alt1">
<code class="sql plain">tdsql_newdb1 ansible_ssh_host=1.1.1.1</code>
</div>
<div class="line number47 index46 alt2">
<code class="sql plain">tdsql_newdb2 ansible_ssh_host=2.2.2.2</code>
</div>
<div class="line number48 index47 alt1">
<code class="sql plain">tdsql_newdb3 ansible_ssh_host=3.3.3.3</code>
</div>
<div class="line number49 index48 alt2">
</div>
<div class="line number50 index49 alt1">
<code class="sql plain">修改 ansible 变量</code>
</div>
<div class="line number51 index50 alt2">
<code class="sql plain">vi /soft/tdsql_full_install_ansible/group_vars/</code><code class="sql color1">all</code>
</div>
<div class="line number52 index51 alt1">
<code class="sql plain">zk_num: 3</code>
</div>
<div class="line number53 index52 alt2">
<code class="sql plain">netif_name: ens38 #<—填入 scheduler(ifconfig 看到的)网卡的名称</code>
</div>
<div class="line number54 index53 alt1">
<code class="sql plain">tdsql_pass: a+complex+</code><code class="sql keyword">password</code>
</div>
<div class="line number55 index54 alt2">
<code class="sql plain">zk_rootdir: /tdsqlzk</code>
</div>
<div class="line number56 index55 alt1">
</div>
<div class="line number57 index56 alt2">
<code class="sql plain">#下面参数后面安装相关模块时在调整</code>
</div>
<div class="line number58 index57 alt1">
<code class="sql plain">metadb_ip: 10.120.109.204</code>
</div>
<div class="line number59 index58 alt2">
<code class="sql plain">metadb_port: 15001</code>
</div>
<div class="line number60 index59 alt1">
<code class="sql plain">metadb_ip_bak: 10.120.109.205</code>
</div>
<div class="line number61 index60 alt2">
<code class="sql plain">metadb_port_bak: 15001</code>
</div>
<div class="line number62 index61 alt1">
<code class="sql plain">metadb_user: hanlon</code>
</div>
<div class="line number63 index62 alt2">
<code class="sql plain">metadb_password: hanlon</code>
</div>
<div class="line number64 index63 alt1">
<code class="sql plain">ssh_port: 36000</code>
</div>
<div class="line number65 index64 alt2">
<code class="sql plain">hdfs_datadir: /data2/hdfs,/data3/hdfs,/data4/hdfs</code>
</div>
<div class="line number66 index65 alt1">
<code class="sql plain">kafka_logdir: /data2/kafka,/data3/kafka,/data4/kafka</code>
</div>
<div class="line number67 index66 alt2">
<code class="sql plain">es_mem: 8</code>
</div>
<div class="line number68 index67 alt1">
<code class="sql plain">es_log_days: 7</code>
</div>
<div class="line number69 index68 alt2">
<code class="sql plain">es_base_path: /data/application/es-install/es</code>
</div>
<div class="line number70 index69 alt1">
<code class="sql plain">tdsql_secret_pass: k2jatuv5llbbmrske/k2ybqc</code>
</div>
<div class="line number71 index70 alt2">
<code class="sql plain">oc_secret_pass: lghvs0v5nvxcolqie/k9bb2i</code>
</div>
<div class="line number72 index71 alt1">
<code class="sql plain">clouddba_metadb_pass: h5wyg2xy</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_621054">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
<div class="line number21 index20 alt2">
21</div>
<div class="line number22 index21 alt1">
22</div>
<div class="line number23 index22 alt2">
23</div>
<div class="line number24 index23 alt1">
24</div>
<div class="line number25 index24 alt2">
25</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">#执行安装 part1_site.yml</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">sh encrypt.sh <</code><code class="sql comments">---------必须执行,更新密文密码</code>
</div>
<div class="line number3 index2 alt2">
<code class="sql plain">ansible-playbook -i tdsql_hosts part1_site.yml</code>
</div>
<div class="line number4 index3 alt1">
</div>
<div class="line number5 index4 alt2">
<code class="sql plain">执行了近20多分钟 ,执行完成要无failed=0</code>
</div>
<div class="line number6 index5 alt1">
<code class="sql plain">play recap ********************************************************************************************************************************************************</code>
</div>
<div class="line number7 index6 alt2">
<code class="sql plain">chitu1 : ok=20 changed=19 unreachable=0 failed=0</code>
</div>
<div class="line number8 index7 alt1">
<code class="sql plain">chitu2 : ok=20 changed=19 unreachable=0 failed=0</code>
</div>
<div class="line number9 index8 alt2">
<code class="sql plain">db1 : ok=13 changed=12 unreachable=0 failed=0</code>
</div>
<div class="line number10 index9 alt1">
<code class="sql plain">db2 : ok=13 changed=12 unreachable=0 failed=0</code>
</div>
<div class="line number11 index10 alt2">
<code class="sql plain">db3 : ok=13 changed=12 unreachable=0 failed=0</code>
</div>
<div class="line number12 index11 alt1">
<code class="sql plain">huyidb01 : ok=30 changed=19 unreachable=0 failed=0</code>
</div>
<div class="line number13 index12 alt2">
<code class="sql plain">huyidb02 : ok=27 changed=16 unreachable=0 failed=0</code>
</div>
<div class="line number14 index13 alt1">
<code class="sql plain">huyidb03 : ok=27 changed=16 unreachable=0 failed=0</code>
</div>
<div class="line number15 index14 alt2">
<code class="sql plain">huyidb04 : ok=27 changed=17 unreachable=0 failed=0</code>
</div>
<div class="line number16 index15 alt1">
<code class="sql plain">oss1 : ok=14 changed=11 unreachable=0 failed=0</code>
</div>
<div class="line number17 index16 alt2">
<code class="sql plain">oss2 : ok=14 changed=11 unreachable=0 failed=0</code>
</div>
<div class="line number18 index17 alt1">
<code class="sql plain">proxy1 : ok=13 changed=10 unreachable=0 failed=0</code>
</div>
<div class="line number19 index18 alt2">
<code class="sql plain">proxy2 : ok=13 changed=10 unreachable=0 failed=0</code>
</div>
<div class="line number20 index19 alt1">
<code class="sql plain">proxy3 : ok=13 changed=10 unreachable=0 failed=0</code>
</div>
<div class="line number21 index20 alt2">
<code class="sql plain">scheduler1 : ok=25 changed=23 unreachable=0 failed=0</code>
</div>
<div class="line number22 index21 alt1">
<code class="sql plain">scheduler2 : ok=22 changed=20 unreachable=0 failed=0</code>
</div>
<div class="line number23 index22 alt2">
<code class="sql plain">zk1 : ok=19 changed=17 unreachable=0 failed=0</code>
</div>
<div class="line number24 index23 alt1">
<code class="sql plain">zk2 : ok=19 changed=17 unreachable=0 failed=0</code>
</div>
<div class="line number25 index24 alt2">
<code class="sql plain">zk3 : ok=19 changed=17 unreachable=0 failed=0</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<blockquote>
<p>
#错误:<br>
task ************************************************************************************************************************************************************<br>
fatal: : failed! => {“changed”: false, “msg”: “ansibleundefinedvariable: “hostvars[‘zk1']” is undefined”}<br>
fatal: : failed! => {“changed”: false, “msg”: “ansibleundefinedvariable: “hostvars[‘zk1']” is undefined”}<br>
fatal: : failed! => {“changed”: false, “msg”: “ansibleundefinedvariable: “hostvars[‘zk1']” is undefined”}<br>
to retry, use: --limit @/soft/tdsql_full_install_ansible/part1_site.retry<br>
原因: tdsql_hosts 配置标签不规范 , 版本不同,标签有所不同. 具体的参考模板,只改ip)<br>
解决办法: tdsql_zk1 改为 zk1</p>
</blockquote>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_900182">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">#初始化chitu</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">http://10.85.10.52/tdsqlpcloud</code>
</div>
<div class="line number3 index2 alt2">
<code class="sql plain">注意这里的oss ip ,可能不是实际ip</code>
</div>
<div class="line number4 index3 alt1">
<code class="sql plain">可以查看cat /data/application/oss/conf/scheduler.xml</code>
</div>
<div class="line number5 index4 alt2">
<code class="sql plain">或 netstat 查看</code>
</div>
<div class="line number6 index5 alt1">
<code class="sql plain"># netstat -an | grep 8080</code>
</div>
<div class="line number7 index6 alt2">
<code class="sql plain">tcp 0 0 192.168.58.131:8080 0.0.0.0:* listen</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" height="558" src="https://zhuji.jb51.net/uploads/img/202305/22fb81b88f32d2d1e67ad51112956408.jpg" width="1428"></p>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_554549">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">注意这里的oss ip ,可能不是实际ip</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">可以查看cat /data/application/oss/conf/scheduler.xml</code>
</div>
<div class="line number3 index2 alt2">
<code class="sql plain">或 netstat 查看</code>
</div>
<div class="line number4 index3 alt1">
<code class="sql plain"># netstat -an | grep 8080</code>
</div>
<div class="line number5 index4 alt2">
<code class="sql plain">tcp 0 0 192.168.58.131:8080 0.0.0.0:* listen</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/e374728ef878cba973691949ce7f9b02.jpg"></p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/85c8a205f9e4315922d3952ac094c25b.jpg"></p>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_565585">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">机型查看:</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain"># dmidecode | grep “product </code><code class="sql keyword">name</code><code class="sql plain">”</code>
</div>
<div class="line number3 index2 alt2">
<code class="sql plain">product </code><code class="sql keyword">name</code><code class="sql plain">: vmware virtual platform</code>
</div>
<div class="line number4 index3 alt1">
<code class="sql plain">product </code><code class="sql keyword">name</code><code class="sql plain">: 440bx desktop reference platform</code>
</div>
<div class="line number5 index4 alt2">
</div>
<div class="line number6 index5 alt1">
<code class="sql plain">#db机型 这里填 440bx</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/e422a3ce2889b62321153d4b28207653.jpg"></p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/414da7c511ffaf47ee44588481768ffd.jpg"></p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/103d98357fb8cd5698089bb804de7489.jpg"></p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/25ce85e2130247cfbc250c9195ce2818.jpg"></p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/7dc8668cde4756935e38b7f1dc3fb67b.jpg"></p>
<p>
注意:不同db要在不同的idc<br>
同一个网关组的要在同一个idc中</p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/a5d27d7ad52f514798a0a141051f235a.jpg"></p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/a549308af2e6607aea452d7accadb172.jpg"></p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/565b60187022dcbe07ab53f0e22792cd.jpg"></p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/0324c37eea9c3e1aaa1213d43cf362eb.jpg"></p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/a1fedec65ae93920638e0b01e23cc828.jpg"></p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/1b4bf935ba50ec1660cb6849f8a25837.jpg"></p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/b86b2bfe4b549545aa1a16b9ccbe8740.jpg"></p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/a6a13e07bd4c841338e5f2a308ee6a3e.jpg"></p>
<p>
登录运营管理平台:帐号密码admin/123456</p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/ac6572ed8b3f44a44ac49e9f4c1249b0.jpg"></p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/db2061b013bbadeebfe2db7100dc2510.jpg"></p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/6862e1239d721d60cf3c9644c325bf1a.jpg"></p>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_65942">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">测试登录</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain"># mysql -utdsqlpcloud -h10.85.10.52 -p15001 -p</code><code class="sql string">'tdsqlpcloud'</code>
</div>
<div class="line number3 index2 alt2">
<code class="sql plain">welcome </code><code class="sql keyword">to</code> <code class="sql plain">the mariadb monitor. commands </code><code class="sql keyword">end</code> <code class="sql keyword">with</code> <code class="sql plain">; </code><code class="sql color1">or</code> <code class="sql plain">\g.</code>
</div>
<div class="line number4 index3 alt1">
<code class="sql plain">your mysql </code><code class="sql keyword">connection</code> <code class="sql plain">id </code><code class="sql keyword">is</code> <code class="sql plain">3171</code>
</div>
<div class="line number5 index4 alt2">
<code class="sql plain">server version: 5.7.17-11-v2.0r540d002-20191226-1152-log source distribution</code>
</div>
<div class="line number6 index5 alt1">
<code class="sql plain">copyright © 2000, 2018, oracle, mariadb corporation ab </code><code class="sql color1">and</code> <code class="sql plain">others.</code>
</div>
<div class="line number7 index6 alt2">
<code class="sql plain">type ‘help;</code><code class="sql string">' or ‘\h'</code> <code class="sql keyword">for</code> <code class="sql plain">help. type ‘\c' </code><code class="sql keyword">to</code> <code class="sql plain">clear the </code><code class="sql keyword">current</code> <code class="sql plain">input statement.</code>
</div>
<div class="line number8 index7 alt1">
<code class="sql plain">mysql [(none)]></code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_623483">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
<div class="line number21 index20 alt2">
21</div>
<div class="line number22 index21 alt1">
22</div>
<div class="line number23 index22 alt2">
23</div>
<div class="line number24 index23 alt1">
24</div>
<div class="line number25 index24 alt2">
25</div>
<div class="line number26 index25 alt1">
26</div>
<div class="line number27 index26 alt2">
27</div>
<div class="line number28 index27 alt1">
28</div>
<div class="line number29 index28 alt2">
29</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">在管理库修改</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">vi /soft/tdsql_full_install_ansible/group_vars/</code><code class="sql color1">all</code>
</div>
<div class="line number3 index2 alt2">
<code class="sql plain">metadb_ip: 10.85.10.52</code>
</div>
<div class="line number4 index3 alt1">
<code class="sql plain">metadb_port: 15001</code>
</div>
<div class="line number5 index4 alt2">
<code class="sql plain">metadb_ip_bak: 10.85.10.53</code>
</div>
<div class="line number6 index5 alt1">
<code class="sql plain">metadb_port_bak: 15001</code>
</div>
<div class="line number7 index6 alt2">
<code class="sql plain">metadb_user: tdsqlpcloud</code>
</div>
<div class="line number8 index7 alt1">
<code class="sql plain">metadb_password: tdsqlpcloud</code>
</div>
<div class="line number9 index8 alt2">
</div>
<div class="line number10 index9 alt1">
<code class="sql plain">执行安装 part2_site.yml</code>
</div>
<div class="line number11 index10 alt2">
<code class="sql plain">sh encrypt.sh <</code><code class="sql comments">---------必须执行,更新密文密码</code>
</div>
<div class="line number12 index11 alt1">
<code class="sql plain">ansible-playbook -i tdsql_hosts part2_site.yml</code>
</div>
<div class="line number13 index12 alt2">
<code class="sql plain">注意:failed=0</code>
</div>
<div class="line number14 index13 alt1">
<code class="sql plain">play recap ********************************************************************************************************************************************************</code>
</div>
<div class="line number15 index14 alt2">
<code class="sql plain">chitu1 : ok=19 changed=16 unreachable=0 failed=0</code>
</div>
<div class="line number16 index15 alt1">
<code class="sql plain">chitu2 : ok=5 changed=4 unreachable=0 failed=0</code>
</div>
<div class="line number17 index16 alt2">
<code class="sql plain">huyidb01 : ok=18 changed=11 unreachable=0 failed=0</code>
</div>
<div class="line number18 index17 alt1">
<code class="sql plain">huyidb02 : ok=18 changed=11 unreachable=0 failed=0</code>
</div>
<div class="line number19 index18 alt2">
<code class="sql plain">huyidb03 : ok=18 changed=11 unreachable=0 failed=0</code>
</div>
<div class="line number20 index19 alt1">
<code class="sql plain">huyidb04 : ok=18 changed=11 unreachable=0 failed=0</code>
</div>
<div class="line number21 index20 alt2">
<code class="sql plain">monitor1 : ok=12 changed=12 unreachable=0 failed=0</code>
</div>
<div class="line number22 index21 alt1">
<code class="sql plain">oss1 : ok=14 changed=9 unreachable=0 failed=0</code>
</div>
<div class="line number23 index22 alt2">
<code class="sql plain">oss2 : ok=14 changed=9 unreachable=0 failed=0</code>
</div>
<div class="line number24 index23 alt1">
<code class="sql plain">scheduler1 : ok=31 changed=26 unreachable=0 failed=0</code>
</div>
<div class="line number25 index24 alt2">
<code class="sql plain">scheduler2 : ok=22 changed=18 unreachable=0 failed=0</code>
</div>
<div class="line number26 index25 alt1">
<code class="sql plain">#在任意一台 scheduler 机器上执行下面的命令:</code>
</div>
<div class="line number27 index26 alt2">
<code class="sql plain">cd /data/application/scheduler/bin</code>
</div>
<div class="line number28 index27 alt1">
<code class="sql plain">./agent_config </code><code class="sql comments">--mode modify --option=“ocagent_port” --value=“8966”</code>
</div>
<div class="line number29 index28 alt2">
<code class="sql plain">./agent_config </code><code class="sql comments">--mode modify --option=“hadoop_dir” --value="/data/home/tdsql/hadoop-3.2.1/bin"</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_530656">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">#安装备用赤兔(如果有另一个未初始化的 chitu)</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">将已初始化的 chitu 机器上拷贝 2 个文件到未初始化的 chitu 机器上,并删除未初始化 chitu 机器上的 crontab,如下:</code>
</div>
<div class="line number3 index2 alt2">
<code class="sql plain">10.85.10.52 已初始化 chitu</code>
</div>
<div class="line number4 index3 alt1">
<code class="sql plain">10.85.10.53 未初始化 chitu</code>
</div>
<div class="line number5 index4 alt2">
<code class="sql plain">(1)在 52 机器上,拷贝文件到 53 机器上</code>
</div>
<div class="line number6 index5 alt1">
<code class="sql plain">scp -p /data/website/tdsqlpcloud/www/config/</code><code class="sql keyword">database</code><code class="sql plain">.php 10.85.10.53:/data/website/tdsqlpcloud/www/config/</code>
</div>
<div class="line number7 index6 alt2">
<code class="sql plain">scp -p /data/website/tdsqlpcloud/www/config/install.lock 10.85.10.53:/data/website/tdsqlpcloud/www/config/</code>
</div>
<div class="line number8 index7 alt1">
</div>
<div class="line number9 index8 alt2">
<code class="sql plain">(2)删除 53 机器上 nginx 用户的 crontab</code>
</div>
<div class="line number10 index9 alt1">
<code class="sql plain">cp -a /var/spool/cron/nginx /data/tools/nginx_cron_bak</code>
</div>
<div class="line number11 index10 alt2">
<code class="sql plain">rm -f /var/spool/cron/nginx</code>
</div>
<div class="line number12 index11 alt1">
<code class="sql plain">(3)测试,登录 53 的 chitu</code>
</div>
<div class="line number13 index12 alt2">
<code class="sql plain">http://10.85.10.53/tdsqlpcloud</code>
</div>
<div class="line number14 index13 alt1">
<code class="sql plain">至此tdsql的基本模块已安装完成。</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
安装其它模块(可选)<br>
安装以下模块之前要确保tdsql核心模块安装无误后再进行。<br>
如果需要使用hdfs异地冷备存储binlog和镜像文件,用于数据回档恢复,安装hdfs。<br>
如果需要使用tdsql默认提供的接入层lvs,安装lvs。<br>
如果需要使用多源同步功能,安装kafka和consumer。<br>
如果需要使用网关日志分析及sql审计功能,安装es。</p>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_53074">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
<div class="line number21 index20 alt2">
21</div>
<div class="line number22 index21 alt1">
22</div>
<div class="line number23 index22 alt2">
23</div>
<div class="line number24 index23 alt1">
24</div>
<div class="line number25 index24 alt2">
25</div>
<div class="line number26 index25 alt1">
26</div>
<div class="line number27 index26 alt2">
27</div>
<div class="line number28 index27 alt1">
28</div>
<div class="line number29 index28 alt2">
29</div>
<div class="line number30 index29 alt1">
30</div>
<div class="line number31 index30 alt2">
31</div>
<div class="line number32 index31 alt1">
32</div>
<div class="line number33 index32 alt2">
33</div>
<div class="line number34 index33 alt1">
34</div>
<div class="line number35 index34 alt2">
35</div>
<div class="line number36 index35 alt1">
36</div>
<div class="line number37 index36 alt2">
37</div>
<div class="line number38 index37 alt1">
38</div>
<div class="line number39 index38 alt2">
39</div>
<div class="line number40 index39 alt1">
40</div>
<div class="line number41 index40 alt2">
41</div>
<div class="line number42 index41 alt1">
42</div>
<div class="line number43 index42 alt2">
43</div>
<div class="line number44 index43 alt1">
44</div>
<div class="line number45 index44 alt2">
45</div>
<div class="line number46 index45 alt1">
46</div>
<div class="line number47 index46 alt2">
47</div>
<div class="line number48 index47 alt1">
48</div>
<div class="line number49 index48 alt2">
49</div>
<div class="line number50 index49 alt1">
50</div>
<div class="line number51 index50 alt2">
51</div>
<div class="line number52 index51 alt1">
52</div>
<div class="line number53 index52 alt2">
53</div>
<div class="line number54 index53 alt1">
54</div>
<div class="line number55 index54 alt2">
55</div>
<div class="line number56 index55 alt1">
56</div>
<div class="line number57 index56 alt2">
57</div>
<div class="line number58 index57 alt1">
58</div>
<div class="line number59 index58 alt2">
59</div>
<div class="line number60 index59 alt1">
60</div>
<div class="line number61 index60 alt2">
61</div>
<div class="line number62 index61 alt1">
62</div>
<div class="line number63 index62 alt2">
63</div>
<div class="line number64 index63 alt1">
64</div>
<div class="line number65 index64 alt2">
65</div>
<div class="line number66 index65 alt1">
66</div>
<div class="line number67 index66 alt2">
67</div>
<div class="line number68 index67 alt1">
68</div>
<div class="line number69 index68 alt2">
69</div>
<div class="line number70 index69 alt1">
70</div>
<div class="line number71 index70 alt2">
71</div>
<div class="line number72 index71 alt1">
72</div>
<div class="line number73 index72 alt2">
73</div>
<div class="line number74 index73 alt1">
74</div>
<div class="line number75 index74 alt2">
75</div>
<div class="line number76 index75 alt1">
76</div>
<div class="line number77 index76 alt2">
77</div>
<div class="line number78 index77 alt1">
78</div>
<div class="line number79 index78 alt2">
79</div>
<div class="line number80 index79 alt1">
80</div>
<div class="line number81 index80 alt2">
81</div>
<div class="line number82 index81 alt1">
82</div>
<div class="line number83 index82 alt2">
83</div>
<div class="line number84 index83 alt1">
84</div>
<div class="line number85 index84 alt2">
85</div>
<div class="line number86 index85 alt1">
86</div>
<div class="line number87 index86 alt2">
87</div>
<div class="line number88 index87 alt1">
88</div>
<div class="line number89 index88 alt2">
89</div>
<div class="line number90 index89 alt1">
90</div>
<div class="line number91 index90 alt2">
91</div>
<div class="line number92 index91 alt1">
92</div>
<div class="line number93 index92 alt2">
93</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">#安装 hdfs</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">(1)准备 hdfs 的数据目录的路径</code>
</div>
<div class="line number3 index2 alt2">
<code class="sql plain">首先用 lsblk 查看磁盘信息</code>
</div>
<div class="line number4 index3 alt1">
<code class="sql plain">格式化为 xfs 文件系统</code>
</div>
<div class="line number5 index4 alt2">
<code class="sql plain">mkfs.xfs -f /dev/sdg</code>
</div>
<div class="line number6 index5 alt1">
<code class="sql plain">创建目录</code>
</div>
<div class="line number7 index6 alt2">
<code class="sql plain">mkdir -p /mysql/backup</code>
</div>
<div class="line number8 index7 alt1">
<code class="sql plain">修改/etc/fstab 文件,设置自动挂载到指定路径</code>
</div>
<div class="line number9 index8 alt2">
<code class="sql plain">/dev/sdg /mysql/backup xfs defaults,noatime 0 0</code>
</div>
<div class="line number10 index9 alt1">
<code class="sql plain">挂载磁盘</code>
</div>
<div class="line number11 index10 alt2">
<code class="sql plain">mount -a</code>
</div>
<div class="line number12 index11 alt1">
<code class="sql plain">(2)设置主机名</code>
</div>
<div class="line number13 index12 alt2">
<code class="sql plain">在 hdfs 机器上设置主机名,hdfs 集群中主机名不能重复,不能有下划线、中划线等特殊字符,</code>
</div>
<div class="line number14 index13 alt1">
<code class="sql plain">hostnamectl </code><code class="sql keyword">set</code><code class="sql plain">-hostname huyidb04</code>
</div>
<div class="line number15 index14 alt2">
<code class="sql plain">(3)检查 tdsql_hosts 文件</code>
</div>
<div class="line number16 index15 alt1">
<code class="sql plain">vim tdsql_hosts</code>
</div>
<div class="line number17 index16 alt2">
<code class="sql plain"> <—填入 hdfs 机器地址,hdfs 的数量只能是 1 或 3</code>
</div>
<div class="line number18 index17 alt1">
<code class="sql plain">hdfs1 ansible_ssh_host=10.85.10.54</code>
</div>
<div class="line number19 index18 alt2">
<code class="sql plain">(4)修改 hdfs 变量</code>
</div>
<div class="line number20 index19 alt1">
<code class="sql plain">修改 group_vars/</code><code class="sql color1">all</code> <code class="sql plain">中下面的相关变量</code>
</div>
<div class="line number21 index20 alt2">
<code class="sql plain">vim group_vars/</code><code class="sql color1">all</code>
</div>
<div class="line number22 index21 alt1">
<code class="sql plain">—</code>
</div>
<div class="line number23 index22 alt2">
<code class="sql plain">ssh_port: 36000 <</code><code class="sql comments">----实际的 ssh 通信端口</code>
</div>
<div class="line number24 index23 alt1">
<code class="sql plain">hdfs_datadir: /mysql/backup <</code><code class="sql comments">----多个迪特 一个磁盘一个路径,逗号分隔</code>
</div>
<div class="line number25 index24 alt2">
<code class="sql plain">注意这些数据文件路径的权限要是 tdsql,如下:</code>
</div>
<div class="line number26 index25 alt1">
<code class="sql plain">chown -r tdsql:users /mysql/backup</code>
</div>
<div class="line number27 index26 alt2">
<code class="sql plain">(5)#安装 hdfs 单点 (我的是单点hdfs)</code>
</div>
<div class="line number28 index27 alt1">
<code class="sql plain">执行安装</code>
</div>
<div class="line number29 index28 alt2">
<code class="sql plain">ansible-playbook -i tdsql_hosts hdfs_single.yml</code>
</div>
<div class="line number30 index29 alt1">
<code class="sql plain">su - tdsql</code>
</div>
<div class="line number31 index30 alt2">
<code class="sql plain">hdfs namenode -format <—格式化 namenode</code>
</div>
<div class="line number32 index31 alt1">
<code class="sql plain">启动 namenode 和 datanode :</code>
</div>
<div class="line number33 index32 alt2">
<code class="sql plain">hdfs </code><code class="sql comments">--daemon start namenode</code>
</div>
<div class="line number34 index33 alt1">
<code class="sql plain">hdfs </code><code class="sql comments">--daemon start datanode</code>
</div>
<div class="line number35 index34 alt2">
<code class="sql plain">附:用 tdsql 用户关闭 hdfs 进程 :</code>
</div>
<div class="line number36 index35 alt1">
<code class="sql plain">hdfs </code><code class="sql comments">--daemon stop datanode</code>
</div>
<div class="line number37 index36 alt2">
<code class="sql plain">hdfs </code><code class="sql comments">--daemon stop namenode</code>
</div>
<div class="line number38 index37 alt1">
</div>
<div class="line number39 index38 alt2">
<code class="sql plain">(6)#安装 hdfs 高可用架构 (如果是高可用 用下面的方式安装)</code>
</div>
<div class="line number40 index39 alt1">
<code class="sql plain">3 个节点,并且 zk 集群不能是单点。</code>
</div>
<div class="line number41 index40 alt2">
<code class="sql plain">执行安装 hdfs</code>
</div>
<div class="line number42 index41 alt1">
<code class="sql plain">ansible-playbook -i tdsql_hosts hdfs.yml</code>
</div>
<div class="line number43 index42 alt2">
<code class="sql plain">su - tdsql</code>
</div>
<div class="line number44 index43 alt1">
<code class="sql plain">用 tdsql 用户初始化 hdfs 集群,初始化顺序如下,初始化的工作只用做一次,不要重复初始化</code>
</div>
<div class="line number45 index44 alt2">
<code class="sql plain">用 tdsql 用户在 hdfs1 机器,格式化 zk</code>
</div>
<div class="line number46 index45 alt1">
<code class="sql plain">hdfs zkfc -formatzk</code>
</div>
<div class="line number47 index46 alt2">
<code class="sql plain">用 tdsql 用户在所有机器,启动 journalnode</code>
</div>
<div class="line number48 index47 alt1">
<code class="sql plain">hdfs </code><code class="sql comments">--daemon start journalnode</code>
</div>
<div class="line number49 index48 alt2">
<code class="sql plain">用 tdsql 用户在 hdfs1 机器,格式化并启动 namenode</code>
</div>
<div class="line number50 index49 alt1">
<code class="sql plain">hdfs namenode -format</code>
</div>
<div class="line number51 index50 alt2">
<code class="sql plain">hdfs </code><code class="sql comments">--daemon start namenode</code>
</div>
<div class="line number52 index51 alt1">
<code class="sql plain">用 tdsql 用户在 hdfs2 机器,格式化 namenode</code>
</div>
<div class="line number53 index52 alt2">
<code class="sql plain">hdfs namenode -bootstrapstandby</code>
</div>
<div class="line number54 index53 alt1">
<code class="sql plain">用 tdsql 用户启动 hdfs 集群,启动顺序如下,已经启动的进程就不用重复再启动了,查看启动的进程”jps”</code>
</div>
<div class="line number55 index54 alt2">
<code class="sql plain">在所有 hdfs 机器上启动 journalnode</code>
</div>
<div class="line number56 index55 alt1">
<code class="sql plain">hdfs </code><code class="sql comments">--daemon start journalnode</code>
</div>
<div class="line number57 index56 alt2">
<code class="sql plain">在 hdfs1 和 hdfs2 上启动 namenode</code>
</div>
<div class="line number58 index57 alt1">
<code class="sql plain">hdfs </code><code class="sql comments">--daemon start namenode</code>
</div>
<div class="line number59 index58 alt2">
<code class="sql plain">在 hdfs1 和 hdfs2 上启动 zkfc</code>
</div>
<div class="line number60 index59 alt1">
<code class="sql plain">hdfs </code><code class="sql comments">--daemon start zkfc</code>
</div>
<div class="line number61 index60 alt2">
<code class="sql plain">在所有 hdfs 机器上启动 datanode</code>
</div>
<div class="line number62 index61 alt1">
<code class="sql plain">hdfs </code><code class="sql comments">--daemon start datanode</code>
</div>
<div class="line number63 index62 alt2">
<code class="sql plain">附:用 tdsql 用户关闭 hdfs 集群,关闭顺序如下</code>
</div>
<div class="line number64 index63 alt1">
<code class="sql plain">在所有 hdfs 机器上关闭 datanode</code>
</div>
<div class="line number65 index64 alt2">
<code class="sql plain">hdfs </code><code class="sql comments">--daemon stop datanode</code>
</div>
<div class="line number66 index65 alt1">
<code class="sql plain">在 hdfs1 和 hdfs2 上关闭 zkfc</code>
</div>
<div class="line number67 index66 alt2">
<code class="sql plain">hdfs </code><code class="sql comments">--daemon stop zkfc</code>
</div>
<div class="line number68 index67 alt1">
<code class="sql plain">在 hdfs1 和 hdfs2 上关闭 namenode</code>
</div>
<div class="line number69 index68 alt2">
<code class="sql plain">hdfs </code><code class="sql comments">--daemon stop namenode</code>
</div>
<div class="line number70 index69 alt1">
<code class="sql plain">在所有 hdfs 机器上关闭 journalnode</code>
</div>
<div class="line number71 index70 alt2">
<code class="sql plain">hdfs </code><code class="sql comments">--daemon stop journalnode</code>
</div>
<div class="line number72 index71 alt1">
<code class="sql plain">(7)在 hdfs 集群下查看/tdsqlbackup 路径</code>
</div>
<div class="line number73 index72 alt2">
<code class="sql plain">用 tdsql 用户执行以下命令</code>
</div>
<div class="line number74 index73 alt1">
<code class="sql plain">#查看/tdsqlbackup 目录是否已经被自动创建,权限是否如下</code>
</div>
<div class="line number75 index74 alt2">
<code class="sql plain">hadoop fs -ls /</code>
</div>
<div class="line number76 index75 alt1">
<code class="sql plain">drwxr-xr-x - tdsql supergroup 0 2019-01-02 17:52 /tdsqlbackup</code>
</div>
<div class="line number77 index76 alt2">
<code class="sql plain">如果目录不在或者权限不对,用下面命令修改:</code>
</div>
<div class="line number78 index77 alt1">
<code class="sql plain">hadoop fs -mkdir /tdsqlbackup</code>
</div>
<div class="line number79 index78 alt2">
<code class="sql plain">hadoop fs -chown tdsql.supergroup /tdsqlbackup</code>
</div>
<div class="line number80 index79 alt1">
<code class="sql plain">(8)管理 hdfs 集群</code>
</div>
<div class="line number81 index80 alt2">
<code class="sql plain">用 tdsql 用户执行以下命令</code>
</div>
<div class="line number82 index81 alt1">
<code class="sql plain">查看所有 namenode 节点状态,及主备情况(只适用于高可用 3 节点架构)</code>
</div>
<div class="line number83 index82 alt2">
<code class="sql plain">hdfs haadmin -getallservicestate</code>
</div>
<div class="line number84 index83 alt1">
<code class="sql plain">查看所有 datanode 节点的状态,及上报的容量情况</code>
</div>
<div class="line number85 index84 alt2">
<code class="sql plain">hdfs dfsadmin -report</code>
</div>
<div class="line number86 index85 alt1">
<code class="sql plain">(9)注意</code>
</div>
<div class="line number87 index86 alt2">
<code class="sql plain">用 tdsql 用户执行 jps 命令,可以看到 hdfs 的进程名称(只适用于高可用 3 节点架构)</code>
</div>
<div class="line number88 index87 alt1">
<code class="sql plain">hdfs1 和 hdfs2 机器上应该看到 namenode、journalnode、datanode、dfszkfailovercontroller</code>
</div>
<div class="line number89 index88 alt2">
<code class="sql plain">hdfs3 机器上应该看到 datanode、journalnode</code>
</div>
<div class="line number90 index89 alt1">
<code class="sql plain">(10)配置 hdfs 监控</code>
</div>
<div class="line number91 index90 alt2">
<code class="sql plain">如果有 hdfs,但是没有配置 hdfs 监控,到</code><code class="sql string">"“集群管理->集群配置”中设置“hdfs 服务列表”"</code><code class="sql plain">,</code>
</div>
<div class="line number92 index91 alt1">
<code class="sql plain">注意:如上图所示填写 namenode 节点(一般 2 个)的 50070 端口</code>
</div>
<div class="line number93 index92 alt2">
<code class="sql plain">生产环境不能用单节点 hdfs,单节点架构的 hdfs 的端口号是 9870</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/e56e1bff01d6e6885847ba94aacb9fef.jpg"></p>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_183536">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">#安装 lvs</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">lvs 机器建议单独部署,不建议和别人复用(最多只能和 zk 复用)。</code>
</div>
<div class="line number3 index2 alt2">
<code class="sql plain">(1)检查 tdsql_hosts 文件</code>
</div>
<div class="line number4 index3 alt1">
<code class="sql plain">vim tdsql_hosts</code>
</div>
<div class="line number5 index4 alt2">
<code class="sql plain"> <—填入 lvs 地址,lvs 的数量固定为 2</code>
</div>
<div class="line number6 index5 alt1">
<code class="sql plain">lvs1 ansible_ssh_host=10.85.10.52</code>
</div>
<div class="line number7 index6 alt2">
<code class="sql plain">lvs2 ansible_ssh_host=10.85.10.53</code>
</div>
<div class="line number8 index7 alt1">
<code class="sql plain">(2)安装 lvs</code>
</div>
<div class="line number9 index8 alt2">
<code class="sql plain">ansible-playbook -i tdsql_hosts lvs.yml</code>
</div>
<div class="line number10 index9 alt1">
<code class="sql plain">(3)赤兔前台操作 lvs 接入层管理 -> lvs 设备资源管理 -> 上报 lvs 设备资源</code>
</div>
<div class="line number11 index10 alt2">
<code class="sql plain">上报 lvs 机器信息(2 台 lvs 机器信息都要上报)</code>
</div>
<div class="line number12 index11 alt1">
<code class="sql plain">设备 ip:填入 lvs 机器的通信 ip 地址。</code>
</div>
<div class="line number13 index12 alt2">
<code class="sql plain">网卡名字:通信网卡设备名。</code>
</div>
<div class="line number14 index13 alt1">
<code class="sql plain">子网掩码:填入实际的子网掩码。</code>
</div>
<div class="line number15 index14 alt2">
<code class="sql plain">idc:lvs 机器需要划分到同一个 idc 中,比如这里的“idc_sz_ydgl_0401_000001”。</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/f9eebf9640ac226d85bd0cd0f211781b.jpg"></p>
<p>
创建 vip(不能选取部署的机器 ip 作为 vip,需要另选之外一个)<br>
vip:规划一个 vip 的地址,vip 的地址要和 lvs 机器的通信 ip 地址在同一个网段内。<br>
设备 ip 列表:填入 lvs 机器的通信 ip 地址,一行一个。</p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/2e3d8dba784bd11b7a7f34ed0b98ea56.jpg"></p>
<p>
创建 vipgroup<br>
vipgroup 名:新建一个 vipgroup,取一个有意义的名字。</p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/0ee6fdb4f79b148775fd0e2139ace6d7.jpg"></p>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/988a0fce215349732f9ae09428944d90.jpg"></p>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_44564">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
<div class="line number21 index20 alt2">
21</div>
<div class="line number22 index21 alt1">
22</div>
<div class="line number23 index22 alt2">
23</div>
<div class="line number24 index23 alt1">
24</div>
<div class="line number25 index24 alt2">
25</div>
<div class="line number26 index25 alt1">
26</div>
<div class="line number27 index26 alt2">
27</div>
<div class="line number28 index27 alt1">
28</div>
<div class="line number29 index28 alt2">
29</div>
<div class="line number30 index29 alt1">
30</div>
<div class="line number31 index30 alt2">
31</div>
<div class="line number32 index31 alt1">
32</div>
<div class="line number33 index32 alt2">
33</div>
<div class="line number34 index33 alt1">
34</div>
<div class="line number35 index34 alt2">
35</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">#安装 kafka</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">(1)检查 tdsql_hosts 文件</code>
</div>
<div class="line number3 index2 alt2">
<code class="sql plain">vim tdsql_hosts</code>
</div>
<div class="line number4 index3 alt1">
<code class="sql plain"> <</code><code class="sql comments">----填入 kafka 集群的地址,kafka 的数量固定为 3</code>
</div>
<div class="line number5 index4 alt2">
<code class="sql plain">kafka1 ansible_ssh_host=10.85.10.51 <</code><code class="sql comments">----kafka 机器的 java 虚拟机占用 3 个 g 以上内存</code>
</div>
<div class="line number6 index5 alt1">
<code class="sql plain">kafka2 ansible_ssh_host=10.85.10.52</code>
</div>
<div class="line number7 index6 alt2">
<code class="sql plain">kafka3 ansible_ssh_host=10.85.10.53</code>
</div>
<div class="line number8 index7 alt1">
<code class="sql plain">(2)修改多源同步变量</code>
</div>
<div class="line number9 index8 alt2">
<code class="sql plain">修改 group_vars/</code><code class="sql color1">all</code> <code class="sql plain">中下面的相关变量</code>
</div>
<div class="line number10 index9 alt1">
<code class="sql plain">vim group_vars/</code><code class="sql color1">all</code>
</div>
<div class="line number11 index10 alt2">
<code class="sql plain">kafka_logdir: /mysql/log/kafka #日志要创建kafka目录</code>
</div>
<div class="line number12 index11 alt1">
<code class="sql plain">(3)执行安装多源同步</code>
</div>
<div class="line number13 index12 alt2">
<code class="sql plain">ansible-playbook -i tdsql_hosts kafka.yml</code>
</div>
<div class="line number14 index13 alt1">
<code class="sql plain">(4)验证是否安装成功</code>
</div>
<div class="line number15 index14 alt2">
<code class="sql plain">cd /data/application/kafka_2.12-2.3.1/logs</code>
</div>
<div class="line number16 index15 alt1">
<code class="sql plain">vim server.log <</code><code class="sql comments">----查看 kafka 启动信息</code>
</div>
<div class="line number17 index16 alt2">
</div>
<div class="line number18 index17 alt1">
<code class="sql plain">#安装 consumer</code>
</div>
<div class="line number19 index18 alt2">
<code class="sql plain">(1) 查看 tdsql_hosts 文件</code>
</div>
<div class="line number20 index19 alt1">
<code class="sql plain"> <—填入消费者的地址,数量固定为 1</code>
</div>
<div class="line number21 index20 alt2">
<code class="sql plain">consumer1 ansible_ssh_host=10.240.139.35</code>
</div>
<div class="line number22 index21 alt1">
<code class="sql plain">(2)执行安装 consumer</code>
</div>
<div class="line number23 index22 alt2">
<code class="sql plain">ansible-playbook -i tdsql_hosts consumer.yml</code>
</div>
<div class="line number24 index23 alt1">
<code class="sql plain">(3)启动消费者服务</code>
</div>
<div class="line number25 index24 alt2">
<code class="sql plain">在 consumer 的机器上,使用下面命令启动消费者服务</code>
</div>
<div class="line number26 index25 alt1">
<code class="sql plain">cd /data/application/consumer/bin/</code>
</div>
<div class="line number27 index26 alt2">
<code class="sql plain">./binlogconsumermgn </code><code class="sql comments">--zklist 10.240.139.35:2181 --zkrootpath /noshard1 --kafkazklist 10.240.139.35:2181 --kafkazkrootpath /kafka --dev eth1</code>
</div>
<div class="line number28 index27 alt1">
<code class="sql plain">参数说明:</code>
</div>
<div class="line number29 index28 alt2">
<code class="sql plain">–zklist zk 的 ip:port,可以写多个 zk ip:port,多个之间用英文逗号分隔</code>
</div>
<div class="line number30 index29 alt1">
<code class="sql plain">–zkrootpath 注意整理 zk 根节点与部署的时候 group_vars/</code><code class="sql color1">all</code> <code class="sql plain">下的” zk_rootdir”一致</code>
</div>
<div class="line number31 index30 alt2">
<code class="sql plain">–kafkazklist kafka 所在 zk,通常与–zklist 一样</code>
</div>
<div class="line number32 index31 alt1">
<code class="sql plain">–kafkazkrootpath kafka 在 zk 上的根节点,固定是/kafka</code>
</div>
<div class="line number33 index32 alt2">
<code class="sql plain">–dev consumer 的网卡名称</code>
</div>
<div class="line number34 index33 alt1">
<code class="sql plain">例如:</code>
</div>
<div class="line number35 index34 alt2">
<code class="sql plain">./binlogconsumermgn </code><code class="sql comments">--zklist 10.85.10.51:2181,10.85.10.52:2181,10.85.10.53:2181 --zkrootpath /tdsqlzk --kafkazklist 10.85.10.51:2181,10.85.10.52:2181,10.85.10.53:2181 --kafkazkrootpath /kafka --dev ens38</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_452026">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
<div class="line number21 index20 alt2">
21</div>
<div class="line number22 index21 alt1">
22</div>
<div class="line number23 index22 alt2">
23</div>
<div class="line number24 index23 alt1">
24</div>
<div class="line number25 index24 alt2">
25</div>
<div class="line number26 index25 alt1">
26</div>
<div class="line number27 index26 alt2">
27</div>
<div class="line number28 index27 alt1">
28</div>
<div class="line number29 index28 alt2">
29</div>
<div class="line number30 index29 alt1">
30</div>
<div class="line number31 index30 alt2">
31</div>
<div class="line number32 index31 alt1">
32</div>
<div class="line number33 index32 alt2">
33</div>
<div class="line number34 index33 alt1">
34</div>
<div class="line number35 index34 alt2">
35</div>
<div class="line number36 index35 alt1">
36</div>
<div class="line number37 index36 alt2">
37</div>
<div class="line number38 index37 alt1">
38</div>
<div class="line number39 index38 alt2">
39</div>
<div class="line number40 index39 alt1">
40</div>
<div class="line number41 index40 alt2">
41</div>
<div class="line number42 index41 alt1">
42</div>
<div class="line number43 index42 alt2">
43</div>
<div class="line number44 index43 alt1">
44</div>
<div class="line number45 index44 alt2">
45</div>
<div class="line number46 index45 alt1">
46</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">#安装 es</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">(1) 查看 tdsql_hosts 文件(不能与 chitu 同一台机器)</code>
</div>
<div class="line number3 index2 alt2">
<code class="sql plain"> <—填入 es 的地址,数量固定为 1</code>
</div>
<div class="line number4 index3 alt1">
<code class="sql plain">es1 ansible_ssh_host=10.85.10.54</code>
</div>
<div class="line number5 index4 alt2">
<code class="sql plain">修改变量文件 vim group_vars/</code><code class="sql color1">all</code>
</div>
<div class="line number6 index5 alt1">
<code class="sql plain">es_mem: 8 <</code><code class="sql comments">-----内存占用,如果这里写 8 则至少占用 8*2=16g 内存</code>
</div>
<div class="line number7 index6 alt2">
<code class="sql plain">es_log_days: 7 <</code><code class="sql comments">-----日志保留天数</code>
</div>
<div class="line number8 index7 alt1">
<code class="sql plain">es_base_path: /data/application/es-install/es <</code><code class="sql comments">-----es 数据存放路径</code>
</div>
<div class="line number9 index8 alt2">
<code class="sql plain">改为</code>
</div>
<div class="line number10 index9 alt1">
<code class="sql plain">es_mem: 2</code>
</div>
<div class="line number11 index10 alt2">
<code class="sql plain">es_log_days: 7</code>
</div>
<div class="line number12 index11 alt1">
<code class="sql plain">es_base_path: /mysql/data/es-install/es</code>
</div>
<div class="line number13 index12 alt2">
<code class="sql plain">(2)执行安装 es</code>
</div>
<div class="line number14 index13 alt1">
<code class="sql plain">ansible-playbook -i tdsql_hosts es_single.yml</code>
</div>
<div class="line number15 index14 alt2">
<code class="sql plain">(3)启停命令(在 es 机器上操作):</code>
</div>
<div class="line number16 index15 alt1">
<code class="sql plain"># stop</code>
</div>
<div class="line number17 index16 alt2">
<code class="sql plain">ps -ef |grep elasticsearch | grep -v ‘grep</code><code class="sql string">'| awk ‘{print $2}'</code> <code class="sql plain">| xargs kill -9</code>
</div>
<div class="line number18 index17 alt1">
<code class="sql plain">ps -ef |grep logstash | grep -v ‘grep</code><code class="sql string">'| awk ‘{print $2}'</code> <code class="sql plain">| xargs kill -9</code>
</div>
<div class="line number19 index18 alt2">
<code class="sql plain">ps -ef |grep es-cleaner | grep -v ‘grep</code><code class="sql string">'| awk ‘{print $2}'</code> <code class="sql plain">| xargs kill -9</code>
</div>
<div class="line number20 index19 alt1">
<code class="sql plain">ps -ef |grep ‘node/bin/node</code><code class="sql string">' | grep -v ‘grep'</code><code class="sql plain">| awk ‘{print $2}</code><code class="sql string">' | xargs kill -9</code>
</div>
<div class="line number21 index20 alt2">
<code class="sql string"># start</code>
</div>
<div class="line number22 index21 alt1">
<code class="sql string">tdsql 用户启动:</code>
</div>
<div class="line number23 index22 alt2">
<code class="sql string">cd /data/application/es-install/es/master/tools</code>
</div>
<div class="line number24 index23 alt1">
<code class="sql string">./start-elasticsearch.sh</code>
</div>
<div class="line number25 index24 alt2">
<code class="sql string">cd /data/application/es-install/es/data/tools</code>
</div>
<div class="line number26 index25 alt1">
<code class="sql string">./start-elasticsearch.sh</code>
</div>
<div class="line number27 index26 alt2">
<code class="sql string">root 用户启动:</code>
</div>
<div class="line number28 index27 alt1">
<code class="sql string">cd /data/application/es-install/logstash/tools</code>
</div>
<div class="line number29 index28 alt2">
<code class="sql string">./start-logstash.sh</code>
</div>
<div class="line number30 index29 alt1">
<code class="sql string">cd /data/application/es-install/es-cleaner</code>
</div>
<div class="line number31 index30 alt2">
<code class="sql string">./start-es-cleaner.sh</code>
</div>
<div class="line number32 index31 alt1">
<code class="sql string">cd /data/application/es-install/kibana-5.6.4-linux-x86_64/bin/</code>
</div>
<div class="line number33 index32 alt2">
<code class="sql string">nohup ./kibana &</code>
</div>
<div class="line number34 index33 alt1">
<code class="sql string"># 检测是否正常启动</code>
</div>
<div class="line number35 index34 alt2">
<code class="sql string">ps -ef |grep elasticsearch | grep -v ‘grep'</code> <code class="sql plain">|wc -l</code>
</div>
<div class="line number36 index35 alt1">
<code class="sql plain">输出为:4 <</code><code class="sql comments">--------我的单个es 个数为0</code>
</div>
<div class="line number37 index36 alt2">
<code class="sql plain">ps -ef |grep logstash | grep -v ‘grep</code><code class="sql string">' |wc -l</code>
</div>
<div class="line number38 index37 alt1">
<code class="sql string">输出为:2</code>
</div>
<div class="line number39 index38 alt2">
<code class="sql string">ps -ef |grep es-cleaner | grep -v ‘grep'</code> <code class="sql plain">|wc -l</code>
</div>
<div class="line number40 index39 alt1">
<code class="sql plain">输出为:1</code>
</div>
<div class="line number41 index40 alt2">
<code class="sql plain">ps -ef |grep ‘node/bin/node</code><code class="sql string">' | grep -v ‘grep'</code> <code class="sql plain">|wc -l</code>
</div>
<div class="line number42 index41 alt1">
<code class="sql plain">输出为:1</code>
</div>
<div class="line number43 index42 alt2">
<code class="sql plain">(3)es 的验证及相关配置</code>
</div>
<div class="line number44 index43 alt1">
<code class="sql plain">输入 es ip 地址,打开 es 前台页面。</code>
</div>
<div class="line number45 index44 alt2">
<code class="sql plain">启动 es 后,需要把实例详情中的“网关审计数据是否入库”打开,选择“是”。</code>
</div>
<div class="line number46 index45 alt1">
<code class="sql plain">只有在打开这个开关后的日志才会入 es,为了可以定位问题,需要的话一定要尽早打开。</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
<img title="TDSQL 安装部署附图的实现(图文)" alt="TDSQL 安装部署附图的实现(图文)" src="https://zhuji.jb51.net/uploads/img/202305/6c57b0676b86e8433f9ef51fe1d03696.jpg"></p>
<p>
至此,tdsql所有模块已部署完成,后期可以直接使用和测试了。</p>
<p>
到此这篇关于tdsql 安装部署附图的实现(图文)的文章就介绍到这了,更多相关tdsql 安装部署内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!</p>
<p>
原文链接:https://www.cnblogs.com/cqdba/p/13704465.html</p>
頁:
[1]