Skip to content

Commit

Permalink
remove obsolete readme files
Browse files Browse the repository at this point in the history
Signed-off-by: Vladimir Lavor <vlavor@cisco.com>
  • Loading branch information
VladoLavor committed May 7, 2019
1 parent c4fe1a7 commit 18967c3
Show file tree
Hide file tree
Showing 26 changed files with 151 additions and 1,003 deletions.
166 changes: 101 additions & 65 deletions CHANGELOG.md

Large diffs are not rendered by default.

82 changes: 50 additions & 32 deletions README.md
Expand Up @@ -7,7 +7,7 @@
[![GitHub license](https://img.shields.io/badge/license-Apache%20license%202.0-blue.svg)](https://github.com/ligato/cn-infra/blob/master/LICENSE.md)

CN-Infra (cloud-native infrastructure) is a Golang framework for building
control plane agents for [cloud-native Virtual Network Functions][4] It is
control plane agents for cloud-native Virtual Network Functions It is
basically a collection of components/libraries used in most control plane
agents tied together with a common life-cycle management mechanism.

Expand All @@ -23,49 +23,50 @@ Plugins in the current CN-Infra release provide functionality in one of
the following functional areas:

* **RPC** - allows to expose application's API:
- [GRPC](rpc/grpc) - handles GRPC requests and allows app plugins to define
- [GRPC][docs-grpc] - handles GRPC requests and allows app plugins to define
their own GRPC services
- [REST](rpc/rest) - handles HTTP requests and allows app plugins to define
- [REST][docs-rest] - handles HTTP requests and allows app plugins to define
their own REST APIs
- [Prometheus](rpc/prometheus) - serves Prometheus metrics via HTTP and allows
- Prometheus - serves Prometheus metrics via HTTP and allows
app plugins to register their own collectors

* **Data Stores** - provides a common data store API for app plugins (the
Data Broker) and back-end clients. The data store related plugins are:
- [Consul](db/keyval/consul) - key-value data store adpater for Consul
- [Etcd](db/keyval/etcd) - key-value data store adpater for Etcd
- [Redis](db/keyval/redis) - key-value data store adpater for Redis
- [Casssandra](db/sql/cassandra) - key-value data store adpater for Cassandra
- [Consul][docs-consul] - key-value data store adpater for Consul
- [Etcd][docs-etcd] - key-value data store adpater for Etcd
- [Redis][docs-redis] - key-value data store adpater for Redis
- [Casssandra][cassandra] - key-value data store adpater for Cassandra
- [FileDB][docs-filedb] - key-value data store using OS filesystem

* **Messaging** - provides a common API and connectivity to message buses:
- [Kafka](messaging/kafka) - adapter for the Kafka message bus (built on top of
[Sarama](5))
- [Kafka][docs-kafka] - adapter for the Kafka message bus (built on top of
Sarama)

* **Logging**:
- [Logrus wrapper](logging/logrus) - implements logging skeleton
- [Logrus wrapper][logrus] - implements logging skeleton
using the Logrus library. An app writer can create multiple loggers -
for example, each app plugin can have its own logger. Log level
for each logger can be controlled individually at run time through
the Log Manager REST API.
- [Log Manager](logging/logmanager) - allows the operator to set log
- [Log Manager][docs-logmanager] - allows the operator to set log
level for each logger using a REST API.

* **Health Monitoring** - Self health check mechanism between plugins
plus RPCs:
- [StatusCheck](health/statuscheck) - allows to monitor the status of plugins
- [StatusCheck][docs-statuscheck] - allows to monitor the status of plugins
and exposes it via HTTP
- [Probe](health/probe) - callable remotely from K8s
- [Probe][probe] - callable remotely from K8s

* **Miscellaneous** - value-add plugins supporting the operation of a
CN-Infra based application:
- [Config](config) - helpers for loading plugin configuration.
- [Datasync](datasync/resync) - provides data resynchronization after HA
- [Config][config] - helpers for loading plugin configuration.
- [Datasync][resync] - provides data resynchronization after HA
events (restart or connectivity restoration after an outage) for data
stores, gRPC and REST.
- [IDX Map](idxmap) - reusable thread-safe map with advanced features:
- [IDX Map][idx-map] - reusable thread-safe map with advanced features:
* multiple subscribers for watching changes in the map
* secondary indexes
- [ServiceLabel](servicelabel) - provides setting and retrieval of a
- [ServiceLabel][docs-service-label] - provides setting and retrieval of a
unique identifier for a CN-Infra based app. A cloud app typically needs
a unique identifier so that it can differentiated from other instances
of the same app or from other apps (e.g. to have its own space in a kv
Expand All @@ -77,12 +78,12 @@ the following functional areas:
You can run this example code by using pre-build Docker images:

For quick start with the VPP Agent, you can use pre-build Docker images with the Agent and VPP
on [Dockerhub](https://hub.docker.com/r/ligato/dev-cn-infra/).
on [Dockerhub][dockerhub].

1. Run ETCD and Kafka on your host (e.g. in Docker
[using this procedure](examples/simple-agent/README.md)).
[using this procedure][simple-agent]).

2. Run cn-infra example [simple-agent](examples/simple-agent/agent.go).
2. Run cn-infra example [simple-agent][simple-agent].
```
docker pull ligato/dev-cn-infra
docker run -it --name dev-cn-infra --rm ligato/dev-cn-infra
Expand All @@ -104,14 +105,14 @@ func main() {
}
}
```
You can find the above example [here](examples/simple-agent/agent.go), from where it can be
You can find the above example [here][simple-agent], from where it can be
compiled and run in your favorite environment.

## Documentation

Detailed documentation (including tutorials) can be found [here](https://ligato.io/cn-infra).
Detailed documentation (including tutorials) can be found [here][ligato].

GoDocs can be browsed [online](https://godoc.org/github.com/ligato/cn-infra).
GoDocs can be browsed [online][godocs].

## Architecture

Expand All @@ -129,7 +130,7 @@ The architecture of the CN-Infra framework is shown in the following figure.

![arch](docs/imgs/high_level_arch_cninfra.png "High Level Architecture of cn-infra")

The CN-Infra framework consists of a **[Agent](agent)** that provides plugin
The CN-Infra framework consists of a **[Agent][agent]** that provides plugin
lifecycle management (initialization and graceful shutdown of plugins)
and a set of framework plugins. Note that the figure shows not only
CN-Infra plugins that are a part of the CN-Infra framework, but also
Expand All @@ -142,8 +143,8 @@ The framework is modular and extensible. Plugins supporting new functionality
existing set of CN-Infra framework plugins. Moreover, CN-Infra based apps
can be built in layers: a set of app plugins together with CN-Infra plugins
can form a new framework providing APIs/services to higher layer apps.
This approach was used in the [VPP Agent][3] - a management/control agent
for [VPP][2] based software data planes.,
This approach was used in the [VPP Agent][vpp-agent] - a management/control agent
for [VPP][vpp] based software data planes.,

Extending the code base does not mean that all plugins end up in all
apps - app writers can pick and choose only those framework plugins that
Expand All @@ -156,8 +157,25 @@ app.

If you are interested in contributing, please see the [contribution guidelines](CONTRIBUTING.md).

[1]: https://12factor.net/
[2]: https://fd.io
[3]: https://github.com/ligato/vpp-agent
[4]: docs/readmes/cn_virtual_function.md
[5]: https://github.com/Shopify/sarama
[agent]: agent
[cassandra]: db/sql/cassandra
[config]: config
[dockerhub]: https://hub.docker.com/r/ligato/dev-cn-infra/
[docs-consul]: https://docs.ligato.io/en/latest/plugins/db-plugins/#consul-plugin
[docs-etcd]: https://docs.ligato.io/en/latest/plugins/db-plugins/#etcd-plugin
[docs-grpc]: https://docs.ligato.io/en/latest/plugins/connection-plugins/#vpp-agent-grpc
[docs-kafka]: https://docs.ligato.io/en/latest/plugins/plugin-overview/#messagingkafka
[docs-logmanager]: https://docs.ligato.io/en/latest/plugins/infra-plugins/#log-manager
[docs-statuscheck]: https://docs.ligato.io/en/latest/plugins/infra-plugins/#status-check
[docs-redis]: https://docs.ligato.io/en/latest/plugins/db-plugins/#redis
[docs-rest]: https://docs.ligato.io/en/latest/plugins/connection-plugins/#rest-plugin
[docs-service-label]: https://docs.ligato.io/en/latest/plugins/infra-plugins/#service-label
[godocs]: https://godoc.org/github.com/ligato/vpp-agent
[idx-map]: idxmap
[ligato]: https://docs.ligato.io
[logrus]: logging/logrus
[probe]: health/probe
[resync]: datasync/resync
[simple-agent]: examples/simple-agent/README.md
[vpp]: https://fd.io
[vpp-agent]: https://github.com/ligato/vpp-agent
32 changes: 0 additions & 32 deletions agent/README.md

This file was deleted.

60 changes: 0 additions & 60 deletions datasync/README.md

This file was deleted.

21 changes: 0 additions & 21 deletions db/README.md

This file was deleted.

14 changes: 0 additions & 14 deletions db/keyval/README.md

This file was deleted.

27 changes: 0 additions & 27 deletions db/keyval/consul/README.md

This file was deleted.

37 changes: 0 additions & 37 deletions db/keyval/etcd/README.md

This file was deleted.

0 comments on commit 18967c3

Please sign in to comment.