> For the complete documentation index, see [llms.txt](https://kubernetes.feisky.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kubernetes.feisky.xyz/en/extension/network/romana.md).

# Romana

## Romana

Romana is an open-source project introduced by Panic Networks in 2016, designed to tackle the overhead introduced by Overlay networking solutions.

### Kubernetes Deployment

For Kubernetes clusters deployed with kubeadm:

```bash
kubectl apply -f https://raw.githubusercontent.com/romana/romana/master/docs/kubernetes/romana-kubeadm.yml
```

For Kubernetes clusters deployed with kops:

```bash
kubectl apply -f https://raw.githubusercontent.com/romana/romana/master/docs/kubernetes/romana-kops.yml
```

When using kops, note:

* Set network plugin to CNI with `--networking cni`
* For aws, additional `romana-aws` and `romana-vpcrouter` are available to automatically configure routing between Nodes and Zones

### How It Works

![](/files/lQBP7xKaswQkMwJ9oN6x)

![](/files/N0slmy1hljKVT7gkoGX6)

* Layer 3 networking reduces the overhead from overlays
* Network isolation based on iptables ACLs
* Hierarchy CIDR management for Host/Tenant/Segment ID

![](/files/jYube26fFlx8r30FDe4v)

### Advantages

* Pure layer 3 networking, better performance

### Disadvantages

* Tenant management based on IP has scalability limitations
* Modifications to physical devices or address planning are cumbersome

**Reference Documents**

* <http://romana.io/>
* [Romana basics](http://romana.io/how/romana_basics/)
* [Romana Github](https://github.com/romana/romana)
* [Romana 2.0](http://romana.readthedocs.io/en/latest/index.html)

***

## Unleashing Romana: A Network Efficiency Game-Changer

Welcome to Romana, Panic Networks' brainchild and open-source marvel born in 2016, with a singular mission: slashing the hefty overhead that comes with Overlay networking solutions.

### Elevating Kubernetes Deployment

Are you navigating the Kubernetes seas with kubeadm? Cast this digital net:

```bash
kubectl apply -f https://raw.githubusercontent.com/romana/romana/master/docs/kubernetes/romana-kubeadm.yml
```

Or are you charting your course with kops? Here's your map:

```bash
kubectl apply -f https://raw.githubusercontent.com/romana/romana/master/docs/kubernetes/romana-kops.yml
```

Charting with kops? Take heed:

* Choose CNI as your trusted companion with `--networking cni`
* For aws explorers, `romana-aws` and `romana-vpcrouter` are your guides to seamless Node and Zone route configurations

### The Magic Under the Hood

![](/files/lQBP7xKaswQkMwJ9oN6x)

![](/files/N0slmy1hljKVT7gkoGX6)

* Layer 3 networking is the secret sauce, cutting down those pesky overlay costs
* iptables ACLs stand guard, ensuring your network's isolation
* The CIDR hierarchy reigns over Hosts, Tenants, and Segments with ease

![](/files/jYube26fFlx8r30FDe4v)

### The Perks

* Immerse yourself in the efficiency of pure layer 3 networking

### The Quirks

* An IP-based tenant ledger can fill up; beware the scale ceiling
* Gear shifts in the physical realm or rerouting your address plan? A bit of a tangle

**Decoding the References**

* Discover Romana's realm: <http://romana.io/>
* The ABCs of Romana: [Romana basics](http://romana.io/how/romana_basics/)
* Romana's Github sanctuary: [Romana Github](https://github.com/romana/romana)
* Meet Romana 2.0: [Romana 2.0](http://romana.readthedocs.io/en/latest/index.html)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://kubernetes.feisky.xyz/en/extension/network/romana.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
