mirror of
https://github.com/fosrl/docs-v2.git
synced 2026-02-10 06:56:45 +00:00
Renaming to remote-nodes
This commit is contained in:
124
remote/convert-remote.mdx
Normal file
124
remote/convert-remote.mdx
Normal file
@@ -0,0 +1,124 @@
|
||||
---
|
||||
title: "Convert to Managed"
|
||||
description: "Learn how to convert your Community Edition Pangolin instance to a managed self-hosted node for free"
|
||||
---
|
||||
|
||||
<Info>
|
||||
Check out the [Managed Deployment Guide](/self-host/quick-install-remote) for more information on deploying a managed instance of Pangolin.
|
||||
</Info>
|
||||
|
||||
## Who is this for?
|
||||
|
||||
Use this guide if you have a self-hosted Pangolin instance and want to convert it to a managed deployment. It's pretty easy!
|
||||
|
||||
## What will happen to my data?
|
||||
|
||||
<Warning>
|
||||
**Always backup your data before updating.** Copy your `config` directory to a safe location so you can roll back if needed.
|
||||
</Warning>
|
||||
|
||||
Your existing Pangolin data will stay in the database, so feel free to try managed deployment without losing anything. If you want to go back, just reverse these steps.
|
||||
|
||||
## Migration
|
||||
|
||||
<Steps>
|
||||
<Step title="Sign up">
|
||||
Create an account on [Pangolin Cloud](https://pangolin.fossorial.io/auth/signup) if you don't have one already.
|
||||
</Step>
|
||||
|
||||
<Step title="Generate credentials">
|
||||
In the Pangolin Cloud dashboard, navigate to the "Self-hosted" section and generate a new ID and secret for this node. Make sure to copy this config, as you'll need it later.
|
||||
</Step>
|
||||
|
||||
<Step title="Prepare your instance">
|
||||
On your self-hosted Pangolin server:
|
||||
|
||||
1. Stop the Pangolin service:
|
||||
```bash
|
||||
docker-compose down
|
||||
```
|
||||
2. Ensure you have a backup of your `config` directory.
|
||||
3. Make sure your instance is [up to date](./how-to-update) with the latest versions of Pangolin, Gerbil, and Traefik.
|
||||
</Step>
|
||||
|
||||
|
||||
<Step title="Paste in the credentials">
|
||||
Exit your `config/config.yml` and paste the generated ID and secret managed config at the bottom of the file:
|
||||
|
||||
```yaml
|
||||
managed:
|
||||
id: <your-generated-id>
|
||||
secret: <your-generated-secret>
|
||||
```
|
||||
|
||||
You can leave the rest of your config the same.
|
||||
</Step>
|
||||
|
||||
|
||||
<Step title="Update your docker-compose">
|
||||
We need to update your `docker-compose.yml` file to use the new managed configuration. Its a good idea to backup the old one.
|
||||
|
||||
First change the gerbil port `443:443` to `443:8443`. This will send traffic to the Gerbil SNI proxy server before hitting Traefik downstream.
|
||||
|
||||
```
|
||||
gerbil:
|
||||
ports:
|
||||
- "443:8443" # <----- It should look like this now
|
||||
```
|
||||
|
||||
Second, add a volume to sync the certs and file based Traefik config between Pangolin and Traefik. At the bottom of the file:
|
||||
|
||||
```yaml
|
||||
volumes:
|
||||
pangolin-data:
|
||||
```
|
||||
|
||||
Then in Traefik:
|
||||
```yaml
|
||||
traefik:
|
||||
volumes:
|
||||
- ./config/traefik:/etc/traefik:ro # Volume to store the Traefik configuration
|
||||
- ./config/letsencrypt:/letsencrypt # Volume to store the Let's Encrypt certificates
|
||||
- ./config/traefik/logs:/var/log/traefik # Volume to store Traefik logs
|
||||
# Shared volume for certificates and dynamic config in file mode
|
||||
- pangolin-data:/var/certificates:ro
|
||||
- pangolin-data:/var/dynamic:ro
|
||||
```
|
||||
|
||||
And in Pangolin
|
||||
```yaml
|
||||
pangolin:
|
||||
volumes:
|
||||
- ./config:/app/config
|
||||
- pangolin-data:/var/certificates
|
||||
- pangolin-data:/var/dynamic
|
||||
```
|
||||
</Step>
|
||||
|
||||
<Step title="Add ping to Traefik">
|
||||
Edit your `config/traefik/traefik_config.yml` file to add a ping endpoint for health checks. Add this to the bottom of the file:
|
||||
|
||||
```yaml
|
||||
ping:
|
||||
entryPoint: "web"
|
||||
```
|
||||
</Step>
|
||||
|
||||
<Step title="Bring up the stack">
|
||||
Start the updated stack with Docker Compose:
|
||||
```bash
|
||||
docker-compose up -d
|
||||
```
|
||||
</Step>
|
||||
|
||||
<Step title="Configure your account">
|
||||
Pangolin is now controlled through the [Pangolin Cloud](https://pangolin.fossorial.io/auth/signup) dashboard. Make sure to bring your domain and recreate your sites and resources.
|
||||
|
||||
<Tip>
|
||||
If you move your whole domain away from your VPS to Pangolin Cloud, make sure to update your `base_endpoint` under the `gerbil:` section of your `config.yml` to be the IP address of your instance otherwise we cant resolve your instance in DNS.
|
||||
</Tip>
|
||||
|
||||
In the future, we plan to allow importing config!
|
||||
</Step>
|
||||
|
||||
</Steps>
|
||||
104
remote/nodes.mdx
Normal file
104
remote/nodes.mdx
Normal file
@@ -0,0 +1,104 @@
|
||||
---
|
||||
title: "Highly Available Nodes"
|
||||
description: "Learn about Pangolin's network of nodes and how they provide highly available, low-latency access to your applications"
|
||||
---
|
||||
|
||||
Pangolin's nodes are an ability to put strategically located servers around the world that serve as entry points for user traffic to your applications. They form the foundation of Pangolin's distributed architecture, providing high availability and optimal performance.
|
||||
|
||||
## What Are Nodes?
|
||||
|
||||
<CardGroup cols={2}>
|
||||
<Card title="Entry Points" icon="door-open">
|
||||
Handle incoming user requests before routing them to your applications.
|
||||
</Card>
|
||||
|
||||
<Card title="Global Coverage" icon="globe">
|
||||
Located regionally to minimize latency for users in different regions.
|
||||
</Card>
|
||||
|
||||
<Card title="High Availability" icon="shield-check">
|
||||
Multiple locations ensure your applications remain accessible even if individual locations fail.
|
||||
</Card>
|
||||
|
||||
<Card title="Authentication" icon="key">
|
||||
Verify user identity and enforce access policies before allowing access.
|
||||
</Card>
|
||||
</CardGroup>
|
||||
|
||||
<Info>
|
||||
Think of different nodes as the "front doors" to your applications - users connect to the closest one, and it securely routes their requests to your backend services.
|
||||
</Info>
|
||||
|
||||
## How Nodes Work
|
||||
|
||||
<Steps>
|
||||
<Step title="Ingress Routing">
|
||||
Request is routed to the closest available node. If one goes down, there is always another node available.
|
||||
</Step>
|
||||
|
||||
<Step title="Authentication">
|
||||
User identity is verified at the node before getting routed to your backend.
|
||||
</Step>
|
||||
|
||||
<Step title="Tunnel Selection">
|
||||
Pangolin selects the optimal tunnel route to your backend service. Site tunnel clients (Newt) connect to the optimal node.
|
||||
</Step>
|
||||
|
||||
<Step title="Failover Handling">
|
||||
If the primary tunnel fails, traffic automatically switches to an alternative route.
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
## Advantages of Nodes
|
||||
|
||||
<CardGroup cols={2}>
|
||||
<Card title="Low Latency" icon="bolt">
|
||||
Users connect to the geographically closest node.
|
||||
</Card>
|
||||
|
||||
<Card title="Optimized Routing" icon="route">
|
||||
Automatic selection of the best available tunnel to route to your backend services.
|
||||
</Card>
|
||||
|
||||
<Card title="Edge Computing" icon="microchip">
|
||||
Provide ingress to thin-clients on private networks via tunnels.
|
||||
</Card>
|
||||
|
||||
<Card title="Health Monitoring" icon="heart-pulse">
|
||||
Each node continuously monitors its health and connectivity to your backend.
|
||||
</Card>
|
||||
</CardGroup>
|
||||
|
||||
<CardGroup cols={2}>
|
||||
<Card title="Regional Redundancy" icon="check-double">
|
||||
Multiple nodes ensure your applications remain accessible during regional outages.
|
||||
</Card>
|
||||
|
||||
<Card title="Fault Tolerance" icon="shield">
|
||||
No single point of failure - if one location goes down, there is always a way back to your application.
|
||||
</Card>
|
||||
</CardGroup>
|
||||
|
||||
## Deployment Models
|
||||
|
||||
<CardGroup cols={3}>
|
||||
<Card title="Pangolin Cloud" icon="cloud" href="https://pangolin.fossorial.io/auth/signup">
|
||||
Network of nodes with automatic failover and routing to your backend services.
|
||||
</Card>
|
||||
|
||||
<Card title="Managed" icon="circle-nodes" href="/manage/managed">
|
||||
Host your own multiple nodes with cloud coordination and automatic failover. Data always transits your servers.
|
||||
</Card>
|
||||
|
||||
<Card title="Self-Hosted" icon="server" href="/self-host/quick-install">
|
||||
Fully self-hosted, self-contained Pangolin server acting as a single node.
|
||||
</Card>
|
||||
</CardGroup>
|
||||
|
||||
<Warning>
|
||||
Self-hosted Pangolin provides only a single node and is not highly available. Consider Pangolin Cloud or managed deployment for production environments requiring high availability.
|
||||
</Warning>
|
||||
|
||||
<Tip>
|
||||
Managed deployment is ideal for organizations that need high availability while maintaining control over their infrastructure and data transit.
|
||||
</Tip>
|
||||
121
remote/quick-install-remote.mdx
Normal file
121
remote/quick-install-remote.mdx
Normal file
@@ -0,0 +1,121 @@
|
||||
---
|
||||
title: "Quick Install Guide"
|
||||
description: "Deploy your own managed Pangolin instance in under 10 minutes with our automated installer"
|
||||
---
|
||||
|
||||
<Note>
|
||||
|
||||
Self-host your own Pangolin node using the cloud control plane for out of the box high availability and a number of other benefits.
|
||||
**It's free and all traffic stays on your infrastructure.**
|
||||
|
||||
[Why would I want to deploy a managed Pangolin instance?](/manage/managed)
|
||||
|
||||
</Note>
|
||||
|
||||
<iframe
|
||||
className="w-full aspect-video rounded-xl"
|
||||
src="https://www.youtube.com/embed/iPdK8M0cb9s"
|
||||
title="YouTube video player"
|
||||
frameBorder="0"
|
||||
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
|
||||
allowFullScreen
|
||||
></iframe>
|
||||
|
||||
## Prerequisites
|
||||
|
||||
Before you begin, ensure you have:
|
||||
|
||||
- **Pangolin Cloud** account. You can [create a free account here](https://pangolin.fossorial.io/auth/signup). No subscription required.
|
||||
- **Linux server** with root access and public IP address.
|
||||
- **Open ports on firewall** for 80 (TCP), 443 (TCP), 51820 (UDP), and 21820 (UDP for clients).
|
||||
|
||||
<Tip>
|
||||
**Recommended**: Ubuntu 20.04+ or Debian 11+ for best compatibility and performance.
|
||||
</Tip>
|
||||
|
||||
## Choose Your Server
|
||||
|
||||
Need help choosing? See our [complete VPS guide](/self-host/choosing-a-vps) for suggestions.
|
||||
|
||||
## Networking
|
||||
|
||||
Before installing Pangolin, ensure you've opened the required port on your firewall. See our guide on [networking](/self-host/dns-and-networking#port-configuration) for more information.
|
||||
|
||||
## Installation Process
|
||||
|
||||
<Steps>
|
||||
<Step title="Download the installer">
|
||||
Connect to your server via SSH and download the installer:
|
||||
|
||||
```bash
|
||||
curl -fsSL https://digpangolin.com/get-installer.sh | bash
|
||||
```
|
||||
|
||||
The installer supports both AMD64 (x86_64) and ARM64 architectures.
|
||||
</Step>
|
||||
|
||||
<Step title="Run the installer">
|
||||
Execute the installer with root privileges:
|
||||
|
||||
```bash
|
||||
sudo ./installer
|
||||
```
|
||||
|
||||
The installer places all files in the current directory. Move the installer to your desired installation directory before running it.
|
||||
</Step>
|
||||
|
||||
<Step title="Do you already have credentials from the dashboard?">
|
||||
|
||||
If you are on your game and have already generated credentials for this node in the dashboard enter them here.
|
||||
|
||||
<Tip>
|
||||
If you don't have them yet you can just select no when asked and we will create it in a later step.
|
||||
</Tip>
|
||||
|
||||
</Step>
|
||||
|
||||
<Step title="The public addressable IP address for this node">
|
||||
|
||||
Enter either the public IP address of your server or a domain name that resolves to it.
|
||||
|
||||
<Note>
|
||||
The installer will attempt resolve and prefill your public IP address. Verify this is correct before preceding.
|
||||
</Note>
|
||||
|
||||
<Warning>
|
||||
If you choose to use a domain keep in mind this just resolves your node on the internet while the actual subdomains for resources will be managed in the cloud.
|
||||
</Warning>
|
||||
|
||||
</Step>
|
||||
|
||||
<Step title="Generate credentials">
|
||||
|
||||
If you did not enter credentials earlier then you should see something like the following:
|
||||
|
||||
```
|
||||
Your managed credentials have been obtained successfully.
|
||||
ID: he4g78wevj25msf
|
||||
Secret: n7sd18twfko0q0vrb7wyclqzbvvnx1fqt7ezv8xewhdb9s7d
|
||||
```
|
||||
|
||||
Go to the [Pangolin dashboard](https://pangolin.fossorial.io/) and log in. Navigate to the "Self-hosted" section and add a new node. Select the adopt method. Use this ID and secret to register your node.
|
||||
|
||||
<Tip>
|
||||
More than one account can use the same node credentials. This is useful for teams.
|
||||
</Tip>
|
||||
|
||||
</Step>
|
||||
|
||||
</Steps>
|
||||
|
||||
## Post-Installation Setup
|
||||
|
||||
Once installation completes successfully, you'll see:
|
||||
|
||||
```
|
||||
Installation complete!
|
||||
```
|
||||
|
||||
Navigate to the [Pangolin dashboard](https://pangolin.fossorial.io/) and create sites, resources, and targets for your managed node.
|
||||
|
||||
{/* ## Video Walkthrough */}
|
||||
72
remote/remote.mdx
Normal file
72
remote/remote.mdx
Normal file
@@ -0,0 +1,72 @@
|
||||
---
|
||||
title: "Remote Nodes"
|
||||
description: "More reliable and low-maintenance self-hosted Pangolin server with extra bells and whistles"
|
||||
---
|
||||
|
||||
**Remote Nodes** are a option designed for people who want simplicity and extra reliability while still keeping their data private and self-hosted.
|
||||
|
||||
With this option, you still run your own Pangolin node — your tunnels, SSL termination, and traffic all stay on your server. The difference is that management and monitoring are handled through our cloud dashboard, which unlocks a number of significant benefits.
|
||||
|
||||
<Tip>
|
||||
You can deploy a managed Pangolin node in seconds [using the installer](/self-host/quick-install-remote).
|
||||
</Tip>
|
||||
|
||||
## How It Works
|
||||
|
||||
The managed self-hosted approach gives you the best of both worlds:
|
||||
|
||||
- **You Host the Node**: You maintain complete control over your infrastructure and where your data flows. Your tunnels, SSL termination, and all traffic processing happen on your servers.
|
||||
- **We Handle Coordination**: Pangolin Cloud manages the control plane, DNS, certificate management, database, and backups through our cloud dashboard.
|
||||
- **Seamless Failover**: Deploy multiple nodes with automatic failover between them. If your nodes become unavailable, traffic can optionally fail over to our cloud infrastructure until you restore service.
|
||||
|
||||
<Frame>
|
||||
<img src="/images/ha.svg" width="400" centered/>
|
||||
</Frame>
|
||||
|
||||
## Why Choose Remote Nodes?
|
||||
|
||||
**Data Control & Privacy**: All your traffic flows through your own servers, giving you complete control over data transit, costs, and ensuring compliance with your security policies.
|
||||
|
||||
**Simplified High Availability**: Get enterprise-grade reliability without the complexity of managing distributed systems, load balancers, and monitoring infrastructure yourself.
|
||||
|
||||
**Reduced Operational Burden**: Focus on your core business while we handle the operational complexity of keeping your tunneling infrastructure running smoothly.
|
||||
|
||||
<Note>
|
||||
For detailed information about how nodes work and their advantages, see our [Nodes](/manage/nodes) documentation.
|
||||
</Note>
|
||||
|
||||
## Key Benefits
|
||||
|
||||
### Simpler Operations
|
||||
No need to run your own mail server or set up complex alerting. You'll get health checks and downtime alerts out of the box, making it much easier to monitor your infrastructure without additional complexity.
|
||||
|
||||
### Automatic Updates
|
||||
The cloud dashboard evolves quickly, so you get new features and bug fixes without having to manually pull new containers every time. Your self-hosted node stays current automatically.
|
||||
|
||||
### Less Maintenance
|
||||
No database migrations, backups, or extra infrastructure to manage. We handle that in the cloud, so you can focus on what matters most to your business.
|
||||
|
||||
### Cloud Failover
|
||||
If your node goes down, your tunnels can temporarily fail over to our cloud points of presence until you bring it back online. This ensures continuous availability even during maintenance windows.
|
||||
|
||||
### High Availability (PoPs)
|
||||
You can also attach multiple nodes to your account for redundancy and better performance. Deploy nodes across different regions or providers for maximum reliability.
|
||||
|
||||
### Future Enhancements
|
||||
We're planning to add more analytics, alerting, and management tools to make your deployment even more robust. You'll automatically benefit from these improvements as they're released.
|
||||
|
||||
## Getting Started
|
||||
|
||||
<Tip>
|
||||
You can deploy a managed Pangolin node in seconds [using the installer](/self-host/quick-install-remote).
|
||||
</Tip>
|
||||
|
||||
Ready to convert your existing self-hosted node to managed? Learn how in our [conversion guide](/self-host/convert-managed).
|
||||
|
||||
<Note>
|
||||
For detailed information about how nodes work and their advantages, see our [nodes](/manage/nodes) documentation.
|
||||
</Note>
|
||||
|
||||
<Tip>
|
||||
Managed deployment is ideal for organizations that need high availability and reduced operational overhead while maintaining complete control over their infrastructure and data transit.
|
||||
</Tip>
|
||||
Reference in New Issue
Block a user