shiguanghuxian / etcd-manage

一个现代的etcd v3管理ui
http://140.143.234.132:10280/ui/#/key/kv
MIT License
244 stars 61 forks source link

非常好用,两个建议,一个BUG #6

Closed xbox1994 closed 5 years ago

xbox1994 commented 5 years ago
  1. 希望对value进行一些格式的format,如json
  2. 对keys的展示方式希望添加一种树结构

均可参考etcd keeper

另外一个bug:windows上直接运行exe文件报错:

2019-01-17 10:49:51.699147 I | 2019/01/17 10:49:51 main.go:18: couldn't open sink "C:\Users\win\Downloads\etcd-manage_windows\etcd-manage_windows\logs/20190117.log": no sink found for scheme "c"

shiguanghuxian commented 5 years ago

好的,bug我会尽快解决,建议会尽快完善

shiguanghuxian commented 5 years ago

bug已解决,建议有时间再搞,没有发版,你可以拉去master分支重新编译,替换二进制可执行文件。

station19 commented 5 years ago

装完你这个,集群里面原有的数据不能显示? web里面新加可key和value ,集群里面查看 依然没有? 啥问题?

shiguanghuxian commented 5 years ago

配置文件里有前缀,你可以看一下前缀对不对,如果对,你在etcd服务列表里修复下目录,因为etcd3没有目录概念,这个工具给目录设置了默认值,需要修复一下。

station19 commented 5 years ago

还是一样....获取不到key列表,提示
No child level list! 也修复了目录,修复后提示OK,下面是我的etcd信息

[root@lvs2 ~]# etcd -version etcd Version: 3.2.22 Git SHA: 1674e68 Go Version: go1.9.4 Go OS/Arch: linux/amd64

下面是我的配置信息

[[server]]

显示名称

title = "etcd_cluster"

标识名 - 只能是字母数字或下划线

name = "etcd_cluster_run"

etcd连接地址 如果为集群请填写全部地址

address = ["10.0.0.101:2379","10.0.0.108:2379","10.0.0.109:2379"]

查看的key前缀, /nginx

key_prefix = "/"

简述信息

desc = "三台集群服务器"

可访问服务器角色列表 - 不写则为所有用户可访问

roles = ["admin"]

这是我在服务器获取的 值

[root@a~]# etcdctl get /nginx/servername 666.com [root@a~]# etcdctl get /nginx/upstream/server1 10.0.0.111 [root@a~]# etcdctl get /nginx/upstream/server2 10.0.0.113

shiguanghuxian commented 5 years ago

将完整配置截图,我看一下吧

station19 commented 5 years ago
# debug模式
debug = false
# 日志文件路径
log_path = ""

# http 监听端口
[http]
# 监听地址
address = "0.0.0.0"
# 监听端口
port = 10280

# 使用 Let's Encrypt 证书 - tls_enable为true优先使用本地证书模式
tls_encrypt_enable = false
# 域名列表
tls_encrypt_domain_names = ["shiguanghuxian.com"]

# 是否启用tls
tls_enable = false
# tls证书文件
[http.tls_config]
cert_file = "cert_file"
key_file = "key_file"

## 一下每一个server为一个etcd服务 ##
[[server]]
# 显示名称
title = "etcd_cluster"
# 标识名 - 只能是字母数字或下划线
name = "etcd_cluster_run"
# etcd连接地址 如果为集群请填写全部地址
address = ["10.0.0.101:2379","10.0.0.108:2379","10.0.0.109:2379"]
# 查看的key前缀, /nginx
key_prefix = "/"
# 简述信息
desc = "三台集群服务器"
# 可访问服务器角色列表 - 不写则为所有用户可访问
roles = ["admin"]

## 以下为用户列表 ##
[[user]]
username = "admin"
password = "123456"
role = "admin"

#[[user]]
#username = "dev_user"
#password = "123456"
#role = "dev"
shiguanghuxian commented 5 years ago

看看浏览器网络请求,返回错误都是什么,看配置没问题

station19 commented 5 years ago
请求  http://10.0.0.113:10280/v1/list?key=/nginx/upstream  提示400错误

/nginx/upstream 是我 etcd 里面的 key路径
station19 commented 5 years ago
curl 我的 etcd集群中某一台 端口
curl http://10.0.0.101:2379/v2/keys/nginx/upstream

{
    "action": "get",
    "node": {
        "key": "/nginx/upstream",
        "dir": true,
        "nodes": [
            {
                "key": "/nginx/upstream/server1",
                "value": "10.0.0.111",
                "modifiedIndex": 127,
                "createdIndex": 127
            },
            {
                "key": "/nginx/upstream/server2",
                "value": "10.0.0.113",
                "modifiedIndex": 128,
                "createdIndex": 128
            }
        ],
        "modifiedIndex": 98,
        "createdIndex": 98
    }
}
shiguanghuxian commented 5 years ago

400错误没问题,400证明有问题body是提示消息,问题是,提示内容是什么,你可以做一些截图,尽量不要去描述问题,这样我看不到原始提示内容

shiguanghuxian commented 5 years ago

还有很重要的是,这个ui只支持v3版本etcd。我看你一直用的v2版本

station19 commented 5 years ago

有可能,我试试v3的