如何解决使用golang检索crio信息
我正在尝试使用golang检索cri-o信息,例如containerID,pid。下面提到的代码在我的Mac中可用,但是当我对其进行容器化并将其部署在openshift 3.11堆栈上时,它将无法工作。
下文提到的代码中的 cmdStr
可以是任何docker或cri-o命令,例如docker ps
或crictl ps --no-trunc -a --quiet
使用的go版本为go1.14.1 darwin/amd64
package main
import "os/exec"
import "fmt"
func main() {
cmdStr := "docker ps"
fmt.Printf("cmdStr is %s",cmdStr)
out,_ := exec.Command("/bin/sh","-c",cmdStr).Output()
fmt.Printf("output is %s",out)
}
我在Mac上获得的上述代码的输出是
cmdStr is docker ps
output is CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
在podshift日志中,openshift 3.11上的相同之处是:
cmdStr is docker ps
output is
另一个选择是在此链接中使用代码:https://godoc.org/github.com/google/cadvisor/container/crio#pkg-subdirectories,但我不确定如何使用它,下面的示例会有所帮助。
go get github.com/google/cadvisor/container/crio
github.com/opencontainers/runc/libcontainer/cgroups/v1_utils.go:86:31: undefined: unix.CGROUP_SUPER_MAGIC
github.com/opencontainers/runc/libcontainer/cgroups/v1_utils.go:95:5: undefined: IsCgroup2UnifiedMode
github.com/opencontainers/runc/libcontainer/cgroups/v1_utils.go:109:5: undefined: IsCgroup2UnifiedMode
github.com/opencontainers/runc/libcontainer/cgroups/v1_utils.go:151:5: undefined: IsCgroup2UnifiedMode
github.com/opencontainers/runc/libcontainer/cgroups/v1_utils.go:155:18: undefined: ParseCgroupFile
github.com/opencontainers/runc/libcontainer/cgroups/v1_utils.go:163:9: undefined: Mount
github.com/opencontainers/runc/libcontainer/cgroups/v1_utils.go:171:75: undefined: Mount
github.com/opencontainers/runc/libcontainer/cgroups/v1_utils.go:172:16: undefined: Mount
github.com/opencontainers/runc/libcontainer/cgroups/v1_utils.go:185:8: undefined: Mount
github.com/opencontainers/runc/libcontainer/cgroups/v1_utils.go:209:37: undefined: Mount
github.com/opencontainers/runc/libcontainer/cgroups/v1_utils.go:185:8: too many errors
# github.com/opencontainers/runc/libcontainer/utils
github.com/opencontainers/runc/libcontainer/utils/utils_unix.go:19:17: undefined: unix.PROC_SUPER_MAGIC
github.com/opencontainers/runc/libcontainer/utils/utils_unix.go:63:62: undefined: unix.SOCK_CLOEXEC
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。