k8s操作手册 2.3kubeadm init --kubernetes- version=v1.19.4 \ --apiserver-adver�se- address=10.99.1.51 \ # api server地址 --pod-network-cidr=10.244.0.0/16 \ # pod容器网段 --service-cidr=10.7.0.0/16 \ # service网段,即cluster kubeadm init --kubernetes- version=v1.28.2 \ --apiserver-adver�se- address=10.99.1.51 \ # api server地址 --pod-network-cidr=10.244.0.0/16 \ # pod容器网段 --service-cidr=10.7.0.0/16 \ # service网段,即cluster edit cm kube-proxy -n kube-system #编辑configMap 找到kind: KubeProxyConfigura�on这行往下第2行的mode: "",在""里写入ipvs, 保存退出 (要求在做准备工作时已加载ipvs内核模块) 再删除kube-proxy的所有pod(即重启这些pod) # kubectl get pod -n kube-system0 码力 | 126 页 | 4.33 MB | 1 年前3
Putting an Invisible Shield on Kubernetes SecretsProvider Background: K8s Secrets • Encryption Keys stored on API Server • Secrets encrypted prior to storage in etcd • Secrets decrypted on API Server prior to use • Encryption keys stored in a remote write • LivenessProbe for health check • Configurations • kms-plugin • apiserver • Caching • API server • Set up Encrypted(DEK) => DEK mapping • KMS plugin • Set up SecretKeyName:SecretKeyVersion Annotation: /storage-transform-disable=• Emergency management • High Availability guarantee • KMS • API server & kms-plugin • Cron job backup for KEKs (from KMS) • Static key configuration support in kms-plugin 0 码力 | 33 页 | 20.81 MB | 1 年前3
K8S安装部署开放服务config.k8s.io/v1alpha1 kind: KubeProxyConfiguration featureGates: SupportIPVSProxyMode: true mode: ipvs --- apiVersion: kubelet.config.k8s.io/v1beta1 kind: KubeletConfiguration cgroupDriver: traefik-config data: traefik.yaml: |- serversTransport: insecureSkipVerify: true api: insecure: true dashboard: true debug: true metrics: prometheus: app.kubernetes.io/managed-by: {{ .Release.Service }} data: config.ini: | [Common] Mode = product CacheMode = redis ReportStorageMode = redis AttrStorageMode = mongodb0 码力 | 54 页 | 1.23 MB | 1 年前3
Amazon Elastic Kubernetes Service (EKS) 初探秘Kubernetes API Server ALB Ingress Controller Node HTTP Listener HTTPS Listener Rule: /cheeses Rule: /charcuterie TargetGroup: Green (IP Mode) TargetGroup: Blue (Instance Mode) NodePort sanitizing user input • static code analysis • gotchas: log-leaking} • sensitive config (passwords, API keys, etc.) • gotchas: commits-to-source, non-separated access (dev has cleartext password) { • AWS Identity and Access Management (IAM) 身份验证 Kubectl 3) Authorizes AWS identity with RBAC K8s API 1) Passes AWS identity 2) Verifies AWS identity 4) K8s action allowed/denied © 2019, Amazon Web0 码力 | 39 页 | 1.83 MB | 1 年前3
全球架构师峰会2019北京/大数据/Kubernetes 运行大数据工作负载的探索和实践&mdashor Mesos. l Spark 2.3 added native support for Kubernetes. l Spark 2.4 added support for client mode, R, python etc. l Spark 3.0 will add support for dynamic resource allocation, external shuffle service Pod from apiserver and then start the container. Gaps for spark Spark on Kubernetes with volcano API-Server Volcano Scheduler Kubernetes master Podgroup Spark driver pod executor pod executor pod spark-role: driver name: job-1574739729783-driver namespace: default resourceVersion: “12093805” selfLink: /api/v1/namespaces/default/pods/job- 1574739729783-driver uid: f26a81f3-10f8-11ea-938f-fa163eddd2ce Spec:0 码力 | 25 页 | 3.84 MB | 1 年前3
Kubernetes开源书 - 周立01-什么是Kubernetes 02-安装单机版Kubernetes 03-使⽤Kubespray部署⽣产可⽤的Kubernetes集群(1.11.2) 04-K8s组件 05-Kubernetes API 06-理解K8s对象 07-Name 08-Namespace 09-Label和Selector 10-Annotation 11-K8s架构及基本概念 12-Master与Node的通信 允许⽤户使⽤⾃定义信息来装饰资源以⽅便他们的⼯作流程, 并为管理⼯具提供检查点状态的简单⽅法。 此外, Kubernetes control plane 所⽤的API 与开发⼈员和⽤户可⽤的API相同。⽤户可以使⽤ their own API 编写⾃⼰ 的控制器,例如 scheduler ,这些API可由通⽤ command-line tool 定位。 这种 design 使得许多其他系统可以构建在Kubernetes上。 io/article/8136 启⽤Kubernetes Dashboard 执⾏: kubectl proxy 02-安装单机版Kubernetes 8 访问: http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/#!/overview? namespace=default0 码力 | 135 页 | 21.02 MB | 1 年前3
运维上海2017-Kubernetes 在大规模场景下的service性能优化实战 - 杜军Cluster DNS record: pod1.clusterdomain pod2.clusterdomain ... Service�Endpoints�� Service ���� API Server Services etcd Pods Endpoints Controller Manager Node Node … Load Balancer IptablesU����R�� Ø statistic�S����o���� iptables -t nat -A PREROUTING -d 1.2.3.4 --dport 80 -m statistic --mode random --probability .25 -j DNAT --to-destination 10.20.30.40:8080 • IptablesU����>�� Ø recent�S����>��� 192.168.60.200:80 -r 172.17.1.2:80 –m # ipvsadm -a -t 192.168.60.200:80 -r 172.17.2.3:80 –m ���� API Server Kube-proxy seesaw Pod Pod Pod Real Server Service IP (Virtual Server) Client netlink0 码力 | 38 页 | 3.39 MB | 1 年前3
腾讯云 Kubernetes 高性能网络技术揭秘——使用 eBPF 增强 IPVS 优化 K8s 网络性能-范建明应用通过固定的VIP访问一组pod,应用对Pod ip变化 无感知 • 本质是一个负载均衡器 • ClusterIP提供集群内的访问 • NodePort 提供集群外部的访问 iptables mode • 在netfilter pre-routing阶段做DNAT • 在netfilter post-routing阶段做SNAT • 每个service 添加一条或多条rules。使用数组管理rules。 在linux 已经广泛部署 优势 iptables mode 不足之处 • 控制平面的时间复杂度是O(N^2), 当service达到上千时,修改rule耗时超过半小时。 • 数据平面的时间复杂度是O(N) • 调度算法比较少,仅仅支持random的 • iptables rule 不容易调试 IPVS mode • 使用hashtable 管理service • iptables+conntrack 做SNAT • 控制面和数据面算法复杂度都是O(1) • 经历了二十多年的运行,比较稳定成熟 • 支持多种调度算法 优势 IPVS mode 不足之处 • 没有绕过conntrack,由此带来了性能开销 • 在k8s的实际使用中还有一些Bug 02 优化的方法 指导思路 • 用尽量少的cpu指令处理每一个报文 • 不能独占cpu0 码力 | 27 页 | 1.19 MB | 9 月前3
绕过conntrack,使用eBPF增强 IPVS优化K8s网络性能access • NodePort provides out-of-cluster access • Major modes • Iptables • IPVS Iptables mode • How it works • DNAT at PREROUTING chain • SNAT at POSTROUTING chain • Pros • Iptables is widely / O(N) in data plane • Poor in scheduling algorithm • Iptables rules are difficult to debug IPVS mode • Services are organized in hash table • IPVS DNAT • conntrack/iptables SNAT • Pros • O(1) time Post-route Iptables snat Conntrack Post-route Pre-route IPVS entry BPF SNAT IPVS mode data path IPVS-eBPF mode data path How eBPF does SNAT • Why does SNAT with eBPF • eBPF program is easy to deploy0 码力 | 24 页 | 1.90 MB | 1 年前3
⾸云容器产品Kubernetes操作指南驱动提供者:⽂件NAS存储选择 cds/nas server-ip: 系统会⾃动读取NAS盘的挂载点IP path:NAS盘对应的远端挂在⽬录,默认为 /nfsshare mode: pv使⽤⽂件夹的mode,⼀般选择 755 或 777 存储类名称:配置该存储类的名称,当创建pvc时,需要引⽤该名称 存储卷回收策略:Retain,PVC被删除后,保留对应的PV;Delete,PVC被删除后,删除对应 存储驱动:请选择CSI(Flexvolume今后会停⽌⽀持) server-ip: 系统会⾃动读取NAS盘的挂载点IP path:NAS盘对应的远端挂在⽬录,默认为 /nfsshare mode: pv使⽤⽂件夹的mode,⼀般选择 755 或 777 存储卷名称:配置该存储类的名称,当创建pvc时,需要引⽤该名称 容量:所要创建存储卷的⼤⼩,单位GB 访问模式:ReadWirteMany:可以 替换为集群配置的存储NAS云盘ip地址 9 path: "/nfsshare/wordpress" # ⽬录可⾃⾏修改为 /nfssahre/10 vers: "4.0" 11 mode: "777" 12 reclaimPolicy: "Delete" 创建Namespace 创建命令 1 $ kubectl create -f wordpress-storageclass-pvc 0 码力 | 94 页 | 9.98 MB | 1 年前3
共 65 条
- 1
- 2
- 3
- 4
- 5
- 6
- 7













