> [!CAUTION]
> **Caution:** This documentation covers Edge for Private Cloud 4.18.05, which is no longer supported. Google does not provide security patches, bug fixes, or technical support for this version. The current supported version is 4.54.00. See the [Edge for Private Cloud documentation](https://docs.apigee.com/private-cloud/latest/overview) for the current version, or [All versions](https://docs.apigee.com/private-cloud/versions) to compare releases.

*Edge for Private Cloud v4.18.05*

It is a good practice to disable reachability on a server during maintenance, such
as for a server restart or upgrade. When reachability is disabled, no traffic is directed to the
server. For example, when reachability is disabled on a Message Processor, Routers will not
direct any traffic to that Message Processor.

For example, to upgrade a Message Processor, you can use the following procedure:

1. Disable reachability on the Message Processor.
2. Upgrade the Message Processor.
3. Enable reachability on the Message Processor.

> [!NOTE]
> **Note:** In some configurations there may be a number of Routers behind a Load Balancer (ELB). The ELB might be configured to monitor port 15999 on the Routers. If the load balancer cannot access port 15999 on the Router it assumes the Router is down and you can restart the Router.

## Disabling/enabling reachability on
a Message Processor

To disable reachability on Message Processor, you can just stop the
Message Processor:

```
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor stop
```

The Message Processor first processes any pending messages before it shuts down. Any new
requests are routed to other available Message Processors.

To restart the Message Processor, use the following commands:

    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor start
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor wait_for_ready

The `wait_for_ready` command returns the following message when the Message
Processor is ready to process messages:

```
Checking if message-processor is up: message-processor is up.
```

## Disabling/enabling reachability on a
Router

In a production environment, you typically have a load balancer in front of the Edge Routers.
Load balancers monitor port 15999 on the Routers to ensure that the Route is available.

Configure the load balancer to perform an HTTP or TCP health check on the Router using the
following URL:

```
http://router_IP:15999/v1/servers/self/reachable
```

This URL returns an HTTP 200 response code if the Router is reachable.

To make a Router unreachable, you can block port 15999 on the Router. If the load balancer is
unable to access the Router on port 15999 it no longer forwards requests to the Router. For
example, you can block the port by using the following iptables command on the Router node:

```
sudo iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
```

To later make the Router available, flush iptables:

```
sudo iptables -F
```

You might be using iptables to manage other ports on the node so you have to take that into
consideration when you flush iptables or use iptables to block port 15999. If you are using
iptables for other rules, you can use the -D option to reverse the specific change:

```
sudo iptables -D INPUT -i eth0 -p tcp --dport 15999 -j REJECT
```

> [!NOTE]
> **Note:** As an alternative to checking reachability on the Router on port 15999, you can check the port on individual virtual hosts. For example, if you have a virtual host on port 9001, make a TCP check on that port. To make that port unreachable, you can use the following iptables command:
>
> ```
> sudo iptables -A INPUT -i eth0 -p tcp --syn --dport 9001 -j REJECT
> ```

## Checking the status of Router or Message
Processor

To get the status of a Router, make a request to port 8081 on the Router:

```
curl -v http://router_IP:8081/v1/servers/self/up
```

If the Router is up, the request returns "true" in the response and HTTP 200. Note that this
call only checks if the Router is up and running. Control of the Router's reachability from a
load balancer is determinedby port 15999

To get the status of a Message Processor:

```
curl http://Message_Processor_IP:8082/v1/servers/self/up
```