Centralized cloud platforms have been widely utilized for data-intensive computing in many domains. However, such systems are not suitable for geo-distributed applications since they require data to be moved to a central location for processing. Recent works have proposed an alternative cloud platform, called edge cloud that provides computational and/or storage resources at the edge, enabling in-situ data processing and low latency. Although such a dispersed cloud model offers low latency, it comes with reliability trade-offs. First, edge resources are interconnected using a wide-area network which is less reliable compared to an intra-cluster network. Second, resources in the edge cloud are typically highly heterogeneous leading to performance variability. Third, edge resources may span different organizational domains, containing different participation rules, leading to greater unreliability. In this paper, we discuss the issues of reliable computation and data storage availability in a geodistributed edge cloud system built using commodity resources. We introduce a notion of reliability factor which defines how reliable a node is. Using this reliability factor, we schedule tasks to a set of nodes to meet a certain reliability goal and dynamically replicate data to achieve timeliness for computation and high data availability for data storage respectively. We evaluate our techniques on the Nebula edge cloud and find that the use of reliability factor results in better performance and storage utilization.