fabric_cf


Namefabric_cf JSON
Version 1.6.2 PyPI version JSON
download
home_pageNone
SummaryFabric Control Framework
upload_time2024-02-26 14:42:12
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseNone
keywords swagger fabric control framework
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            [![PyPI](https://img.shields.io/pypi/v/fabric-cf?style=plastic)](https://pypi.org/project/fabric-cf/)

# Control Framework
This repository contains Fabric Control Framework and Actor implementations.

## Overview
Fabric Control Framework has 3 actors
- Controller
- Broker
- Aggregate Manager

## Broker
Broker is an agent of CF that collects resource availability information from multiple aggregate managers and can make resource promises on their behalf. More details can be found [here](fabric_cf/broker/Readme.md)

## Aggregate Manager
AM is a CF agent responsible for managing aggregate resources. Is under the control of the owner of the aggregate. Provides promises of resources to brokers and controllers/ orchestrators. More details can be found [here](fabric_cf/authority/Readme.md)

## Orchestrator
Orchestrator is an agent of CF that makes allocation decisions (embedding) of user requests into available resources. Communicates with user to collect slice requests, communicates with broker or aggregate managers to collect resource promises, communicates with aggregate managers to provision promised resources. Creates slices, configures resources, maintains their state, modifies slices and slivers. More details can be found [here](fabric_cf/orchestrator/README.md)

## Architecture
The following diagram depicts an overall architecture for the Control Framework.
![Architecture](./images/cf.png)

## Requirements
Python 3.9+

## Build Docker Images

### Authority Docker Image
```
docker build -f Dockerfile-auth -t authority .
```

### Broker Docker Image
```
docker build -f Dockerfile-broker -t broker .
```

### Orchestrator Docker Image
```
docker build -f Dockerfile-orchestrator -t orchestrator .
```

## Configuration pre-requisites
- Kafka Configuration
  - Request topic, consumer and producer credentials for each Actor from [Song](ywsong2@g.uky.edu) 
  - Request Hosts running the Actors to be added to Kafka Brokers and Schema Registry Firewall
  - Make sure to configure consumer.group.id different for each actor

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "fabric_cf",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "Swagger,Fabric Control Framework",
    "author": null,
    "author_email": "Komal Thareja <kthare10@renci.org>, Ilya Baldin <ibaldin@renci.org>",
    "download_url": "https://files.pythonhosted.org/packages/14/f6/c714a0e3e264aa1212d310de8eb664067cc366159dcf558fb0c3f2e9f4aa/fabric_cf-1.6.2.tar.gz",
    "platform": null,
    "description": "[![PyPI](https://img.shields.io/pypi/v/fabric-cf?style=plastic)](https://pypi.org/project/fabric-cf/)\n\n# Control Framework\nThis repository contains Fabric Control Framework and Actor implementations.\n\n## Overview\nFabric Control Framework has 3 actors\n- Controller\n- Broker\n- Aggregate Manager\n\n## Broker\nBroker is an agent of CF that collects resource availability information from multiple aggregate managers and can make resource promises on their behalf. More details can be found [here](fabric_cf/broker/Readme.md)\n\n## Aggregate Manager\nAM is a CF agent responsible for managing aggregate resources. Is under the control of the owner of the aggregate. Provides promises of resources to brokers and controllers/ orchestrators. More details can be found [here](fabric_cf/authority/Readme.md)\n\n## Orchestrator\nOrchestrator is an agent of CF that makes allocation decisions (embedding) of user requests into available resources. Communicates with user to collect slice requests, communicates with broker or aggregate managers to collect resource promises, communicates with aggregate managers to provision promised resources. Creates slices, configures resources, maintains their state, modifies slices and slivers. More details can be found [here](fabric_cf/orchestrator/README.md)\n\n## Architecture\nThe following diagram depicts an overall architecture for the Control Framework.\n![Architecture](./images/cf.png)\n\n## Requirements\nPython 3.9+\n\n## Build Docker Images\n\n### Authority Docker Image\n```\ndocker build -f Dockerfile-auth -t authority .\n```\n\n### Broker Docker Image\n```\ndocker build -f Dockerfile-broker -t broker .\n```\n\n### Orchestrator Docker Image\n```\ndocker build -f Dockerfile-orchestrator -t orchestrator .\n```\n\n## Configuration pre-requisites\n- Kafka Configuration\n  - Request topic, consumer and producer credentials for each Actor from [Song](ywsong2@g.uky.edu) \n  - Request Hosts running the Actors to be added to Kafka Brokers and Schema Registry Firewall\n  - Make sure to configure consumer.group.id different for each actor\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Fabric Control Framework",
    "version": "1.6.2",
    "project_urls": {
        "Home": "https://fabric-testbed.net/",
        "Sources": "https://github.com/fabric-testbed/ControlFramework"
    },
    "split_keywords": [
        "swagger",
        "fabric control framework"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "754079cc61f778977874fe61fb5508ae5fcf71f751d52e56296f09fcccc7a294",
                "md5": "6e8c7438425ba0e11b9e9538932df4a2",
                "sha256": "45c95d5c38c1e771332c0421174bd256309711cc316f8bf8a086f38d41a1fb06"
            },
            "downloads": -1,
            "filename": "fabric_cf-1.6.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "6e8c7438425ba0e11b9e9538932df4a2",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 944827,
            "upload_time": "2024-02-26T14:42:09",
            "upload_time_iso_8601": "2024-02-26T14:42:09.659877Z",
            "url": "https://files.pythonhosted.org/packages/75/40/79cc61f778977874fe61fb5508ae5fcf71f751d52e56296f09fcccc7a294/fabric_cf-1.6.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "14f6c714a0e3e264aa1212d310de8eb664067cc366159dcf558fb0c3f2e9f4aa",
                "md5": "8a4b9db71e59e5abd2b0e8f32ebda829",
                "sha256": "594106a820fe76a6d2113ae34ef3067d66fbad16adb38dc16c02957e37269ce1"
            },
            "downloads": -1,
            "filename": "fabric_cf-1.6.2.tar.gz",
            "has_sig": false,
            "md5_digest": "8a4b9db71e59e5abd2b0e8f32ebda829",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 857703,
            "upload_time": "2024-02-26T14:42:12",
            "upload_time_iso_8601": "2024-02-26T14:42:12.883657Z",
            "url": "https://files.pythonhosted.org/packages/14/f6/c714a0e3e264aa1212d310de8eb664067cc366159dcf558fb0c3f2e9f4aa/fabric_cf-1.6.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-02-26 14:42:12",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "fabric-testbed",
    "github_project": "ControlFramework",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "tox": true,
    "lcname": "fabric_cf"
}
        
Elapsed time: 0.19159s