设为首页 收藏本站
查看: 1377|回复: 0

[经验分享] LVS+Keepalived+httpd安装及配置

[复制链接]

尚未签到

发表于 2015-11-20 08:22:10 | 显示全部楼层 |阅读模式
  
  
  LVS+Keepalived+httpd安装及配置
  
  
  
  目录
  1环境... 1
  2安装LVS软件(分别在LVS-Master和LVS-Backup中)... 1
  1.1.查看是否有IPVS模块...1
  1.2.安装IPVS管理工具...1
  3安装keepalived(分别在LVS-Master和LVS-Backup中)... 1
  3.1安装keepalived并配置... 1
  3.2.启动keepalived.1
  4在LVS-Backup上安装LVS、keepalived并配置... 1
  4.1安装LVS、keepalived. 1
  4.2配置LVS-Backup的keepalived. 1
  4.3启动LVS-Backup的keeplived服务,并检查是否生效...1
  5测试VIP,检查是否能主备切换。... 1
  5.1查看主VIP. 1
  5.2查看备VIP. 1
  5.3日志查看主备切换... 1
  6配置WEB服务器,即real server节点1和2. 1
  6.1配置web2. 1
  6.2配置web4. 1
  7负载均衡以及高可用测试... 1
  7.1负载均衡测试... 1
  7.2高可用测试... 1
  8其他常用操作... 1
  8.1关闭LVS. 1
  8.2系统虚拟IP管理:... 1
  8.3查看LVS的状态... 1
  
  
  
  
  
  
  
  
1 环境
  
  操作系统Centos 6.4 X86_64
  LVS-Master:192.168.1.19
  LVS-Backup:192.168.1.18
  VIP:192.168.1.10
  RS01:192.168.1.18
  RS02:192.168.1.17
  
  
  
  
2 安装LVS软件(分别在LVS-Master和LVS-Backup中)
  
1.1.查看是否有IPVS模块
  LVS是Linux标准内核的一部分,直接被编译在内核中!
  
  
  [iyunv@LVS-Master ~]# modprobe -l | grep ipvs    #使用modprobe命令查看
  
  
1.2.安装IPVS管理工具
  
  
  [iyunv@LVS-Master ~]# yum install ipvsadm
  
  
  
  
  
  
  
  
  
  
3 安装keepalived(分别在LVS-Master和LVS-Backup中)
  
3.1 安装keepalived并配置
  
  
  [iyunv@LVS-Master ~]# yum install keepalived
  [iyunv@LVS-Master ~]# vi/etc/keepalived/keepalived.conf
  
  vi keepalived.conf
  
  ! Configuration File for keepalived
  
  global_defs {
  notification_email {
  49000448@qq.com
  }
  notification_email_from Alexandre.Cassen@firewall.loc
  smtp_server 10.0.0.1
  smtp_connect_timeout30
  router_idLVS_7
  }
  
  vrrp_instance VI_1 {
  state MASTER
  interfaceeth0
  virtual_router_id 55
  priority 150
  advert_int 1
  authentication {
  auth_type PASS
  auth_pass 1111
  }
  virtual_ipaddress {
  192.168.1.10/24
  }
  }
  
  virtual_server192.168.1.10 80 {
  delay_loop6
  lb_algowrr
  lb_kindDR
  nat_mask255.255.255.0
  persistence_timeout300
  protocolTCP
  # ipvsadm -A -t192.168.1.10:80 -s wrr -p 20
  real_server 192.168.1.19 80 {
  weight1
  TCP_CHECK{
  connect_timeout8
  nb_get_retry3
  delay_before_retry3
  connect_port80
  }
  }
  
  real_server 192.168.1.18 80 {
  weight1
  TCP_CHECK{
  connect_timeout8
  nb_get_retry3
  delay_before_retry3
  connect_port80
  }
  }
  }
  
  #ipvsadm -a -t 192.168.1.10:80 -r 192.168.1.18:80 -g -w 1
  #ipvsadm -a -t 192.168.1.10:80 -r 192.168.1.19:80 -g -w 1
  
  
  
  
  
  
3.2.启动keepalived
  设置keepalived服务自启动,检查是否生效
  
  
  [iyunv@LVS-Master ~]# /etc/init.d/keepalived start
  Starting keepalived:                     [ OK  ]
  [iyunv@LVS-Master ~]# chkconfig keepalived on
  [iyunv@LVS-Master keepalived]# ipvsadm -L -n           #查看ipvs规则是否生效
  IPVirtual Server version 1.2.1 (size=4096)
  ProtLocalAddress:Port Scheduler Flags
    -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
  TCP  192.168.2.33:80 wlc persistent 50
    -> 192.168.2.29:80              Route   100   0          0        
    -> 192.168.2.30:80              Route   100   0          0
  
  
  
  
  
  
  
4 在LVS-Backup上安装LVS、keepalived并配置
  
4.1 安装LVS、keepalived
  
  [iyunv@LVS-Backup ~]# yum install ipvsadm
  [iyunv@LVS-Backup ~]# yum install keepalived
  
4.2 配置LVS-Backup的keepalived
  先从LVS-Master把修改过的keepalived配置文件复制过来。
  
  [iyunv@LVS-Master keepalived]# scp keepalived.confroot@192.168.1.18:/etc/keepalived/
  [iyunv@LVS-Backup ~]# vi/etc/keepalived/keepalived.conf
  只修改state为BACKUP和priority为90,MASTER为主机服务器,BACKUP为备用服务器。
      state BACKUP
      priority 90
  
  
  
  vi keepalived.conf
  
  ! Configuration File for keepalived
  
  global_defs {
  notification_email {
  49000448@qq.com
  }
  notification_email_from Alexandre.Cassen@firewall.loc
  smtp_server 10.0.0.1
  smtp_connect_timeout 30
  router_idLVS_7
  }
  
  vrrp_instanceVI_1 {
  state BACKUP
  interfaceeth0
  virtual_router_id 55
  priority 100
  advert_int 1
  authentication {
  auth_type PASS
  auth_pass 1111
  }
  virtual_ipaddress {
          192.168.1.10/24
      }
  }
  
  
  virtual_server192.168.1.10 80 {
  delay_loop6
  lb_algowrr
  lb_kindDR
  nat_mask255.255.255.0
  persistence_timeout300
  protocolTCP
  #ipvsadm -A -t 192.168.1.10:80 -s wrr -p 20
  real_server 192.168.1.18 80 {
  weight1
  TCP_CHECK{
  connect_timeout8
  nb_get_retry3
  delay_before_retry3
  connect_port80
  }
  }
  
  real_server 192.168.1.17 80 {
  weight1
  TCP_CHECK{
  connect_timeout8
  nb_get_retry3
  delay_before_retry3
  connect_port80
  }
  }
  }
  
  #ipvsadm -a -t 192.168.1.10:80 -r 192.168.1.18:80-g -w 1
  #ipvsadm -a -t 192.168.1.10:80 -r 192.168.1.17:80-g -w 1
  
  
  
  
  
  
4.3启动LVS-Backup的keeplived服务,并检查是否生效
  
  
  [iyunv@LVS-Backup ~]# /etc/init.d/keepalived start
  [iyunv@LVS-Backup ~]# chkconfig keepalived on
  [iyunv@LVS-Backup keepalived]# ipvsadm -L -n         #查看ipvs规则是否生效
  IPVirtual Server version 1.2.1 (size=4096)
  ProtLocalAddress:Port Scheduler Flags
    -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
  TCP  192.168.2.33:80 wlc persistent 50
    -> 192.168.2.29:80              Route   100   0          0        
    -> 192.168.2.30:80              Route   100   0          0
  
  
  
  
  
  
5 测试VIP,检查是否能主备切换。
  
5.1 查看主VIP
  
  启动keeplived后,先用ip addr显示主备服务器的VIP情况,当主备服务器同时启用keepalived时,只有主服务器拥有VIP地址,备服务器没有。
  
  
  [iyunv@LVS-Master~]# ip addr
  1: lo:<LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
      link/loopback 00:00:00:00:00:00 brd00:00:00:00:00:00
      inet 127.0.0.1/8 scope host lo
      inet6 ::1/128 scope host
         valid_lft forever preferred_lft forever
  2: eth0:<BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen1000
      link/ether 00:50:56:a6:00:13 brdff:ff:ff:ff:ff:ff
      inet 192.168.2.32/24 brd 192.168.2.255scope global eth0
      inet 192.168.2.33/32 scope global eth0                      #可以看到主服务器拥有192.168.2.33这个VIP地址
      inet6 fe80::250:56ff:fea6:13/64 scope link
         valid_lft forever preferred_lft forever
  
  [iyunv@LVS-Backup~]# ip addr
  1: lo:<LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
      link/loopback 00:00:00:00:00:00 brd00:00:00:00:00:00
      inet 127.0.0.1/8 scope host lo
      inet6 ::1/128 scope host
         valid_lft forever preferred_lft forever
  2: eth0:<BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWNqlen 1000
      link/ether 08:00:27:77:d3:82 brdff:ff:ff:ff:ff:ff
      inet 192.168.2.31/24 brd 192.168.2.255scope global eth0   #可以到看备服务器没有192.168.2.33这个VIP地址
      inet6 fe80::a00:27ff:fe77:d382/64 scopelink
         valid_lft forever preferred_lft forever
  
  
  
  
5.2 查看备VIP
  当停止主服务器的keepalived服务,再查看下主备服务器VIP地址,发现VIP地址已从主服务器转移到了备服务器;
  
  
  [iyunv@LVS-Master ~]# service keepalived stop
  Stopping keepalived:                [  OK  ]
  [iyunv@LVS-Master keepalived]# ip addr
  [iyunv@mobankeepalived]# /etc/init.d/keepalived stop
  Stopping keepalived: [  OK  ]
  [iyunv@mobankeepalived]# ip add
  1: lo:<LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
      link/loopback 00:00:00:00:00:00 brd00:00:00:00:00:00
      inet 127.0.0.1/8 scope host lo
      inet6 ::1/128 scope host
         valid_lft forever preferred_lft forever
  2: eth0:<BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen1000
      link/ether 00:0c:29:48:9b:89 brdff:ff:ff:ff:ff:ff
      inet 192.168.1.19/24 brd 192.168.1.255scope global eth0    #主服务器keepalived停止后,VIP地址将移除
      inet6 fe80::20c:29ff:fe48:9b89/64 scopelink
         valid_lft forever preferred_lft forever
  [iyunv@mobankeepalived]#
  
  [iyunv@LVS-Backup ~]# ip addr
  [iyunv@rs01keepalived]# ip add
  1: lo:<LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
      link/loopback 00:00:00:00:00:00 brd00:00:00:00:00:00
      inet 127.0.0.1/8 scope host lo
      inet6 ::1/128 scope host
         valid_lft forever preferred_lft forever
  2: eth0:<BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen1000
      link/ether 00:0c:29:7b:a7:5e brdff:ff:ff:ff:ff:ff
      inet 192.168.1.18/24 brd 192.168.1.255scope global eth0
      inet 192.168.1.10/24 scope global secondaryeth0                           #可以看到VIP地址已转移到备服务器,继续提供服务
      inet6 fe80::20c:29ff:fe7b:a75e/64 scopelink
         valid_lft forever preferred_lft forever
  [iyunv@rs01keepalived]#
  
  
  
  
  
5.3 日志查看主备切换
  
  1) 当主服务器停止keepalived后,主备服务器相关日志
  
  
  [iyunv@LVS-Master~]# service keepalived stop
  Stopping keepalived:                [  OK  ]
  
  
  主服务器日志
  Sep  2 17:39:13 LVS-Master kernel: IPVS:__ip_vs_del_service: enter  
  Sep  2 17:39:13 LVS-Master Keepalived[13192]:Stopping Keepalived v1.2.7 (02/21,2013)              #主服务器停掉后           
  Sep  2 17:39:13 LVS-Master Keepalived_vrrp[13195]:VRRP_Instance(VI_1) sending 0 priority   
  Sep  2 17:39:13 LVS-Master Keepalived_vrrp[13195]:VRRP_Instance(VI_1) removing protocol VIPs.
  
  
  备服务器日志
  Sep  2 17:39:14 LVS-Backup Keepalived_vrrp[979]:VRRP_Instance(VI_1) Transition to MASTER STATE
  Sep  2 17:39:15 LVS-Backup Keepalived_vrrp[979]:VRRP_Instance(VI_1) Entering MASTER STATE         #备转为MASTER,并设置VIP地址为192.168.2.33
  Sep  2 17:39:15 LVS-Backup Keepalived_vrrp[979]:VRRP_Instance(VI_1) setting protocol VIPs.
  Sep  2 17:39:15 LVS-Backup Keepalived_vrrp[979]:VRRP_Instance(VI_1) Sending gratuitous ARPs on eth0 for 192.168.2.33
  Sep  2 17:39:15 LVS-BackupKeepalived_healthcheckers[978]: Netlink reflector reports IP 192.168.2.33 added
  Sep  2 17:39:20 LVS-Backup Keepalived_vrrp[979]:VRRP_Instance(VI_1) Sending gratuitous ARPs on eth0 for 192.168.2.33
  
  
  
  
  2) 当主服务器重启keepalived后,主备服务器相关日志
  
  
  [iyunv@LVS-Master~]# service keepalived start
  Starting keepalived:                 [ OK  ]
  
  主服务器日志
  Sep  2 17:41:28 LVS-Master Keepalived_vrrp[13231]:VRRP_Instance(VI_1) Transition to MASTER STATE
  Sep  2 17:41:29 LVS-Master Keepalived_vrrp[13231]:VRRP_Instance(VI_1) Entering MASTER STATE      #主服务器重启后,从新接手MASTER角色,并拿回VIP地址192.168.2.33      
  Sep  2 17:41:29 LVS-Master Keepalived_vrrp[13231]:VRRP_Instance(VI_1) setting protocol VIPs.
  Sep  2 17:41:29 LVS-MasterKeepalived_healthcheckers[13230]: Netlink reflector reports IP 192.168.2.33added
  Sep  2 17:41:29 LVS-Master Keepalived_vrrp[13231]:VRRP_Instance(VI_1) Sending gratuitous ARPs on eth0 for 192.168.2.33
  
  备服务器日志
  Sep  2 17:41:28 LVS-Backup Keepalived_vrrp[979]:VRRP_Instance(VI_1) Received higher prio advert
  Sep  2 17:41:28 LVS-Backup Keepalived_vrrp[979]:VRRP_Instance(VI_1) Entering BACKUP STATE         #备服务器从MASTER又变回了BACKUP,并移除VIP地址192.168.2.33
  Sep  2 17:41:28 LVS-Backup Keepalived_vrrp[979]:VRRP_Instance(VI_1) removing protocol VIPs.
  Sep  2 17:41:28 LVS-BackupKeepalived_healthcheckers[978]: Netlink reflector reports IP 192.168.2.33removed
  
  
  
  
  
  
6 配置WEB服务器,即realserver节点1和2
  
  由于采用的是DR方式调度,Real_Server会以LVS的VIP来直接回复Client,所以需要在Real_Server的lo上开启LVS的VIP来与Client建立通信
  
  
6.1 配置web2
  
  
  
  [iyunv@web2~]# vi /etc/init.d/lvsrs               #编辑一个lvsrs脚本,并放到/etc/init.d/下
  #!/bin/bash
  #description: start Real Server
  
  VIP=192.168.1.10
  
  ./etc/rc.d/init.d/functions
  
  case&quot;$1&quot; in
  start)
           echo &quot; Start LVS of Real Server&quot;
           /sbin/ifconfig lo:0 $VIP broadcast $VIPnetmask 255.255.255.255 up
           /sbin/route add -host $VIP dev lo:0
           echo &quot;1&quot;>/proc/sys/net/ipv4/conf/lo/arp_ignore               
           echo &quot;2&quot;>/proc/sys/net/ipv4/conf/lo/arp_announce
           echo &quot;1&quot;>/proc/sys/net/ipv4/conf/all/arp_ignore
           echo &quot;2&quot;>/proc/sys/net/ipv4/conf/all/arp_announce
           ;;
  stop)
           /sbin/ifconfig lo:0 down
           echo &quot;close LVS Directorserver&quot;
           echo &quot;0&quot;>/proc/sys/net/ipv4/conf/lo/arp_ignore
           echo &quot;0&quot;>/proc/sys/net/ipv4/conf/lo/arp_announce
           echo &quot;0&quot;>/proc/sys/net/ipv4/conf/all/arp_ignore
           echo &quot;0&quot;>/proc/sys/net/ipv4/conf/all/arp_announce
           ;;
  *)
           echo &quot;Usage: $0 {start|stop}&quot;
           exit 1
  esac
  
  
  [iyunv@web2~]# chmod 755 /etc/init.d/lvsrs      #给新增lvsrs脚本一个755权限
  [iyunv@web2~]# service lvsrs start              #启动lvsrs服务,我环境启动时出错,给一个functions755权限,按各自环境操作   
  /etc/init.d/lvsrs: line 7:./etc/rc.d/init.d/functions: Permission denied
  Start LVS ofReal Server
  
  [iyunv@web2init.d]# chmod 755 /etc/rc.d/init.d/functions    #给functions 755权限
  [iyunv@web2~]# service lvsrs start                                         #启动lvsrs服务
  Start LVS ofReal Server
  
  [iyunv@web2~]# ifconfig                                                        #查看已有一个VIP地址
  lo:0      Link encap:Local Loopback  
            inet addr:192.168.1.10  Mask:255.255.255.255
            UP LOOPBACK RUNNING  MTU:16436 Metric:1
  
  [iyunv@web2~]# echo &quot;service lvsrs start&quot; >> /etc/rc.local   #把lvsrs服务添加到开机启动,否则下次启动电脑后,还需手动启动。
  
  
  [iyunv@web2~]# yum install httpd
  [iyunv@web2~]# vi /var/www/html/index.html
  <h1>Welcome to web2(192.168.2.29)</h1>
  [iyunv@web2~]# service httpd start
  
  
  
  
  
  
  
6.2 配置web4
  
  
  配置同上
  
  
  [iyunv@web4~]# scp root@192.168.2.29:/etc/init.d/lvsrs /etc/init.d/
  [iyunv@web4~]# chmod 755 /etc/rc.d/init.d/functions
  [iyunv@web4~]# service lvsrs start
  Start LVS ofReal Server
  
  [iyunv@web4~]# echo &quot;service lvsrs start&quot; >> /etc/rc.local
  
  [iyunv@web4~]# ifconfig
  lo:0      Link encap:Local Loopback  
            inet addr:192.168.1.10  Mask:255.255.255.255
            UP LOOPBACK RUNNING  MTU:16436 Metric:1
  
  [iyunv@web4~]# yum install httpd
  
  [iyunv@web4~]# vi /var/www/html/index.html
  <h1>Welcome to web4(192.168.2.30)</h1>
  [iyunv@web4~]# service httpd start
  
  
  
  
  
7 负载均衡以及高可用测试
  
7.1 负载均衡测试
  (1)两台WEB服务器都工作正常,访问VIP地址时,可以被负载到两台WEB服务器上。
  (2)停掉一台WEB服务器的http服务后,访问VIP地址时,被负载到正常的WEB服务器上。
  
7.2 高可用测试
  (1)两台DR的keepalived服务器正常时,VIP地址在主服务器,提供正常服务。
  (2)当关闭主服务器的keepalived后,VIP地址自动转移到备服务器上,当主服务器重启keepalived服务后,VIP自动转移回主服务器,备服务器继续备用,实现了高可用负载均衡。
  
  
  
  
  
8 其他常用操作
  
  
8.1 关闭LVS
  
  (1)在real服务器上执行
  
  #service lvsrs stop
  
  (2)LVS服务器上执行
  
  killall-9 keepalived;ipvsadm -C
  
  
8.2 系统虚拟IP管理:
  
  查看虚拟IP地址
  # ip address list
  删除虚拟IP地址
  # ip addr del 192.168.1.205 dev eth0
  
  
  [iyunv@mobankeepalived]# ip add
  1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdiscnoqueue state UNKNOWN
  link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
  inet127.0.0.1/8 scope host lo
  inet6::1/128 scope host
  valid_lft forever preferred_lft forever
  2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP>mtu 1500 qdisc pfifo_fast state UP qlen 1000
  link/ether 00:0c:29:48:9b:89 brd ff:ff:ff:ff:ff:ff
  inet192.168.1.19/24 brd 192.168.1.255 scope global eth0
  inet192.168.1.10/24 scope global secondary eth0
  inet6fe80::20c:29ff:fe48:9b89/64 scope link
  valid_lft forever preferred_lft forever
  [iyunv@moban keepalived]#
  
  
  
8.3 查看LVS的状态
  
  
  #ipvsadm -ln
  ipvsadm -L-n
  
  [iyunv@mobankeepalived]#  ipvsadm -L -n
  IP Virtual Server version 1.2.1 (size=4096)
  Prot LocalAddress:Port Scheduler Flags
  ->RemoteAddress:Port           ForwardWeight ActiveConn InActConn
  TCP 192.168.1.10:80 wrr persistent 300
  ->192.168.1.17:80              Route   1     0          0         
  ->192.168.1.18:80              Route   1     0          0         
  [iyunv@moban keepalived]#
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-141330-1-1.html 上篇帖子: LVS+Keepalived 部署 下篇帖子: 安装LVS+KEEPALIVED
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表