Giter VIP home page Giter VIP logo

turbot / steampipe-plugin-equinix Goto Github PK

View Code? Open in Web Editor NEW
4.0 13.0 2.0 405 KB

Use SQL to instantly query infrastructure resources (e.g. servers, networks) from Equinix Metal. Open source CLI. No DB required.

Home Page: https://hub.steampipe.io/plugins/turbot/equinix

License: Apache License 2.0

Makefile 0.29% PLSQL 0.47% Go 99.24%
sql postgresql postgresql-fdw equinix-metal equinix-metal-api steampipe steampipe-plugin hacktoberfest backup etl

steampipe-plugin-equinix's Introduction

image

Equinix Plugin for Steampipe

Use SQL to query infrastructure including servers, networks, facilities and more from Equinix Metal.

Quick start

Install the plugin with Steampipe:

steampipe plugin install equinix

Run a query:

select hostname, ip_addresses from equinix_metal_device

Engines

This plugin is available for the following engines:

Engine Description
Steampipe The Steampipe CLI exposes APIs and services as a high-performance relational database, giving you the ability to write SQL-based queries to explore dynamic data. Mods extend Steampipe's capabilities with dashboards, reports, and controls built with simple HCL. The Steampipe CLI is a turnkey solution that includes its own Postgres database, plugin management, and mod support.
Postgres FDW Steampipe Postgres FDWs are native Postgres Foreign Data Wrappers that translate APIs to foreign tables. Unlike Steampipe CLI, which ships with its own Postgres server instance, the Steampipe Postgres FDWs can be installed in any supported Postgres database version.
SQLite Extension Steampipe SQLite Extensions provide SQLite virtual tables that translate your queries into API calls, transparently fetching information from your API or service as you request it.
Export Steampipe Plugin Exporters provide a flexible mechanism for exporting information from cloud services and APIs. Each exporter is a stand-alone binary that allows you to extract data using Steampipe plugins without a database.
Turbot Pipes Turbot Pipes is the only intelligence, automation & security platform built specifically for DevOps. Pipes provide hosted Steampipe database instances, shared dashboards, snapshots, and more.

Developing

Prerequisites:

Clone:

git clone https://github.com/turbot/steampipe-plugin-equinix.git
cd steampipe-plugin-equinix

Build, which automatically installs the new version to your ~/.steampipe/plugins directory:

make

Configure the plugin:

cp config/* ~/.steampipe/config
vi ~/.steampipe/config/equinix.spc

Try it!

steampipe query
> .inspect equinix

Further reading:

Open Source & Contributing

This repository is published under the Apache 2.0 (source code) and CC BY-NC-ND (docs) licenses. Please see our code of conduct. We look forward to collaborating with you!

Steampipe is a product produced from this open source software, exclusively by Turbot HQ, Inc. It is distributed under our commercial terms. Others are allowed to make their own distribution of the software, but cannot use any of the Turbot trademarks, cloud services, etc. You can learn more in our Open Source FAQ.

Get Involved

Join #steampipe on Slack →

Want to help but don't know where to start? Pick up one of the help wanted issues:

steampipe-plugin-equinix's People

Contributors

bigdatasourav avatar cbruno10 avatar dboeke avatar dependabot[bot] avatar e-gineer avatar madhushreeray30 avatar misraved avatar vielmetti avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

vielmetti

steampipe-plugin-equinix's Issues

Support for Metros

Is your feature request related to a problem? Please describe.
no

Describe the solution you'd like
Equinix Metal introduced Metros as an alternative to provisioning devices (including batch, spot market, and hardware reservations), vlans, connections, and IP reservations to facilities.

The capacity and spot market prices can also be looked up by metro.

Describe alternatives you've considered
none

Additional context

A similar feature request was added for Ansible: equinix/ansible-collection-metal#30

Draft README update

image

Equinix Plugin for Steampipe

Use SQL to query infrastructure including servers, networks, facilities and more from Equinix Metal.

Quick start

Install the plugin with Steampipe:

steampipe plugin install equinix

Run a query:

select hostname, ip_addresses from equinix_metal_device

Developing

Prerequisites:

Clone:

git clone [email protected]:turbot/steampipe-plugin-equinix
cd steampipe-plugin-equinix

Build, which automatically installs the new version to your ~/.steampipe/plugins directory:

make

Configure the plugin:

cp config/* ~/.steampipe/config
vi ~/.steampipe/config/equinix.spc

Try it!

steampipe query
> .inspect equinix

Further reading:

Contributing

Please see the contribution guidelines and our code of conduct. All contributions are subject to the MPL-2.0 open source license.

help wanted issues:

DRAFT docs/index.md

Equinix + Steampipe

Steampipe is an open source CLI to instantly query cloud APIs using SQL.

Equinix Metal delivers global, interconnected, integrated, and on-demand bare-metal infrastructure as a service. As the name implies, these bare metal servers do not require virtualization or multi-tenancy. The provisioned infrastructure is deployed at Equinix data center locations allowing enabling direct network interconnects to other cloud providers and a global network backbone.

For example:

select 
  hostname, 
  state,
  tags
from 
  equinix_metal_device
+-----------------------+--------+---------------+
| hostname              | state  | tags          |
+-----------------------+--------+---------------+
| dc13-c3.medium.x86-01 | active | {"prod":true} |
+-----------------------+--------+---------------+

Documentation

Get started

Install

Download and install the latest Equinix Metal plugin:

steampipe plugin install equinix

Credentials

Item Description
Credentials Use an API Token.
Permissions Read-only
Radius Each connection represents a single Equinix Metal account.
Resolution 1. token in Steampipe config.
2. PACKET_AUTH_TOKEN environment variable. (A legacy name.)

Configuration

Installing the latest equinix plugin will create a config file (~/.steampipe/config/equinix.spc) with a single connection named equinix:

connection "equinix" {
  plugin  = "equinix"
  token   = "XV1JE4QXVHdCYoWT2wbr2NRdPYrZRx3N"
}

Get involved

select * from metal_device fails with panic

Installation is on WSL on Windows. Here's an error I got while working through the Equinix Metal examples.

> select * from metal_device
Error: failed to populate column 'volume_ids': rpc error: code = Internal desc = transform volumesToIDs failed with panic interface conversion: interface {} is []*packngo.Volume, not []packngo.Volume

"select * from metal_event" very slow

My account has a lot of events, and the "select * from metal_event" query is downloading them slowly in batches of 1000. I am not sure how to suspend or interrupt this call - ^C doesn't seem to register.

The suggestion would be for the example to limit the number of events retrieved.

> select * from metal_event
⠏ Loading results: 2,994            

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.