点击上方“IT那活儿”公众号,关注后了解更多内容,不管IT什么活儿,干就完了!!!
基于云原生可观察性技术越来越流行,各个大小厂都在推出适合自己的可观察性平台。

在云原生领域中,Cilium是容器管理上最著名的网络编排、可观察性、网络安全的开源软件。

1. 安装helm环境,下载地址https://github.com/kubernetes/helm/releases,下完后上传到k8s主节点解压。
$ cd $HELM_HOME
$ helm repo add cilium https://helm.cilium.io
$ helm repo update
$ helm install tetragon cilium/tetragon -n kube-system
$ kubectl rollout status -n kube-system ds/tetragon -w
[root@master ~]# kubectl rollout status -n kube-system ds/tetragon -w
daemon set "tetragon" successfully rolled out
$ kubectl get pods -n kube-system | grep tetragon
[root@master ~]# kubectl get pods -n kube-system | grep tetragon
tetragon-nnsvj 2/2 Running 2 (84m ago) 16h
tetragon-tct2n 2/2 Running 3 (81m ago) 16h
tetragon-x9hzc 2/2 Running 2 (84m ago) 16h
$ kubectl logs tetragon-x9hzc -n kube-system
$ kubectl describe pods tetragon-x9hzc -n kube-system
$ kubectl create -f
https://raw.githubusercontent.com/cilium/cilium/v1.11/examples/minikube/http-sw-app.yaml
$ kubectl get pods
[root@master ~]# kubectl get pods
NAME READY STATUS RESTARTS AGE
deathstar-6c94dcc57b-fzltf 1/1 Running 1 (101m ago) 17h
deathstar-6c94dcc57b-tdc6p 1/1 Running 1 (101m ago) 17h
tiefighter 1/1 Running 1 (101m ago) 17h
xwing 1/1 Running 1 (101m ago) 17h
Bash
通过查看pod tetragon下的export-stdout容器日志,检测到可观察性事件:
$ kubectl logs -n kube-system -l app.kubernetes.io/name=tetragon -c export-stdout -f
https://github.com/cilium/tetragon/releases/download/tetragon-cli/tetragon-linux-amd64.tar.gz
https://github.com/cilium/tetragon/releases/download/tetragon-cli/tetragon-linux-amd64.tar.gz.sha256sum
其他系统请另行去github该项目下查找下载地址。
上传到虚拟机后并解压:
$ sha256sum --check tetragon-linux-amd64.tar.gz.sha256sum
$ tar -C /usr/local/bin -xzvf tetragon-linux-amd64.tar.gz
$ kubectl logs -n kube-system -l app.kubernetes.io/name=tetragon -c export-stdout -f | tetragon observe
$ kubectl exec -it xwing bash
[root@master ~]# kubectl exec -it xwing bash
bash-4.3# whoami
root
bash-4.3# exit
exit
process default/xwing /bin/bash
process default/xwing /usr/bin/whoami
exit default/xwing /usr/bin/whoami 0
$ kubectl apply -fhttps://raw.githubusercontent.com/cilium/tetragon/main/crds/examples/sys_write_follow_fd_prefix.yaml
$ kubectl logs -n kube-system -l app.kubernetes.io/name=tetragon -c export-stdout -f | tetragon observe --namespace default --pod xwing
$ kubectl exec -it xwing bash
vi /etc/passwd
process default/xwing /bin/bash
process default/xwing /usr/bin/vi /etc/passwd
exit default/xwing /usr/bin/vi /etc/passwd 0
$ kubectl delete -f sys_write_follow_fd_prefix.yaml
$ kubectl apply -f
https://raw.githubusercontent.com/cilium/tetragon/main/crds/examples/tcp-connect.yaml
$ kubectl logs -n kube-system -l app.kubernetes.io/name=tetragon -c export-stdout -f |
tetragon observe --namespace default --pod xwing
$ kubectl exec -it xwing -- curl http://cilium.io
process default/xwing /usr/bin/curl http://cilium.io
connect default/xwing /usr/bin/curl tcp XXX.XX.196.131:55980 -> XXX.XX.14.52:80
sendmsg default/xwing /usr/bin/curl tcp XXX.XX.196.131:55980 -> XXX.XX.14.52:80 bytes 73
close default/xwing /usr/bin/curl tcp XXX.XX.196.131:55980 -> XXX.XX.14.52:80
exit default/xwing /usr/bin/curl http://cilium.io 0

本文作者:长研云原生研究组(上海新炬王翦团队)
本文来源:“IT那活儿”公众号

文章转载自IT那活儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。





