Coder Social home page Coder Social logo

qiushenglu / calico-containers Goto Github PK

View Code? Open in Web Editor NEW

This project forked from projectcalico/calicoctl

0.0 2.0 0.0 28.78 MB

Project Calico deployed in a containerized environment

Home Page: http://www.projectcalico.org

License: Apache License 2.0

Makefile 2.26% Shell 0.89% Python 96.85%

calico-containers's Introduction

Build Status CircleCI branch Coverage Status Docker Pulls

Slack Status IRC Channel

Calico for containers

Calico provides a highly scalable networking solution for connecting data center workloads (containers, VMs, or bare metal). It is based on the same scalable IP networking principles as the internet: providing connectivity using a pure Layer 3 approach. Calico can be deployed without encapsulation or overlays to provide high performance at massive scales.

Read more about it on the Project Calico website.

When using Calico networking in containerized environments, each container gets its own IP and fine grain security policy. A calico-node service runs on each node which handles all of the necessary IP routing, installation of policy rules, and distribution of routes across the cluster of nodes.

This repository contains:

  • The calico-node container Dockerfile and build environment. It contains the configuration and "glue" that pull together four separate processes to provide Calico networking:
  • Felix, the Calico worker process
  • BIRD, the route distribution process (there are separate processes for IPv4 and IPv6)
  • Confd, a templating process to auto-generate configuration for BIRD
  • A command line tool, calicoctl, which makes it easy to configure and start the Calico service listed above, and allows you to interact with the datastore (etcd) to define and apply rich security policy to the containers you create.
  • Documentation and getting started tutorials for various different deployment options.
  • Build, test and release frameworks.

Development is very active at the moment so please Star this project and check back often.

We welcome questions/comments/feedback (and pull requests).

Getting started

To get started using Calico, we recommend running through one or more of the available tutorials linked below.

These tutorials will help you understand the different environment options when using Calico. In most cases we provide worked examples using manual setup on your own servers, a quick set-up in a virtualized environment using Vagrant and a number of cloud services.

Further reading

You can read more about Calico networking in a containerized environment in the material listed below.

  • Learn how to configure Calico features in a deployment
    • calicoctl Reference Guide explains how the calicoctl command line tool can be used to manage your Calico cluster
    • Logging describes how to set logging levels and choose where Calico logs should be stored
    • Advanced Network Policy describes how to configure security policy between Calico endpoints and other networks
    • BGP Configuration explains how to manage the BGP peering for integration of a Calico cluster in your network
    • External Connectivity describes how to configure external connectivity for hosts on their own Layer 2 segment
    • Running Calico Node Containers as Services describes how to run the calico/node and calico/node-libnetwork images as system processes or services. This guide includes example config for systemd services.
  • Learn how Calico works under the covers
  • Learn how to get involved with Calico builds and lower level integrations
  • FAQ and Troubleshooting

If you are interested in contributing, please review our contributing guidelines.

Analytics

calico-containers's People

Contributors

tomdee avatar alexaltair avatar trimbiggs avatar djosborne avatar matthewdupre avatar paultiplady avatar caseydavenport avatar luke-mino-altherr avatar ozdanborne avatar alexwlchan avatar symmetric avatar tonicmuroq avatar chengweiv5 avatar grkvlt avatar thomaslohner avatar fasaxc avatar depay avatar lukasa avatar insequent avatar lwr20 avatar makuk66 avatar calpicow avatar robbrockbank avatar

Watchers

James Cloos avatar luqiusheng avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.