【问题标题】:libkv / ectd go client : how to use config.TLS object?libkv / ectd go client:如何使用 config.TLS 对象?
【发布时间】:2016-03-29 06:28:58
【问题描述】:

尝试使用 docker/libkv

https://github.com/docker/libkv#tls

指定 etcd 和 consul 使用 config.TLS 对象支持 TLS

我正在尝试确定这个对象的格式。

libkv 使用的 etcd go 客户端在这里:

https://github.com/coreos/etcd/tree/master/client

但没有关于此功能的文档,并且代码本身几乎没有提及 TLS

所以我的问题分为两部分:

  • 有谁知道 coreos/etcd 客户端是否确实支持 TLS? (我相信它必须因为 docker/libkv 使用它并声称支持它,但我在这里有一些疑问)

  • 有人有 config.TLS 对象格式的示例吗?

感谢您的意见

PS:我确实在那里问过这个问题,但我想我也会在这里发帖。

【问题讨论】:

    标签: coreos etcd


    【解决方案1】:

    etcd 确实支持 TLS 配置。您可以在此处找到相关文档:https://coreos.com/etcd/docs/latest/security.html

    您可以在此处找到执行此操作的示例代码:https://github.com/coreos/etcd/blob/master/etcdctl/command/util.go#L252

    特别是寻找使用 TLS 设置传输的 gettransport 函数调用。

    【讨论】:

    • 这是关于 etcdctl 的,我说的是 libkv 使用的 go 客户端代码。还是您说只需要定义 ENV 变量?
    • 据我了解,要使用 client.go,您需要向它传递一个 config.TLS 对象。我只是想弄清楚格式。
    • tls := transport.TLSInfo{ CAFile: cafile, CertFile: certfile, KeyFile: keyfile, } 是吗?
    • etcdctl 使用您正在谈论的相同客户端。我正在向您展示如何为该客户端配置 TLS 的示例代码。我错过了什么?以下是配置 TLS 传输器的确切代码:github.com/coreos/etcd/blob/master/etcdctl/command/util.go#L156
    • 好的,知道了。谢谢...您发送的链接没有指向传输部分,一开始让我感到困惑。
    猜你喜欢
    • 2020-07-01
    • 2021-02-21
    • 2019-07-07
    • 2020-04-18
    • 2021-08-10
    • 2021-06-10
    • 2018-10-01
    • 2021-09-24
    • 2021-07-03
    相关资源
    最近更新 更多