kubernetes samplecontroller 编译部署测试

1 实验

1.1 下载编译

git clone相关的project

https://github.com/kubernetes/sample-controller.git

注意,国内golang下载依赖比较慢,选择使用ali的proxy

export GOPROXY=https://mirrors.aliyun.com/goproxy/
mkdir /root/gowork 
export GOPATH=/root/gowork/ 
cd /root/gowork/
git clone https://github.com/kubernetes/sample-controller.git
go build -v -o samplecontroller

1.2 运行controller

[vagrant@node1 sample-controller]$ ./sample-controller -kubeconfig /etc/kubernetes/admin.conf 
F0806 15:48:12.736121   14843 main.go:49] Error building kubeconfig: error loading config file "/etc/kubernetes/admin.conf": open /etc/kubernetes/admin.conf: permission denied
goroutine 1 [running]:
k8s.io/klog/v2.stacks(0xc000010001, 0xc000442000, 0xb0, 0x105)
        /home/mayi/workspace/duduai/gobackend/go/pkg/mod/k8s.io/klog/v2@v2.2.0/klog.go:996 +0xb8
k8s.io/klog/v2.(*loggingT).output(0x21aec20, 0xc000000003, 0x0, 0x0, 0xc0003dce00, 0x210a00a, 0x7, 0x31, 0x0)
        /home/mayi/workspace/duduai/gobackend/go/pkg/mod/k8s.io/klog/v2@v2.2.0/klog.go:945 +0x19d
k8s.io/klog/v2.(*loggingT).printf(0x21aec20, 0x3, 0x0, 0x0, 0x156ab4c, 0x1d, 0xc0000c1f68, 0x1, 0x1)
        /home/mayi/workspace/duduai/gobackend/go/pkg/mod/k8s.io/klog/v2@v2.2.0/klog.go:733 +0x17b
k8s.io/klog/v2.Fatalf(...)
        /home/mayi/workspace/duduai/gobackend/go/pkg/mod/k8s.io/klog/v2@v2.2.0/klog.go:1456
main.main()
        /home/mayi/workspace/github/sample-controller/main.go:49 +0x62f

goroutine 6 [chan receive]:
k8s.io/klog/v2.(*loggingT).flushDaemon(0x21aec20)
        /home/mayi/workspace/duduai/gobackend/go/pkg/mod/k8s.io/klog/v2@v2.2.0/klog.go:1131 +0x8b
created by k8s.io/klog/v2.init.0
        /home/mayi/workspace/duduai/gobackend/go/pkg/mod/k8s.io/klog/v2@v2.2.0/klog.go:416 +0xd6

goroutine 7 [syscall]:
os/signal.signal_recv(0x0)
        /usr/local/go/src/runtime/sigqueue.go:147 +0x9c
os/signal.loop()
        /usr/local/go/src/os/signal/signal_unix.go:23 +0x22
created by os/signal.Notify.func1
        /usr/local/go/src/os/signal/signal.go:127 +0x44

goroutine 9 [runnable]:
k8s.io/sample-controller/pkg/signals.SetupSignalHandler.func1(0xc0003eb200, 0xc00008ecc0)
        /home/mayi/workspace/github/sample-controller/pkg/signals/signal.go:35
created by k8s.io/sample-controller/pkg/signals.SetupSignalHandler
        /home/mayi/workspace/github/sample-controller/pkg/signals/signal.go:35 +0xd0

需要修改admin.conf权限

[vagrant@node1 sample-controller]$ sudo chmod a+r /etc/kubernetes/admin.conf   

运行controller

[vagrant@node1 sample-controller]$ ./sample-controller -kubeconfig /etc/kubernetes/admin.conf                                                                                                               
I0806 15:48:46.715501   15474 controller.go:115] Setting up event handlers
I0806 15:48:46.715598   15474 controller.go:156] Starting Foo controller
I0806 15:48:46.715622   15474 controller.go:159] Waiting for informer caches to sync
I0806 15:48:46.819997   15474 controller.go:164] Starting workers
I0806 15:48:46.820046   15474 controller.go:170] Started workers
I0806 15:50:54.870759   15474 controller.go:228] Successfully synced 'default/example-foo'
I0806 15:50:54.871685   15474 event.go:291] "Event occurred" object="default/example-foo" kind="Foo" apiVersion="samplecontroller.k8s.io/v1alpha1" type="Normal" reason="Synced" message="Foo synced successfully"
I0806 15:50:54.877213   15474 controller.go:228] Successfully synced 'default/example-foo'
I0806 15:50:54.877423   15474 event.go:291] "Event occurred" object="default/example-foo" kind="Foo" apiVersion="samplecontroller.k8s.io/v1alpha1" type="Normal" reason="Synced" message="Foo synced successfully"
I0806 15:50:54.885137   15474 controller.go:228] Successfully synced 'default/example-foo'
I0806 15:50:54.885176   15474 event.go:291] "Event occurred" object="default/example-foo" kind="Foo" apiVersion="samplecontroller.k8s.io/v1alpha1" type="Normal" reason="Synced" message="Foo synced successfully"
I0806 15:50:54.934593   15474 controller.go:228] Successfully synced 'default/example-foo'
I0806 15:50:54.934717   15474 event.go:291] "Event occurred" object="default/example-foo" kind="Foo" apiVersion="samplecontroller.k8s.io/v1alpha1" type="Normal" reason="Synced" message="Foo synced successfully"
I0806 15:51:16.782318   15474 controller.go:228] Successfully synced 'default/example-foo'
I0806 15:51:16.782922   15474 event.go:291] "Event occurred" object="default/example-foo" kind="Foo" apiVersion="samplecontroller.k8s.io/v1alpha1" type="Normal" reason="Synced" message="Foo synced successfully"
I0806 15:51:46.784112   15474 controller.go:228] Successfully synced 'default/example-foo'
I0806 15:51:46.784584   15474 event.go:291] "Event occurred" object="default/example-foo" kind="Foo" apiVersion="samplecontroller.k8s.io/v1alpha1" type="Normal" reason="Synced" message="Foo synced successfully"
I0806 15:52:16.782987   15474 controller.go:228] Successfully synced 'default/example-foo'
I0806 15:52:16.783071   15474 event.go:291] "Event occurred" object="default/example-foo" kind="Foo" apiVersion="samplecontroller.k8s.io/v1alpha1" type="Normal" reason="Synced" message="Foo synced successfully"

1.3 验证运行情况

[vagrant@node1 sample-controller]$ kubectl get pod
NAME                                             READY   STATUS              RESTARTS   AGE
echo-goodbye-run-xcf84-echo-zpt8p-pod-sftql      0/1     Completed           0          24d
echo-goodbye-run-xcf84-goodbye-ltgp2-pod-kwl4j   0/1     Completed           0          24d
echo-run-4kb2p-pod-xswn8                         0/1     Completed           0          57d
echo-run-76vs2-pod-n22jv                         0/1     Completed           0          24d
echo-run-hfs8h-pod-bgkvt                         0/1     Completed           0          24d
example-foo-757bd7c455-dvr7x                     0/1     ContainerCreating   0          30s
goodbye-run-vcgnw-pod-k4fsn                      0/1     Completed           0          24d


[vagrant@node1 sample-controller]$ kubectl get pod
NAME                                             READY   STATUS      RESTARTS   AGE
echo-goodbye-run-xcf84-echo-zpt8p-pod-sftql      0/1     Completed   0          24d
echo-goodbye-run-xcf84-goodbye-ltgp2-pod-kwl4j   0/1     Completed   0          24d
echo-run-4kb2p-pod-xswn8                         0/1     Completed   0          57d
echo-run-76vs2-pod-n22jv                         0/1     Completed   0          24d
echo-run-hfs8h-pod-bgkvt                         0/1     Completed   0          24d
example-foo-757bd7c455-dvr7x                     1/1     Running     0          3m23s
goodbye-run-vcgnw-pod-k4fsn                      0/1     Completed   0          24d


[vagrant@node1 sample-controller]$ kubectl get deployments.apps 
NAME                            READY   UP-TO-DATE   AVAILABLE   AGE
example-foo                     0/1     1            0           42s
jn9s-python-m8x5m-deployment    0/0     0            0           78d
jn9s-python2-c4nql-deployment   0/0     0            0           78d
jnocr-lwlcf-deployment          0/0     0            0           77d



[vagrant@node1 sample-controller]$ kubectl describe Foo example-foo
Name:         example-foo
Namespace:    default
Labels:       <none>
Annotations:  kubectl.kubernetes.io/last-applied-configuration:
                {"apiVersion":"samplecontroller.k8s.io/v1alpha1","kind":"Foo","metadata":{"annotations":{},"name":"example-foo","namespace":"default"},"sp...
API Version:  samplecontroller.k8s.io/v1alpha1
Kind:         Foo
Metadata:
  Creation Timestamp:  2020-08-06T07:50:54Z
  Generation:          2
  Resource Version:    12298681
  Self Link:           /apis/samplecontroller.k8s.io/v1alpha1/namespaces/default/foos/example-foo
  UID:                 e6899918-216a-4b1c-980c-2bf735276e28
Spec:
  Deployment Name:  example-foo
  Replicas:         1
Status:
  Available Replicas:  0
Events:
  Type    Reason  Age                  From               Message
  ----    ------  ----                 ----               -------
  Normal  Synced  2s (x10 over 2m54s)  sample-controller  Foo synced successfully




[vagrant@node1 sample-controller]$ kubectl get Foo
NAME          AGE
example-foo   6m40s


[vagrant@node1 sample-controller]$ kubectl logs example-foo-757bd7c455-dvr7x 
/docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
/docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
/docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
10-listen-on-ipv6-by-default.sh: Getting the checksum of /etc/nginx/conf.d/default.conf
10-listen-on-ipv6-by-default.sh: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf
/docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh
/docker-entrypoint.sh: Configuration complete; ready for start up


©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,826评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,968评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,234评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,562评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,611评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,482评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,271评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,166评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,608评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,814评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,926评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,644评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,249评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,866评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,991评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,063评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,871评论 2 354