Abstract:
Persistent advancements are being made at a rapid pace on enabling edge com puting for the Internet of Things technology to capitalize on. Vendors and developers are exploring new techniques to smooth out the process of navigating through the inherent heterogeneity of the edge networks. However, application delivery, resource allocation, fault tolerance, and security issues are yet to be fully solved while also pro viding a seamless experience for consumers. With virtualization and lightweight con tainer management platforms providing an abstraction layer, it is possible to deploy the same application on devices with different architectures and achieve uniformity. Towards a fully decentralized edge, the framework proposed in this thesis lays down the groundworks for dynamic container orchestration. It provides a blockchain based delivery platform for container applications with their updates and resource specifications through a registry on a distributed file system, namely InterPlanetary File System (IPFS). Then, enabled by the operating system virtualization, the framework handles resource allocation, container availability and scaling. A self-adaptive resource manager running on the metrics scraped from the host and the virtualization platform, i.e. Docker in our implementation, dynamically optimizes the resources allocated to each container. The framework ensures that variable workloads of a heterogeneous environment can co- exist on an edge device that is designed to be further extended to multiple devices. To achieve a truly distributed system, an event-driven architecture is built over a lightweight messaging protocol, MQTT, capitalizing on the asynchronous and distributed nature of the publish/subscribe pattern.