• k8s-calico


    0.calico 安装

    参考https://docs.projectcalico.org/v3.9/getting-started/kubernetes/

    如果之前有flannel的话,kubeadm reset,然后重启服务器,不然flannel.1 网卡会残留在里面,造成一些问题。

    0.1 kubernetes集群init

    kubeadm init --pod-network-cidr=192.168.0.0/16
    

    把kubeconfig 配置一下,这里略过。

    0.2 部署calico

    wget https://docs.projectcalico.org/v3.9/manifests/calico.yaml

    如果不是192.168.0.0/16这个网段的话,修改calico.yaml里面的CALICO_IPV4POOL_CIDR .然后apply:

    #kubectl apply  -f calico.yaml
    configmap/calico-config created
    customresourcedefinition.apiextensions.k8s.io/felixconfigurations.crd.projectcalico.org created
    customresourcedefinition.apiextensions.k8s.io/ipamblocks.crd.projectcalico.org created
    customresourcedefinition.apiextensions.k8s.io/blockaffinities.crd.projectcalico.org created
    customresourcedefinition.apiextensions.k8s.io/ipamhandles.crd.projectcalico.org created
    customresourcedefinition.apiextensions.k8s.io/ipamconfigs.crd.projectcalico.org created
    customresourcedefinition.apiextensions.k8s.io/bgppeers.crd.projectcalico.org created
    customresourcedefinition.apiextensions.k8s.io/bgpconfigurations.crd.projectcalico.org created
    customresourcedefinition.apiextensions.k8s.io/ippools.crd.projectcalico.org created
    customresourcedefinition.apiextensions.k8s.io/hostendpoints.crd.projectcalico.org created
    customresourcedefinition.apiextensions.k8s.io/clusterinformations.crd.projectcalico.org created
    customresourcedefinition.apiextensions.k8s.io/globalnetworkpolicies.crd.projectcalico.org created
    customresourcedefinition.apiextensions.k8s.io/globalnetworksets.crd.projectcalico.org created
    customresourcedefinition.apiextensions.k8s.io/networkpolicies.crd.projectcalico.org created
    customresourcedefinition.apiextensions.k8s.io/networksets.crd.projectcalico.org created
    clusterrole.rbac.authorization.k8s.io/calico-kube-controllers created
    clusterrolebinding.rbac.authorization.k8s.io/calico-kube-controllers created
    clusterrole.rbac.authorization.k8s.io/calico-node created
    clusterrolebinding.rbac.authorization.k8s.io/calico-node created
    daemonset.apps/calico-node created
    serviceaccount/calico-node created
    deployment.apps/calico-kube-controllers created
    serviceaccount/calico-kube-controllers created
    

    创建了一堆资源,daemonset,还有calico-kube-controllers 。

    等资源全部起来,就ok了。

    calico-kube-controllers-dc6cb64cb-287n2   1/1     Running   1          120m
    calico-node-dzn76                         1/1     Running   1          120m
    calico-node-g54xv                         1/1     Running   1          120m
    calico-node-gldpm                         1/1     Running   1          116m
    coredns-5644d7b6d9-qnfhp                  1/1     Running   1          121m
    coredns-5644d7b6d9-rv762                  1/1     Running   1          121m
    etcd-node1.k8s                            1/1     Running   1          121m
    kube-apiserver-node1.k8s                  1/1     Running   1          121m
    kube-controller-manager-node1.k8s         1/1     Running   1          120m
    kube-proxy-44dhz                          1/1     Running   1          121m
    kube-proxy-5sqmq                          1/1     Running   1          116m
    kube-proxy-95kx6                          1/1     Running   1          121m
    kube-scheduler-node1.k8s                  1/1     Running   1          120m
    

    1. 网络拓扑

    https://docs.projectcalico.org/v3.9/reference/architecture/

    2. calicoctl

    下载calicoctl ,chmod +x 然后设置环境变量:

    export DATASTORE_TYPE=kubernetesexport  
    export  KUBECONFIG=/etc/kubernetes/admin.conf
    

    便可以正常使用calicoctl

    环境变量可以参考https://docs.projectcalico.org/v3.9/getting-started/calicoctl/configure/etcd

    # calicoctl get node
    NAME
    ecs-docker-test-0001
    node1.k8s
    node2.k8s
    node3.k8s
    
    # calicoctl get ippool
    NAME                  CIDR             SELECTOR
    default-ipv4-ippool   192.168.0.0/16   all()
    
    # calicoctl get workloadendpoints
    WORKLOAD                     NODE                   NETWORKS             INTERFACE
    iperftest-6cff884cbd-cfkh9   node1.k8s              192.168.112.1/32     cali54d3368dbfc
    iperftest-6cff884cbd-lmbm7   node2.k8s              192.168.166.137/32   cali4b802c9f732
    iperftest-6cff884cbd-pr88l   node3.k8s              192.168.83.1/32      cali18452e0e0c0
    nginx1-6c86cb56b8-5hjt6      node1.k8s              192.168.112.3/32     cali7a3cc606203
    nginx1-6c86cb56b8-5p7t9      node2.k8s              192.168.166.141/32   cali1899571599b
    nginx1-6c86cb56b8-dldsd      node3.k8s              192.168.83.6/32      cali8303429f07e
    nginx1-6c86cb56b8-jlfqv      ecs-docker-test-0001   192.168.161.193/32   cali65cc73a222d
    
    

    4. network policy

    略。

  • 相关阅读:
    WPF多语言支持
    解决 OpenCV with CUDA 编译提示缺少 nvcuvid.h 的问题
    ios adi ADBannerView 无法修改 宽度
    ios 判断横竖屏的方法
    Core data 数据同步
    常用的sql脚本(陆续更新)
    高晓松:不买房,买梦想
    (转贴)关于多线程执行显示进度条的实例!
    如何快速创建大文件
    利用Adobe Acrobat 7.0 Professional 自带的导出图片的功能(转)
  • 原文地址:https://www.cnblogs.com/gqdw/p/11881725.html
Copyright © 2020-2023  润新知