Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Apr 15, 2025. It is now read-only.
/vulcanizerPublic archive

GitHub's ops focused Elasticsearch library

License

NotificationsYou must be signed in to change notification settings

github/vulcanizer

GitHub's ops focused Elasticsearch library

build statusGoDocGo Report Cardrelease

This project is a golang library for interacting with an Elasticsearch cluster. It's goal is to provide a high level API to help with common tasks that are associated with operating an Elasticsearch cluster such as querying health status of the cluster, migrating data off of nodes, updating cluster settings, etc.

This project does not aim to be a fully-featured API client for querying or indexing to Elasticsearch.

Go API

You can perform custom operations in your Go application.

import"github.com/github/vulcanizer"v=vulcanizer.NewClient("localhost",9200)oldSetting,newSetting,err:=v.SetSetting("indices.recovery.max_bytes_per_sec","1000mb")

Command line application

This project produces avulcanizer binary that is a command line application that can be used to manage your Elasticsearch cluster.

$ vulcanizer helpUsage:  vulcanizer [command]Available Commands:  aliases         Interact with aliases of the cluster.  allocation      Set shard allocation on the cluster.  analyze         Analyze text given an analyzer or a field and index.  drain           Drain a server or see what servers are draining.  fill            Fill servers with data, removing shard allocation exclusion rules.  health          Display the health of the cluster.  heap            Display the node heap stats.  help            Help about any command  hotthreads      Display the current hot threads by node in the cluster.  indices         Display the indices of the cluster.  mappings        Display the mappings of the specified index.  nodeallocations Display the nodes of the cluster and their disk usage/allocation.  nodes           Display the nodes of the cluster.  repository      Interact with the configured snapshot repositories.  setting         Interact with cluster settings.  settings        Display all the settings of the cluster.  shards          Get shard data by cluster node(s).  snapshot        Interact with a specific snapshot.Flags:      --cacert string       Path to the certificate to check the cluster certificates against      --cert string         Path to the certificate to use for client certificate authentication  -c, --cluster string      Cluster to connect to defined in config file  -f, --configFile string   Configuration file to read in (default to "~/.vulcanizer.yaml")  -h, --help                help for vulcanizer      --host string         Host to connect to (default "localhost")      --key string          Path to the key to use for client certificate authentication      --password string     Password to use during authentication      --path string         Path to prepend to queries, in case Elasticsearch is behind a reverse proxy  -p, --port int            Port to connect to (default 9200)      --protocol string     Protocol to use when querying the cluster. Either 'http' or 'https'. Defaults to 'http' (default "http")  -k, --skipverify string   Skip verifying server's TLS certificate. Defaults to 'false', ie. verify the server's certificate (default "false")      --user string         User to use during authenticationUse "vulcanizer [command] --help" for more information about a command.

Roadmap and future releases

The proposed future for vulcanizer can be found in ourROADMAP.

Configuration and connection information

All commands take--cluster <name> to look up information in a configuration file in~/.vulcanizer.yaml. The configuration should be in the form of

local:host:localhostport:9200staging:host:10.10.2.1port:9201production:host:10.10.1.1port:9202

Alternatively, all commands take--host and--port for the connection information.

For example:

# Query for cluster health on the "local" clustervulcanizer health --cluster local# Query for nodes against the node 10.10.2.1 and port 9202vulcanizer nodes --host 10.10.2.1 --port 9202

Development

./script/build will compile the project and install thevulcanizer binary to$GOPATH/bin.

./script/test will run the tests in the project.

Supported Elasticsearch versions

Integration tests are set up to run against the latest v5 and v6 versions of Elasticsearch.

Name

Vulcanization is the process of making rubber more elastic, so vulcanizer is the library that makes Elasticsearch easier to work with!

Project status

This project is under active development.

Contributing

This repository isopen to contributions. Please also seecode of conduct

To get up and running, install the project into your $GOPATH and run the set up scripts.

go get github.com/github/vulcanizercd $GOPATH/src/github.com/github/vulcanizer./script/bootstrap./script/test

And the test suite should execute correctly.

License

This project is released under theMIT LICENSE. Please note it includes 3rd party dependencies release under their own licenses; dependencies are listed in ourgo.mod file. When using the GitHub logos, be sure to follow theGitHub logo guidelines.

Authors

Authored by GitHub Engineering

About

GitHub's ops focused Elasticsearch library

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

No packages published

Contributors24


[8]ページ先頭

©2009-2025 Movatter.jp