Kubernetes之CNI之Cilium的实践

Ann2021-11-28 15:02:47

ubuntu20.04,单网卡,能访问互联网,

切换到阿里云的源,

sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak,

sudo vim /etc/apt/sources.list,

deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse

sudo apt update,sudo apt dist-upgrade,

安装docker,

sudo apt install docker.io,sudo systemctl enable docker,

sudo gpasswd -a master docker,newgrp docker,

安装kubernetes,

sudo su root,

curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add -,

sudo vim /etc/apt/sources.list.d/kubernetes.list,

deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main,

sudo apt update,

sudo apt install kubelet=1.19.16-00 kubeadm=1.19.16-00 kubectl=1.19.16-00,

sudo swapoff -a,

sudo kubeadm init --pod-network-cidr=10.0.0.0/8 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version=v1.19.16,

mkdir -p $HOME/.kube,

sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config,

sudo chown $(id -u):$(id -g) $HOME/.kube/config,

kubectl taint nodes --all node-role.kubernetes.io/master-,

安装cilium,

sudo mount bpffs /sys/fs/bpf -t bpf,

wget https://raw.githubusercontent.com/cilium/cilium/v1.9/install/kubernetes/quick-install.yaml,

kubectl create -f quick-install.yaml,

接下来要安装cilium的流量可视化组件,

wget https://raw.githubusercontent.com/cilium/cilium/v1.9/install/kubernetes/quick-hubble-install.yaml,

kubectl apply -f quick-hubble-install.yaml,

当前hubble版本应该是有bug,无法正常完成,改成安装低版本的,

下载安装helm,

wget https://get.helm.sh/helm-v3.7.1-linux-amd64.tar.gz,

tar -zxvf helm-v3.7.1-linux-amd64.tar.gz,

sudo mv linux-amd64/helm /usr/local/bin/,

下载低版本hubble,

git clone https://github.com/cilium/hubble.git -b v0.5,

cd hubble/install/kubernetes,

helm template hubble --namespace kube-system --set metrics.enabled="{dns,drop,tcp,flow,port-distribution,icmp,http}" --set ui.enabled=true > /home/master/hubble.yaml,

kubectl apply -f hubble.yaml,

需要手动创建service,vim hubble-service.yaml,

apiVersion: v1

kind: Service

metadata:

 name: hubble-ui-node

 namespace: kube-system

spec:

 ports:

 - name: http

   port: 12000

   protocol: TCP

   targetPort: 12000

   nodePort: 32000

 selector:

   k8s-app: hubble-ui

 sessionAffinity: None

 type: NodePort

kubectl apply -f hubble-service.yaml,

创建两个测试应用,访问一下产生流量,hubble界面上能看到效果,

kubernetessudo
本作品采用《CC 协议》,转载必须注明作者和本文链接
ubuntu20.04,单网卡,能访问互联网, 切换到阿里云的源, sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak, sudo vim /etc/apt/sources.list, deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe mult
sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak, sudo vim /etc/apt/sources.list, deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb-src http://mirrors.aliy
本文将引入一个思路:“在 Kubernetes 集群发生网络异常时如何排查”。文章将引入 Kubernetes 集群中网络排查的思路,包含网络异常模型,常用工具,并且提出一些案例以供学习。其可能原因为Pod 的 DNS 配置不正确DNS 服务异常pod 与 DNS 服务通讯异常大数据包丢包:主要现象为基础网络和端口均可以连通,小数据包收发无异常,大数据包丢包。
虽然网上有大量从零搭建 K8S 的文章,但大都针对老版本,若直接照搬去安装最新的 1.20 版本会遇到一堆问题。故此将我的安装步骤记录下来,希望能为读者提供 copy and paste 式的集群搭建帮助。
虽然网上有大量从零搭建?的文章,但大都针对老版本,若直接照搬去安装最新的?版本会遇到一堆问题。故此将我的安装步骤记录下来,希望能为读者提供?式的集群搭建帮助。服务等,可供用户免费下载、使用和分享。??启动的三节点服务已经配置好了以下使用?节点进行演示查看,其他节点操作均一致#?
haproxy-ingress的部署
2022-01-16 14:01:33
以前给环境安装ingress都直接用kubernetes的ingress-nginx,国内没有安装源,而且ingress自己没有高可靠,最近研究了一种新的ingress,haproxy-ingress,效果不错,安装也方便,还默认支持高可靠, 参考https://haproxy-ingress.github.io/docs/getting-started/, 需要用helm来安装,因此先安装h
kubesphere的安装部署
2021-09-25 16:08:00
书接上回,本周把kubesphere的安装部署记录发出来, 首先要安装部署storageclass, 需要在每个node上安装nfs客户端软件,sudo apt install nfs-common, 然后下载storageclass的安装部署yaml模板, wget https://raw.githubusercontent.com/kubernetes-incubator/extern
Jumpserver 概述Jumpserver 是一款使用 Python, Django 开发的开源跳板机系统, 为互联网企业提供了认证,授权,审计,自动化运维等功能。(LDAP 是轻量目录访问协议,英文全称是 Lightweight Directory Access Protocol,一般都简称为 LDAP。它是基于 X.500 标准的,但是简单多了并且可以根据需要定制。与 X.500 不同,LDAP 支持 TCP/IP,这对访问 Internet 是必须的。LDAP 的核心规范在 RFC 中都有定义,所有与 LDAP 相关的 RFC 都可以在 LDAPman RFC 网页中找到。
K8s提权之RBAC权限滥用
2022-06-20 15:04:59
在K8s中RBAC是常用的授权模式,如果在配置RBAC时分配了“过大”资源对象访问权限可导致权限滥用来提权,以至于攻击者扩大战果,渗透集群。 如下是一些RBAC相关的笔记。
随着Log4Shell漏洞威胁愈演愈烈,为了帮助用户应对该问题,AWS发布了三个热补丁解决方案以监测存在漏洞的Java应用程序和容器,并在运行中安装补丁。Log4Shell影响深远,不容小觑鉴于Log4Shell漏洞的危害迫在眉睫,多数用户已经大规模部署了热补丁,不经意间将容器环境置于危险之中。AWS为每个热补丁解决方案发布了一个修复方案。平台会检测热补丁程序包,并对运行漏洞版本的虚拟机发出警报。
Ann
暂无描述