高可用性集群解释:
一般是指当集群中有某个节点失效的情况下,其上的任务会自动转移到其他正常的节点上。还指可以将集群中的某节点进行离线维护再上线,该过程并不影响整个集群的运行。
今天来做个Heartbeat+DRBD+NFS的高可用文件系统
1、实验VMware虚拟机2台 同时安装CentOS 6.6 x86_64的系统

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
#测试机1
[root@ZhongH6100 ~]# ifconfig | sed -rn '/^[^ \t]/{N;s/(^[^ ]*).*addr:([^ ]*).*/\1 \2/p}' | awk '$2!~/^192\.168|^10\.|^127|^0|^$/{print $1"="$2}'
eth0=172.16.6.100
eth1=172.16.6.101
[root@ZhongH6100 ~]# hostname
ZhongH6100.wxjr.com.cn
[root@ZhongH6100 ~]# cat /etc/centos-release
CentOS release 6.6 (Final)
[root@ZhongH6100 ~]#
#测试机2
[root@ZhongH7100 ~]# ifconfig | sed -rn '/^[^ \t]/{N;s/(^[^ ]*).*addr:([^ ]*).*/\1 \2/p}' | awk '$2!~/^192\.168|^10\.|^127|^0|^$/{print $1"="$2}'
eth0=172.16.7.100
eth1=172.16.7.101
[root@ZhongH7100 ~]# hostname
ZhongH7100.wxjr.com.cn
[root@ZhongH7100 ~]# cat /etc/centos-release
CentOS release 6.6 (Final)
[root@ZhongH7100 ~]#

2、修改主机名、指定hostname能被两主机互相访问、同步时间#下面实验的时候大家仔细看命令是在哪个服务器上执行的仔细区分

[root@ZhongH6100 ~]还是[root@ZhongH7100 ~]

如果是[root@ZhongH100 ~]那么就是两台机器都需要运行的

1
2
3
4
5
6
7
8
[root@ZhongH6100 ~]# sed -ri 's/^(HOSTNAME=).*/\1ZhongH6100.wxjr.com.cn/' /etc/sysconfig/network
[root@ZhongH6100 ~]# hostname ZhongH6100.wxjr.com.cn
[root@ZhongH7100 ~]# sed -ri 's/^(HOSTNAME=).*/\1ZhongH7100.wxjr.com.cn/' /etc/sysconfig/network
[root@ZhongH7100 ~]# hostname ZhongH7100.wxjr.com.cn
[root@ZhongH6100 ~]# echo "172.16.7.100    ZhongH7100.wxjr.com.cn ZhongH7100" >> /etc/hosts
[root@ZhongH7100 ~]# echo "172.16.6.100    ZhongH6100.wxjr.com.cn ZhongH6100" >> /etc/hosts
#下面这里就不单独做世界同步服务器了 直接ntp来做网络同步
[root@ZhongH100 ~]# echo "*/5 * * * * `which ntpdate` pool.ntp.org >/dev/null 2>&1" >> /var/spool/cron/root


3、安装DRBD
DRBD简介DRBD的全称为:DistributedReplicatedBlockDevice(DRBD)分布式块设备复制DRBD是由内核模块和相关脚本而构成,用以构建高可用性的集群。其实现方式是通过网络来镜像整个设备。它允许用户在远程机器上建立一个本地块设备的实时镜像。与心跳连接结合使用,也可以把它看作是一种网络RAID。DRBD工作机制Drbd负责接收数据,把数据写到本地磁盘,然后发送给另一个主机。另一个主机再将数据存到自己的磁盘中。目前,drbd每次只允许对一个节点进行读写访问,这对于通常的故障切换高可用性集群来讲已经足够用了。以后的版本将支持两个节点进行读写存取。DRBD协议说明A数据一旦写入磁盘并发送到网络中就认为完成了写入操作。B收到接收确认就认为完成了写入操作。C收到写入确认就认为完成了写入操作DRBD官方下载地址:http://oss.linbit.com/drbd/
下载 : DRBD-8.4.3.tar.gz
①、准备工作
1
2
3
4
5
[root@ZhongH100 ~]# yum clean all && yum makecache
[root@ZhongH100 ~]# yum groupinstall "Development tools" "Server Platform Development" -y && yum update -y
[root@ZhongH100 ~]# uname -r #查看内核版本
2.6.32-504.16.2.el6.centos.plus.x86_64
[root@ZhongH100 ~]# yum install kernel-devel kernel-headers flex #注意:安装kernel-devel一定要和你uname -r 看到的内核版本一致


②、编译安装DRBD

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
[root@ZhongH100 ~]# cd /tmp && wget http://www.dwhd.org/wp-content/uploads/2015/05/drbd-8.4.3.tar.gz
[root@ZhongH100 tmp]# tar xf drbd-8.4.3.tar.gz
[root@ZhongH100 tmp]# cd drbd-8.4.3
[root@ZhongH6100 drbd-8.4.3]# ./configure --prefix=/usr/local/drbd --sysconfdir=/etc/drbd \
--datarootdir=/usr/local/share/ --with-utils --with-km       #--with-km是启用内核模块
[root@ZhongH100 drbd-8.4.3]# make KDIR=/usr/src/kernels/`uname -r`/
[root@ZhongH100 drbd-8.4.3]# make install
[root@ZhongH100 drbd-8.4.3]# mkdir -p /usr/local/drbd/var/run/drbd
[root@ZhongH100 drbd-8.4.3]# cp -a /etc/drbd/rc.d/init.d/drbd  /etc/rc.d/init.d/
[root@ZhongH100 drbd-8.4.3]# chkconfig --add drbd
[root@ZhongH100 drbd-8.4.3]# chkconfig drbd on
[root@ZhongH100 drbd-8.4.3]# cd drbd
[root@ZhongH100 drbd]# make clean
[root@ZhongH100 drbd]# make KDIR=/usr/src/kernels/`uname -r`/
[root@ZhongH100 drbd]# cp drbd.ko /lib/modules/`uname -r`/kernel/lib/
[root@ZhongH100 drbd]# modprobe drbd
[root@ZhongH100 drbd]# lsmod | grep drbd   #查看模块是否加载成功
drbd                  310172  0
libcrc32c               1246  1 drbd

③、准备同步使用的磁盘
准备一个分区以备后面实验用,下面是我在sdb磁盘上新建了一个sdb1的主分区大小事30G
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
[root@ZhongH100 drbd]# dd if=/dev/zero of=/dev/sdb1 bs=1M count=1 情况sdb磁盘上的分区表
[root@ZhongH100 drbd]# fdisk /dev/sdb
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').
Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-7832, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-7832, default 7832): +30G
Command (m for help): p
Disk /dev/sdb: 64.4 GB, 64424509440 bytes
255 heads, 63 sectors/track, 7832 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000a8ddb
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        3917    31463271   83  Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@ZhongH100 drbd]#

④、制作环境变量文件、备份原始配置文件、修改配置文件、定义节点上的资源
1
2
3
4
5
[root@ZhongH100 drbd]# cd /etc/drbd/drbd.d
[root@ZhongH100 drbd.d]# pwd
/etc/drbd/drbd.d
[root@ZhongH100 drbd.d]# echo "export PATH=/usr/local/drbd/sbin:\$PATH" > /etc/profile.d/drbd.8.4.3.sh
[root@ZhongH100 drbd.d]# . /etc/profile.d/drbd.8.4.3.sh

1
2
3
4
5
[root@ZhongH100 drbd.d]# cp global_common.conf global_common.conf_`date +%Y%m%d`_backup
[root@ZhongH100 drbd.d]# ls -l
总用量 8
-rw-r--r-- 1 root root 1836 5月  23 21:36 global_common.conf
-rw-r--r-- 1 root root 1836 5月  23 21:45 global_common.conf_20150523_backup

⑤、修改全局配置文件
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
[root@ZhongH100 drbd.d]# :>global_common.conf
#然后将配置文件改成下面的
[root@ZhongH100 drbd.d]# grep -Ev '(^#|^\s+#)' global_common.conf
global {
        usage-count no;
}
common {
        protocol C;
        handlers {
                pri-on-incon-degr "/usr/lib/drbd/notify-pri-on-incon-degr.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f";
                pri-lost-after-sb "/usr/lib/drbd/notify-pri-lost-after-sb.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f";
                local-io-error "/usr/lib/drbd/notify-io-error.sh; /usr/lib/drbd/notify-emergency-shutdown.sh; echo o > /proc/sysrq-trigger ; halt -f";
        }
        startup {
                wfc-timeout 120;
                degr-wfc-timeout 120;
        }
        disk {
                on-io-error detach;
                fencing resource-only;
        }
        net {
                cram-hmac-alg "sha1";
                shared-secret "mydrbdlab";
        }
        syncer {
                rate 100M;
        }
}

 ⑥、定义节点上的资源
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
[root@ZhongH100 drbd.d]# vi web.res #写入下面的内容,具体视情况做更改
resource web { #这个web是定义资源的名字
    on ZhongH6100.wxjr.com.cn {          #on开头,后面是主机名称
        device /dev/drbd0;           #drbd设备名称
        disk /dev/sdb1;              #drbd0使用的磁盘分区为sdb1
        address 172.16.6.101:7789;   #设置drbd监听地址与端口
        meta-disk internal;
    }
    on ZhongH7100.wxjr.com.cn {          #on开头,后面是主机名称
        device /dev/drbd0;           #drbd设备名称
        disk /dev/sdb1;              #drbd0使用的磁盘分区为sdb1
        address 172.16.7.101:7789;   #设置drbd监听地址与端口
        meta-disk internal;
    }
}

⑦、初始化资源
1
2
3
4
5
[root@ZhongH100 drbd.d]# drbdadm create-md web
Writing meta data...
initializing activity log
NOT initializing bitmap
New drbd meta data block successfully created.

⑧、启动DRBD服务
01
02
03
04
05
06
07
08
09
10
11
12
[root@ZhongH100 drbd.d]# service drbd restart
Stopping all DRBD resources: .
Starting DRBD resources: [
     create res: web
   prepare disk: web
    adjust disk: web
     adjust net: web
]
outdated-wfc-timeout has to be shorter than degr-wfc-timeout
outdated-wfc-timeout implicitly set to degr-wfc-timeout (120s)
.
[root@ZhongH100 drbd.d]#


查看节点 此时节点都是Secondary

1
2
3
[root@ZhongH6100 drbd.d]# drbdadm role web
Secondary/Secondary
[root@ZhongH6100 drbd.d]#

1
2
3
[root@ZhongH7100 drbd.d]# drbdadm role web
Secondary/Secondary
[root@ZhongH7100 drbd.d]#

由于默认没有主次节点之分,因而需要设置两个主机的主次节点,选择需要设置为主节点的主机,然后执行如下命令:
drbdadm -- --overwrite-data-of-peer primary web #命令解释:调整当前节点上的web资源为主节点

⑨、调整172.16.6.101/172.16.6.100也就是node1也主节点
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
[root@ZhongH6100 drbd.d]# drbdadm role web
Secondary/Secondary
[root@ZhongH6100 drbd.d]# drbdadm -- --overwrite-data-of-peer primary web
[root@ZhongH6100 drbd.d]# drbd-overview
  0:web/0  SyncSource Primary/Secondary UpToDate/Inconsistent C r---n-
        [>....................] sync'ed:  1.4% (30328/30724)M
[root@ZhongH6100 drbd.d]# cat /proc/drbd
version: 8.4.3 (api:1/proto:86-101)
GIT-hash: 89a294209144b68adb3ee85a73221f964d3ee515 build by root@ZhongH6100.wxjr.com.cn, 2015-05-23 21:36:33
 0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r---n-
    ns:2462744 nr:0 dw:0 dr:2466464 al:0 bm:150 lo:0 pe:3 ua:3 ap:0 ep:1 wo:f oos:29001596
        [>...................] sync'ed:  7.9% (28320/30724)M
        finish: 0:04:44 speed: 101,772 (91,136) K/sec
[root@ZhongH6100 drbd.d]# drbdadm role web
Primary/Secondary
[root@ZhongH6100 drbd.d]# cat /proc/drbd
version: 8.4.3 (api:1/proto:86-101)
GIT-hash: 89a294209144b68adb3ee85a73221f964d3ee515 build by root@ZhongH6100.wxjr.com.cn, 2015-05-23 21:36:33
 0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----
    ns:9051136 nr:0 dw:0 dr:9051808 al:0 bm:551 lo:3 pe:8 ua:3 ap:0 ep:1 wo:f oos:22419324
        [====>...............] sync'ed: 28.8% (21892/30724)M
        finish: 0:04:06 speed: 90,776 (74,732) K/sec
#由此可见:进度已经完成了28.8%,传输速度大概70M/S
#注:ds是磁盘状态信息 dw是磁盘写信息 dr是磁盘读信息

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
[root@ZhongH6100 drbd.d]# drbdadm cstate web
SyncSource  #SyncSource:以本节点为同步源的同步正在进行
#资源的连接状态;一个资源可能有以下连接状态中的一种
#StandAlone 独立的:网络配置不可用;资源还没有被连接或是被管理断开(使用 drbdadm disconnect 命令),或是由于出现认证失败或是脑裂的情况
#Disconnecting 断开:断开只是临时状态,下一个状态是StandAlone独立的
#Unconnected 悬空:是尝试连接前的临时状态,可能下一个状态为WFconnection和WFReportParams
#Timeout 超时:与对等节点连接超时,也是临时状态,下一个状态为Unconected悬空
#BrokerPipe:与对等节点连接丢失,也是临时状态,下一个状态为Unconected悬空
#NetworkFailure:与对等节点推动连接后的临时状态,下一个状态为Unconected悬空
#ProtocolError:与对等节点推动连接后的临时状态,下一个状态为Unconected悬空
#TearDown 拆解:临时状态,对等节点关闭,下一个状态为Unconected悬空
#WFConnection:等待和对等节点建立网络连接
#WFReportParams:已经建立TCP连接,本节点等待从对等节点传来的第一个网络包
#Connected 连接:DRBD已经建立连接,数据镜像现在可用,节点处于正常状态
#StartingSyncS:完全同步,有管理员发起的刚刚开始同步,未来可能的状态为SyncSource或PausedSyncS
#StartingSyncT:完全同步,有管理员发起的刚刚开始同步,下一状态为WFSyncUUID
#WFBitMapS:部分同步刚刚开始,下一步可能的状态为SyncSource或PausedSyncS
#WFBitMapT:部分同步刚刚开始,下一步可能的状态为WFSyncUUID
#WFSyncUUID:同步即将开始,下一步可能的状态为SyncTarget或PausedSyncT
#SyncSource:以本节点为同步源的同步正在进行
#SyncTarget:以本节点为同步目标的同步正在进行
#PausedSyncS:以本地节点是一个持续同步的源,但是目前同步已经暂停,可能是因为另外一个同步正在进行或是使用命令(drbdadm pause-sync)暂停了同步
#PausedSyncT:以本地节点为持续同步的目标,但是目前同步已经暂停,这可以是因为另外一个同步正在进行或是使用命令(drbdadm pause-sync)暂停了同步
#VerifyS:以本地节点为验证源的线上设备验证正在执行
#VerifyT:以本地节点为验证目标的线上设备验证正在执行

⑩、在主节点上创建文件系统、挂载主节点上的文件系统、在主节点分区中新建个文件
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
[root@ZhongH6100 drbd.d]# mke2fs -t ext4 -L drbdweb /dev/drbd0
mke2fs 1.41.12 (17-May-2010)
文件系统标签=drbdweb
操作系统:Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1966560 inodes, 7865567 blocks
393278 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=4294967296
241 block groups
32768 blocks per group, 32768 fragments per group
8160 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000
正在写入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
This filesystem will be automatically checked every 33 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
[root@ZhongH6100 drbd.d]# mkdir /DRBD
[root@ZhongH6100 drbd.d]# mount /dev/drbd0 /DRBD/
[root@ZhongH6100 drbd.d]# echo -e "Hello World\nLegion\t$(date "+%Y-%m-%d %H:%M:%S")" > /DRBD/testDRBDfile
[root@ZhongH6100 drbd.d]# cat /DRBD/testDRBDfile
Hello World
Legion  2015-05-23 22:45:07
[root@ZhongH6100 drbd.d]#

⑪、更换node1为从节点、node2为主节点卸载DRBD分区且更换node1为从节点
1
2
3
4
5
[root@ZhongH6100 drbd.d]# umount /DRBD/
[root@ZhongH6100 drbd.d]# drbdadm secondary web
[root@ZhongH6100 drbd.d]# drbdadm role web
Secondary/Secondary
[root@ZhongH6100 drbd.d]#

1
2
3
4
5
6
[root@ZhongH7100 drbd.d]# drbdadm primary web
[root@ZhongH7100 drbd.d]# drbdadm role web
Primary/Secondary
[root@ZhongH7100 drbd.d]# drbd-overview
  0:web/0  Connected Primary/Secondary UpToDate/UpToDate C r-----
[root@ZhongH7100 drbd.d]#

⑫、挂载节点二,查看文件是否同步了 HOHO~~
01
02
03
04
05
06
07
08
09
10
11
12
[root@ZhongH7100 drbd.d]# mkdir /DRBD
[root@ZhongH7100 drbd.d]# mount /dev/drbd0 /DRBD
[root@ZhongH7100 drbd.d]# ls -l /DRBD
总用量 20
drwx------ 2 root root 16384 5月  23 22:41 lost+found
-rw-r--r-- 1 root root    39 5月  23 22:45 testDRBDfile
[root@ZhongH7100 drbd.d]# date
2015年 05月 23日 星期六 22:55:00 CST
[root@ZhongH7100 drbd.d]# cat /DRBD/testDRBDfile
Hello World
Legion  2015-05-23 22:45:07
[root@ZhongH7100 drbd.d]#


到此我们的DRBD的两个节点就配置好了,也测试成功能同步了

原地址:http://www.dwhd.org/20150523_150831.html

DRBD 高可用配置详解(转)相关推荐

  1. mysql高可用架构_mysql高可用架构详解

    高可用(High Availabiltity)应用提供持续不间断(可用)的服务的能力 系统高可用性的评价通常用可用率表示 造成不可用的原因硬件故障(各种) 预期中的系统软硬件维护 软件缺陷(应用代码, ...

  2. 红帽企业集群和存储管理之DRBD+Heartbeat+NFS实现详解

    红帽企业集群和存储管理之 DRBD+Heartbeat+NFS实现详解 案例应用背景 本实验部署DRBD + HEARDBEAT + NFS 环境,建立一个高可用(HA)的文件服务器集群.在方案中,通 ...

  3. php-fpm 启动参数及重要配置详解

    2019独角兽企业重金招聘Python工程师标准>>> php-fpm 启动参数及重要配置详解 约定几个目录 /usr/local/php/sbin/php-fpm /usr/loc ...

  4. lvs keepalived 安装配置详解【转】

    lvs keepalived 安装配置详解 张映 发表于 2012-06-20 分类目录: 服务器相关 前段时间看了一篇文章,lvs做负载均衡根F5差不多,说实话不怎么相信,因为F5没玩过,也无法比较 ...

  5. 使用LVS实现负载均衡原理及安装配置详解

    使用LVS实现负载均衡原理及安装配置详解 负载均衡集群是 load balance 集群的简写,翻译成中文就是负载均衡集群.常用的负载均衡开源软件有nginx.lvs.haproxy,商业的硬件负载均 ...

  6. ntp 配置详解(转载后整理汇总)

    ntp 配置详解 一.时间和时区 在LINUX系统中,有许多场合都使用时间戳的方式表示时间,即从1970年1月1日起至当前的天数或秒数. 世界遵循一个标准UTC,中国的标准是CST(北京时间)中国处于 ...

  7. mybatis基础总结02 -配置详解

    二 mybatis配置详解 MyBatis最关键的组成部分是SqlSessionFactory,我们可以从中获取SqlSession, 并执行映射的SQL语句.SqlSessionFactory对象可 ...

  8. 华为服务器bios系统,华为服务器bios配置详解

    华为服务器bios配置详解 内容精选 换一换 当您想在Internet上通过域名访问您的网站时,可以通过本操作将域名托管至华为云的云解析服务,并为域名添加解析记录.例如,搭建一个网站服务器,采用IPv ...

  9. 云数据库RDS规格族配置详解

    阿里云RDS云数据库分为通用型和独享型两种规格族,通用型RDS实例与同一物理机上的其他通用型实例共享CPU和存储资源因此价格较为便宜,独享型RDS实例独占物理机资源金融.电商.政务.大中型互联网业务, ...

最新文章

  1. 上机题目(0基础)- 数据库事务(Java)
  2. editplus 批量删除 重复行
  3. IDEA设置虚拟机参数
  4. 2018年10月Top 10 Python开源项目
  5. python两个装饰器执行顺序_python中多个装饰器的执行顺序详解
  6. html css 核心设计理念
  7. 查看linux文件目录的大小和文件夹包含的文件数
  8. 化学人学python有前途吗-用Python解析化学公式
  9. B-树关键字个数计算
  10. 手机哪个软件可以远程控制服务器,手机远程有什么功能?手机远程协助软件哪个好?...
  11. 记录:汇编语言编译器选择(vscode,永远的神)
  12. python word 表格复制_python实现同一word中的表格分别提取并保存到不同文件下
  13. C语言—各种数据类型间的混合运算
  14. java发送lrc文件格式_lrc歌词文件格式
  15. verilog的时钟分频与时钟使能
  16. Stata | 简单操作2(display)
  17. [linux] 远程服务器安装unrar(无root)
  18. 企业邮箱登陆入口有哪些?Tom企业邮箱大促
  19. 易宝正式加入openGauss社区
  20. 华为认证考试怎么预约?这本指南书教你一次到位!

热门文章

  1. ITK:二维高斯混合模型期望最大化
  2. ITK:获取或设置ITK类的成员变量
  3. ITK:在没有写访问权的情况下迭代图像中的区域
  4. DCMTK:DSRTree和DSRTreeNodeCursor类的测试程序
  5. OpenCV在相机或图像中检测QR码的实例(附完整代码)
  6. OpenCV字母识别letter recognition的实例(附完整代码)
  7. OpenCV图像中的人脸界标检测
  8. C语言求在算术级数中找到缺少的数字(附完整源码)
  9. C语言求网格的最大不重复路径数的算法(附完整源码)
  10. QT实现太阳系系统八大行星