我需要使用 http api 获取所有consul
kv 值。目前我可以使用以下命令获取一个值。
curl -k -X GET https://consul.banuka1.us-east-2.test:8543/v1/kv/banuka-test/test-value?token=1995-08-18
Run Code Online (Sandbox Code Playgroud)
它仅返回其中指定的值 ( test-value
)
但我想获得所有的值kv store
我怎样才能做到这一点?这里有解决方法吗?
注意:我已经使用consul
cli 完成了此操作,但我想使用https api
我在 json 中有应用程序配置,每个应用程序最多有 80 个键/值对,这些键/值对将存储在 Consul KV Store 中。一般来说,它们是java键值属性,我有一个简单的shell脚本,它对值进行编码并将其转换为与consul import命令兼容的导入。我正在尝试为船上的新应用程序(开始使用 consul 进行 KV 存储的应用程序)自动执行 consul KV 导入。到目前为止,我们正在手动运行consul kv import @app_config.json
,但是,我想调用 HTTP api,而不是通过 consul KV import 进行导入。请问有什么建议吗?
json 格式的应用程序配置示例。
[
{
"key": "asia",
"flags": 0,
"value": "NDQzNg=="
},
{
"key": "asia/india",
"flags": 0,
"value": "MTMyNA=="
},
{
"key": "europe",
"flags": 0,
"value": "NzQzLjE="
},
{
"key": "europe/france",
"flags": 0,
"value": "NjYuOQ=="
},
{
"key": "europe/germany",
"flags": 0,
"value": "ODIuNjc="
}
]
Run Code Online (Sandbox Code Playgroud) 我们使用 Consul 并且我们愿意强制开发人员只能使用 git2consul 方法来更改它,以保留属性更改的历史记录并维护备份。
为了确保这一点,我们希望使 Consul Key-Value 浏览器 UI 为只读。我们怎样才能做到这一点?
我是领事的新人。
我正在尝试从 Json 文件导入键/值对。(在Windows环境下工作)
但是当我尝试使用以下命令导入时,遇到错误。
命令:
consul.exe kv import @keyvalue.json
Run Code Online (Sandbox Code Playgroud)
内容:
{"MYVAR": "123","AnotherKey":"SomeValueHere"}
Run Code Online (Sandbox Code Playgroud)
错误:
无法解组数据:json:无法将对象解组为 []*command.kvExportEntry 类型的 Go 值
任何人都可以提出一些想法来解决这个错误。
谢谢。
我已将所有配置详细信息添加到 Vault 中。您可以在下面的附图中看到详细信息。这遵循特定的路径,即kv/unistad/dev/workflow/camunda/1.0
但是,当我尝试使用Vault.NET和以下 nuget 包读取此信息时
Install-Package Vault
Run Code Online (Sandbox Code Playgroud)
我的代码看起来像这样:
var endpoint = "http://openblue-bridge.com:32270";
var token = "s.inklpUdNxet1ZJtaCLMpEIPA";
var vaultClient = new VaultClient(new Uri(endpoint), token);
string project = "unistad";
string environment = "dev";
string appVersion = "1.0";
var secretPath = $"kv/{project}/{environment}/workflow/camunda/{appVersion}";
// Use client to read a key-value secret.
var secrets = await vaultClient.Secret.Read< Dictionary<string, string>> (secretPath);
Run Code Online (Sandbox Code Playgroud)
当我运行上面的代码时,出现以下错误:
版本化 K/V 秘密引擎的路径无效。请参阅 API 文档以了解要使用的适当 API 端点。如果使用 Vault CLI,请使用“vault kv get”执行此操作。
我不知道如何修复这个错误。任何帮助将非常感激。