Welcome to the Linux Foundation Forum!

lab 3.1 Step 10

i downloaded calico.yaml. Is that the right IP
Do I need to uncomment the following lines in calico.yaml? Instructions are not clear

        # no effect. This should fall within `--cluster-cidr`.
        # - name: CALICO_IPV4POOL_CIDR
        #   value: "192.168.0.0/16"

Comments

  • chrispokorni
    chrispokorni Posts: 2,155

    Hi @swamyb,

    You do not need to uncomment those lines. The IP subnet is correct, by default.

    Regards,
    -Chris

  • swamyb
    swamyb Posts: 9

    Thanks Chris.

  • swamyb
    swamyb Posts: 9

    Looks like I might missed some steps. Can you please let me why I am getting this error?

    root@master:~# kubeadm init --config=kubeadm-config.yaml --upload-certs | tee kubeadm-init.out
    W0407 20:24:05.539509 20659 validation.go:28] Cannot validate kube-proxy config - no validator is available
    W0407 20:24:05.539584 20659 validation.go:28] Cannot validate kubelet config - no validator is available
    [init] Using Kubernetes version: v1.17.1
    [preflight] Running pre-flight checks
    [preflight] WARNING: Couldn't create the interface used for talking to the container runtime: docker is required for container runtime: exec: "docker": executable file not found in $PATH
    error execution phase preflight: [preflight] Some fatal errors occurred:
    [ERROR FileContent--proc-sys-net-bridge-bridge-nf-call-iptables]: /proc/sys/net/bridge/bridge-nf-call-iptables does not exist
    [ERROR FileContent--proc-sys-net-ipv4-ip_forward]: /proc/sys/net/ipv4/ip_forward contents are not set to 1
    [preflight] If you know what you are doing, you can make a check non-fatal with --ignore-preflight-errors=...
    To see the stack trace of this error execute with --v=5 or higher

  • chrispokorni
    chrispokorni Posts: 2,155

    Hi,

    Your errors may depend on several factors. Where are you provisioning your VMs - cloud, local? What hypervisor are you using if local, or what cloud provider? Which container runtime did you install: docker or cri-o, or both? Did the calico network plugin get installed and started? A history of your shell would provide some details as to what commands were run during the installation process.

    Regards,
    -Chris

  • swamyb
    swamyb Posts: 9

    I am using Google cloud.

    I actually missed installing docker. Now i was able to run the command. But now I get two containers complaining

    E0407 22:43:51.071563 1 reflector.go:153] k8s.io/client-go/informers/factory.go:135: Failed to list *v1.StatefulSet: Get https://k8smaster:6443/apis/apps/v1/statefulsets?limit=500&resourceVersion=0: dial tcp: lookup k8smaster on 169.254.169.254:53: no such host

  • chrispokorni
    chrispokorni Posts: 2,155

    Would you be able to provide more details around this error? Which containers are complaining?
    This output only indicates that you may have tried to list StatefulSets, and a possible DNS issue with your cluster. Are your /etc/hosts files configured correctly?

    Regards,
    -Chris

  • swamyb
    swamyb Posts: 9

    root@master:~# docker ps -a | grep kube | grep -v pause
    0fe1503cdef0 5dd8f24429b4 "kube-controller-man…" 19 hours ago Up 19 hours k8s_kube-controller-manager_kube-controller-manager-master_kube-system_541aa48cb4d519e62d097c2e3dea515a_0
    d4165d6211b2 303ce5db0e90 "etcd --advertise-cl…" 19 hours ago Up 19 hours k8s_etcd_etcd-master_kube-system_ec2779b051c142453e53ff89f71840c7_0
    a9b3606bd2fc 628f0e52ae53 "kube-apiserver --ad…" 19 hours ago Up 19 hours k8s_kube-apiserver_kube-apiserver-master_kube-system_68266557f8c4b0bad8af463857d720ae_0
    8d2e2e5a92ac "kube-scheduler --au…" 19 hours ago Up 19 hours k8s_kube-scheduler_kube-scheduler-master_kube-system_11d278345de05e1c5c61a63a8a1d78b2_0
    root@master:~#

    My dns is fine in /etc/hosts.

    docker id 0fe1503cdef0 and 8d2e2e5a92ac are showing the error info in the logs.

  • chrispokorni
    chrispokorni Posts: 2,155

    Hi,

    In this situation, Kubernetes logs would be more helpful, since the containers listing above does not display any errors. Kubernetes logs would provide the context of the error, to help with troubleshooting.

    The output of kubectl get pods --all-namespaces -o wide, kubectl logs <pod-name> -c <container-name> and kubectl logs <pod-name> -c <container-name> --previous may give us the details we are looking for.

    Regards,
    -Chris

  • swamyb
    swamyb Posts: 9

    output of kubectl get pods --all-namespaces -o wide. They are all up and running. Is this enough?

    thanks
    Swamy

    root@master:~# kubectl get pods --all-namespaces -o wide
    NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
    kube-system etcd-master 1/1 Running 0 21h 10.2.0.5 master
    kube-system kube-apiserver-master 1/1 Running 0 21h 10.2.0.5 master
    kube-system kube-controller-manager-master 1/1 Running 0 21h 10.2.0.5 master
    kube-system kube-scheduler-master 1/1 Running 0 21h 10.2.0.5 master

  • chrispokorni
    chrispokorni Posts: 2,155

    Hi @swamyb,

    Thank you for your output. It only indicates that 4 pods seem to have been running without restarts for 21 hours, but it does not show the logs.

    Regards,
    -Chris

  • swamyb
    swamyb Posts: 9

    I tried to run the following to get pod info and don't know how to get container name.
    root@master:~# kubectl logs etcd-master
    Error from server (NotFound): pods "etcd-master" not found
    I assume etcd-master is pod name.

    Can you please show me how to get container name? What commands I should run to get container name.?

    Also if the output shows are pods are running, is that enough for me continue to next step?

  • serewicz
    serewicz Posts: 1,000

    Hello,

    I notice you are running the command as the root user. If you are following the labs I think you would have given the appropriate config file to the non-root user, the book says student. But the issue is probably that you did not use the -n kube-system argument in your command, as was in the previous, so it is looking in the default namespace.

    Going slow and reading the entire question can be helpful, with a plan on returning and going faster later.

    Also, which particular command (exercise, section, step) were you attempting? This helps understand what you are trying to do.

    Regards,

  • swamyb
    swamyb Posts: 9
    edited April 2020

    Thanks for your comments. I am stuck at LAB 3.1 step 14. I ran the command after following all the instructions. If you look at post 7, I have given the information of the errors I am getting. Also from step 1 to step 14, never seen I have to be non root. Can you please point where it is mentioned before step 14? I only see sudo -i command.

  • serewicz
    serewicz Posts: 1,000

    This is what I was referring to:

    tried to run the following to get pod info and don't know how to get container name.
    root@master:~# kubectl logs etcd-master
    Error from server (NotFound): pods "etcd-master" not found
    I assume etcd-master is pod name.

    None of this ^^^ is in Lab 3.1, step 14.

    "Post 7" appears to be Chris replying to you. But they are not numbered so it would be difficult to know what you are talking about.

    Which course and version are you using?

  • chrispokorni
    chrispokorni Posts: 2,155

    Hi,

    Did you get an error from step 14? Would you be able to provide the error as it was displayed on your terminal? Relying only on Docker errors retrieved thru a docker ps command may not necessarily translate into a problem with Kubernetes tooling.

    Regards,
    -Chris

  • swamyb
    swamyb Posts: 9

    Is there way to contact one of you outside this forum? I might need to show you what I did.

Categories

Upcoming Training