<!-- If you need to report a security issue please visit https://github.com/apache/dubbo/security/policy -->

- [ ] I have searched the [issues](https://github.com/apache/dubbo/issues) of this repository and believe that this is not a duplicate.

### Environment

* Dubbo version: 3.0.5
* Operating System version: macOS 10.15.4
* Java version: xxx

### Errors

1. Run unit test in `IDEA`
2. Error log
```
[13/11/21 18:19:38:924 CST] main  INFO initializer.UnpackZookeeperInitializer:  [DUBBO] The file has been unpacked, target path:/var/folders/rm/xplq6_5j1s19bxtv8s6vprj80000gp/T/dubbo-mocked-zookeeper/2181, dubbo version: , current host: 192.168.31.105
[13/11/21 18:19:38:932 CST] main  INFO initializer.UnpackZookeeperInitializer:  [DUBBO] The file has been unpacked, target path:/var/folders/rm/xplq6_5j1s19bxtv8s6vprj80000gp/T/dubbo-mocked-zookeeper/2182, dubbo version: , current host: 192.168.31.105
[13/11/21 18:19:40:247 CST] main  INFO processor.StartZookeeperUnixProcessor:  [DUBBO] The zookeeper-2181 is starting..., dubbo version: , current host: 192.168.31.105
ZooKeeper JMX enabled by default
Using config: /var/folders/rm/xplq6_5j1s19bxtv8s6vprj80000gp/T/dubbo-mocked-zookeeper/2181/apache-zookeeper-3.6.0-bin/conf/zoo.cfg
[13/11/21 18:25:35:286 CST] main  INFO processor.StartZookeeperUnixProcessor:  [DUBBO] The zookeeper-2182 is starting..., dubbo version: , current host: 192.168.31.105
ZooKeeper JMX enabled by default
Using config: /var/folders/rm/xplq6_5j1s19bxtv8s6vprj80000gp/T/dubbo-mocked-zookeeper/2182/apache-zookeeper-3.6.0-bin/conf/zoo.cfg
十一月 13, 2021 6:25:35 下午 org.junit.platform.launcher.core.TestExecutionListenerRegistry lambda$notifyEach$1
警告: TestExecutionListener [org.apache.dubbo.test.check.RegistryCenterStarted] threw exception for method: testPlanExecutionStarted(org.junit.platform.launcher.core.InternalTestPlan@7dda48d9)
java.lang.IllegalStateException: Failed to start zookeeper instance in unit test
	at org.apache.dubbo.test.check.RegistryCenterStarted.testPlanExecutionStarted(RegistryCenterStarted.java:36)
	at org.junit.platform.launcher.core.TestExecutionListenerRegistry$CompositeTestExecutionListener.lambda$testPlanExecutionStarted$12(TestExecutionListenerRegistry.java:115)
	at org.junit.platform.launcher.core.TestExecutionListenerRegistry.lambda$notifyEach$1(TestExecutionListenerRegistry.java:67)
	at java.util.ArrayList.forEach(ArrayList.java:1255)
	at org.junit.platform.launcher.core.TestExecutionListenerRegistry.notifyEach(TestExecutionListenerRegistry.java:65)
	at org.junit.platform.launcher.core.TestExecutionListenerRegistry.access$200(TestExecutionListenerRegistry.java:32)
	at org.junit.platform.launcher.core.TestExecutionListenerRegistry$CompositeTestExecutionListener.testPlanExecutionStarted(TestExecutionListenerRegistry.java:115)
	at org.junit.platform.launcher.core.DefaultLauncher.lambda$execute$5(DefaultLauncher.java:200)
	at org.junit.platform.launcher.core.DefaultLauncher.withInterceptedStreams(DefaultLauncher.java:226)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:199)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:132)
	at com.intellij.junit5.JUnit5IdeaTestRunner.startRunnerWithArgs(JUnit5IdeaTestRunner.java:71)
	at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:33)
	at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:221)
	at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:54)
Caused by: org.apache.dubbo.test.check.exception.DubboTestException: Ready pattern not found in log, log: 
Starting zookeeper ... already running as process 73031.
	at org.apache.dubbo.test.check.registrycenter.processor.ZookeeperUnixProcessor.awaitProcessReady(ZookeeperUnixProcessor.java:83)
	at org.apache.dubbo.test.check.registrycenter.processor.ZookeeperUnixProcessor.process(ZookeeperUnixProcessor.java:45)
	at org.apache.dubbo.test.check.registrycenter.ZookeeperRegistryCenter.startup(ZookeeperRegistryCenter.java:151)
	at org.apache.dubbo.test.check.registrycenter.GlobalRegistryCenter.startup(GlobalRegistryCenter.java:35)
	at org.apache.dubbo.test.check.RegistryCenterStarted.testPlanExecutionStarted(RegistryCenterStarted.java:33)
	... 14 more
```

2181/apache-zookeeper-bin/logs/zookeeper-xxx.log
```
"logs/zookeeper-gongdewei-server-mbp1649.local.out" 104L, 17640C
2021-11-13 19:48:22,772 [myid:] - INFO  [main:DefaultSessionIdManager@333] - DefaultSessionIdManager workerName=node0
2021-11-13 19:48:22,772 [myid:] - INFO  [main:DefaultSessionIdManager@338] - No SessionScavenger set, using defaults
2021-11-13 19:48:22,776 [myid:] - INFO  [main:HouseKeeper@140] - node0 Scavenging every 600000ms
2021-11-13 19:48:22,786 [myid:] - INFO  [main:ContextHandler@825] - Started o.e.j.s.ServletContextHandler@4d41cee{/,null,AVAILABLE}
2021-11-13 19:48:22,796 [myid:] - ERROR [main:ZooKeeperServerMain@85] - Unable to start AdminServer, exiting abnormally
org.apache.zookeeper.server.admin.AdminServer$AdminServerException: Problem starting AdminServer on address 0.0.0.0, port 8081 and command URL /commands
        at org.apache.zookeeper.server.admin.JettyAdminServer.start(JettyAdminServer.java:176)
        at org.apache.zookeeper.server.ZooKeeperServerMain.runFromConfig(ZooKeeperServerMain.java:153)
        at org.apache.zookeeper.server.ZooKeeperServerMain.initializeAndRun(ZooKeeperServerMain.java:112)
        at org.apache.zookeeper.server.ZooKeeperServerMain.main(ZooKeeperServerMain.java:67)
        at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:140)
        at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:90)
Caused by: java.io.IOException: Failed to bind to /0.0.0.0:8081
        at org.eclipse.jetty.server.ServerConnector.openAcceptChannel(ServerConnector.java:346)
        at org.eclipse.jetty.server.ServerConnector.open(ServerConnector.java:307)
        at org.eclipse.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:80)
        at org.eclipse.jetty.server.ServerConnector.doStart(ServerConnector.java:231)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
        at org.eclipse.jetty.server.Server.doStart(Server.java:385)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
        at org.apache.zookeeper.server.admin.JettyAdminServer.start(JettyAdminServer.java:167)
        ... 5 more
Caused by: java.net.BindException: Address already in use
        at sun.nio.ch.Net.bind0(Native Method)
        at sun.nio.ch.Net.bind(Net.java:444)
        at sun.nio.ch.Net.bind(Net.java:436)
        at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:225)
        at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
        at org.eclipse.jetty.server.ServerConnector.openAcceptChannel(ServerConnector.java:342)
        ... 12 more
Unable to start AdminServer, exiting abnormally
2021-11-13 19:48:22,800 [myid:] - INFO  [main:ZKAuditProvider@42] - ZooKeeper audit is disabled.
2021-11-13 19:48:22,801 [myid:] - ERROR [main:ServiceUtils@42] - Exiting JVM with code 4
```

It seems port `8081` is already used by other process.

/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package org.apache.dubbo.test.check.registrycenter.config;
import org.apache.dubbo.test.check.registrycenter.Config;
/**
 * The zookeeper config in registry center.
 */
public class ZookeeperConfig implements Config {
    /**
     * The system properties config key with zookeeper port.
     */
    private static final String ZOOKEEPER_PORT_KEY = "zookeeper.port";