prashanth26 / machine-controller-manager-provider-aws

AWS: gRPC based external driver for machine-controller-manager

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

machine-controller-manager-provider-aws

This project contains the external/out-of-tree driver implementation of machine-controller-manager for AWS. This implementation adheres to the machine-interface defined at following project:

Fundamental Design Principles:

Following are the basic principles kept in mind while developing the external driver.

  • Communication between external driver and machine-controller is achieved using gRPC mechanism.
  • External driver behaves as gRPC-server and machine-controller behaves as gRPC client.
  • Cloud-provider specific contract should be scoped under ProviderSpec field. ProviderSpec field is expected to be raw-bytes at machine-controller-side. External driver should have pre-defined typed-apis to parse the ProviderSpec to make necessary CP specific calls.
  • External drivers do not need to communicate with kubernetes api-server.
    • Kubeconfig may not be available to external-drivers.

Sequence Diagram:

Sequence Diagram

About

AWS: gRPC based external driver for machine-controller-manager

License:Other


Languages

Language:Go 91.8%Language:Shell 6.0%Language:Makefile 2.1%Language:Dockerfile 0.1%