Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/estahn/cloudping
Identifies geographically closest cloud provider region
https://github.com/estahn/cloudping
aws ci docker golang
Last synced: 19 days ago
JSON representation
Identifies geographically closest cloud provider region
- Host: GitHub
- URL: https://github.com/estahn/cloudping
- Owner: estahn
- License: apache-2.0
- Created: 2019-01-11T11:50:41.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2024-10-01T01:19:24.000Z (about 2 months ago)
- Last Synced: 2024-10-15T14:42:49.975Z (about 1 month ago)
- Topics: aws, ci, docker, golang
- Language: Shell
- Homepage:
- Size: 484 KB
- Stars: 18
- Watchers: 2
- Forks: 3
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# cloudping
[![CircleCI](https://img.shields.io/circleci/project/github/badges/shields/master.svg?style=for-the-badge)](https://circleci.com/gh/estahn/cloudping)
[![GoDoc](https://img.shields.io/badge/godoc-reference-5272B4.svg?style=for-the-badge)](https://godoc.org/github.com/estahn/cloudping)
[![Github All Releases](https://img.shields.io/github/downloads/estahn/cloudping/total.svg?style=for-the-badge)](https://github.com/estahn/cloudping/releases)cloudping identifies the cloud provider regions geographically closest and returns them in order of lowest to highest latency.
> Inspired by [CloudPing.info](https://www.cloudping.info/).
## Table of Contents
- [Usage](#usage)
- [Installation](#installation)
* [Binaries](#binaries)
* [Via Go](#via-go)
* [Homebrew on macOS](#homebrew-on-macos)
- [Why?](#why)
- [Similar projects](#similar-projects)
- [Contributing](#contributing)## Usage
```console
$ cloudping -h
cloudping identifies the cloud provider regions geographically closest
and returns them in order of lowest to highest latency.Usage:
cloudping [flags]
cloudping [command]Available Commands:
help Help about any command
version Print the version number of cloudpingFlags:
-h, --help help for cloudping
--limit int Limits the number of regions returned
--output string Output format. One of: txt, json, yaml (default "txt")
--provider string Cloud provider (default "aws")
--regions strings Limits checks to specific regions
--timeout int Timeout for each region in milliseconds (default 500)Use "cloudping [command] --help" for more information about a command.
```The following example checks and returns only 2 regions:
```console
$ cloudping --provider=aws --regions=ap-southeast-2,us-east-1
ap-southeast-2
us-east-1
```## Installation
Here are a few methods to install `cloudping`.
### Binaries
```console
$ curl -sSL https://raw.githubusercontent.com/estahn/cloudping/master/godownloader.sh | sh
```### Via Go
```console
$ go get github.com/estahn/cloudping
```### Homebrew on macOS
If you are on macOS and using [Homebrew](https://brew.sh/) package manager, you can install cloudping with Homebrew.
1. Run the installation command:
```console
$ brew install estahn/tap/cloudping
```
2. Test to ensure the version you installed is sufficiently up-to-date:
```console
$ cloudping version
```## Why?
The idea came from the need to download images from the geographically closest docker registry.
We operate our Kubernetes cluster in Sydney/Australia but use CircleCI operating in the US.
Because AWS ECR doesn't provide a common endpoint with geographically distributed backend we push our images to both locations.
Within our Makefile we can use `cloudping` to identify if images should be pulled from the US or Sydney.## Similar projects
* [CloudPing.info](https://www.cloudping.info/)
* [AWS Inter-Region Latency Monitoring](https://www.cloudping.co/)
* [GCP ping](http://www.gcping.com/)## Contributing
Contributions are greatly appreciated.
The maintainers actively manage the issues list, and try to highlight issues suitable for newcomers.
The project follows the typical GitHub pull request model.
See " [How to Contribute to Open Source](https://opensource.guide/how-to-contribute/) " for more details.
Before starting any work, please either comment on an existing issue, or file a new one.