k8s
凌云靖宇
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
k8s的namespace资源一直terminating问题解决
问题:删除ns时一直显示terminating的状态 解决: 方法一: 通过强制删除,并且设置优雅删除时间为0(默认为30s) kubectl delete ns cattle-system --force --grace-period=0 实践后发现并不好使 方法二: 通过k8s提供的api接口,把.metadata.finalizers字段及其内容删除,从而k8s会直接将该ns删除 $ kubectl get ns cattle-system -o json > cattle-s原创 2022-04-19 18:48:03 · 2809 阅读 · 0 评论 -
2021-09-26
问题:创建k8s集群的dashboard组件,默认的dashboard severaccount权限太低,token输入后没有别的ns权限。 解决: #kubectl delete rolebinding kubernetes-dashboard-minimal -n kube-system #kubectl create clusterrolebinding dashboard-cluster-admin --clusterrole=cluster-admin --serviceaccount=kube原创 2021-09-26 11:33:26 · 157 阅读 · 0 评论 -
k8s 给dashboard用户角色超级权限
问题:创建k8s集群的dashboard组件,默认的dashboard severaccount权限太低,token输入后没有别的ns权限。 解决: #kubectl delete rolebinding kubernetes-dashboard-minimal -n kube-system #kubectl create clusterrolebinding dashboard-cluster-admin --clusterrole=cluster-admin --serviceaccount=kube原创 2021-09-26 11:26:15 · 1915 阅读 · 0 评论 -
k8s pods中shell 脚本里无法调出jobs的后台进程
问题:k8s pods中用户执行的job经常要跑多线程,所以会使用 &方式,这时候job直接执行完当前shell退出了,造成用户实际执行的任务没有执行。 分析:此问题刚开始采用jobs方式判断,发现服务器在脚本里执行jobs是可以调出后台进程的,而在pods中却不行。例子如下: 服务器: [root@node241 ~]# cat a.sh i=0 while [ $i -le 10 ] do sleep 1 echo $i i=$(($i+1)) done [root@node241 ~]# ca原创 2020-05-22 20:17:36 · 863 阅读 · 1 评论 -
protheus hang住 的问题,卡在TSDB过程中无法启动
问题:k8s发生pods迁移,prometheus重启,重启过程中CPU和内存同时疯狂增加,最后报pods网络问题。 错误分析: prometheus TSDB写错误,所以重启会疯狂攫取CPU内存资源,最后也无法读取TSDB数据,最终把节点系统资源耗尽,影响别的服务。 以至于在此错误理解下,在prometheus部署服务中加了limits选项,限制CPU为3.memory为20Gi.本意是为了保护...原创 2020-04-30 19:46:51 · 727 阅读 · 0 评论 -
k8s nginx ingress 显示证书错误
问题:ingress-controller会报错,error obtaining PEM from secret kube-system/kubernetes-dashboard-certs: no keypair or CA cert could be found in kube-system/kubernetes-dashboard-certs 分析:nginx-ingress代理k8s的da...原创 2020-01-13 15:54:17 · 2130 阅读 · 0 评论 -
helmError: forwarding ports错误
问题: [root@node82 helm2.16.1]# helm version Client: &version.Version{SemVer:"v2.16.1", GitCommit:"bbdfe5e7803a12bbdf97e94cd847859890cf4050", GitTreeState:"clean"} Error: forwarding ports: error up...原创 2019-12-06 12:42:54 · 1326 阅读 · 0 评论 -
k8s部署spinnaker完不能创建servergroup
问题:采用helm安装spinnaker,部署成功,最终发现并不能创建servergroup。 分析:查看clouddriver的启动日志,报找不到/root/.kube/config文件 解决:把集群的admin用户的.kube/config打到clouddriver镜像里,亦或者创建新的用户给spinnaker使用。 注意:问题解决后,创建pipeline的时候找不到dockerhub下的镜像...原创 2019-10-22 16:04:14 · 399 阅读 · 0 评论 -
k8s podPreset更改所有容器时间为当地时间。
问题:docker 容器默认会采用utc时区,所以K8s所起容器会比当前时间慢八个小时。 解决:通过Pod Preset预设置时区环境变量或挂载宿主机时间 1.配置设置时区的Pod Preset 对应的Pod Preset对象创建文件如下: apiVersion: settings.k8s.io/v1alpha1 kind: PodPreset metadata: name: allow-tz...原创 2019-05-10 20:40:04 · 4069 阅读 · 0 评论 -
prometheus context deadline exceeded
问题:部署了node-gpu-exporter,prometheus却无法手机信息,报context deadline exceeded。 解决: 网上好多介绍说改prometheus的配置scrape_timeout:600s,加大参数即可。 实际上没不好使。 最后加大exporter的资源限制解决。 resources: requests: memo...原创 2019-08-21 16:15:58 · 17384 阅读 · 10 评论 -
k8s nginx-ingrss-controller无法解析https请求
问题:HTTPS转发报错failed to convert certificate chain from PEM to DER: PEM_read_bio_X509_AUX() failed 分析:谷歌搜索https://github.com/kubernetes/ingress-nginx/issues/4106分析是Nginx Ingress Controller版本问题, It can b...原创 2019-08-07 16:33:46 · 973 阅读 · 0 评论 -
k8s如何为节点资源预留
问题:节点用户训练cpu过高或者内存消耗过高会对节点系统进程以及kube进程产生影响。 解决: Kubelet Node Allocatable Kubelet Node Allocatable用来为Kube组件和System进程预留资源,从而保证当节点出现满负荷时也能保证Kube和System进程有足够的资源。 目前支持cpu, memory, ephemeral-storage三种资源...原创 2019-07-04 21:39:01 · 2854 阅读 · 0 评论 -
confd+etcd
转自http://www.361way.com/confd-etcd/5470.html Confd是一个轻量级的配置管理工具。通过查询Etcd,结合配置模板引擎,保持本地配置最新,同时具备定期探测机制,配置变更自动reload。其后端支持的数据类型有:etcd、consul、vault、environment variables、redis、zookeeper、dynamodb、stackeng...转载 2018-10-25 17:23:44 · 647 阅读 · 2 评论 -
k8s grafana数据持久化
问题:k8s搭建的grafana容器只要一重启,配置的dashboard,添加的用户等就会重置,从而得出,grafana没有数据持久化。 解决: 1.先在集群建立持久花存储pvc 然后挂在到容器/var目录 volumeMounts: - mountPath: /var name: grafana-storage volumes: - name: grafana-storage persisten...原创 2019-05-10 15:59:55 · 6233 阅读 · 5 评论 -
梗概Kubernetes中的Pause容器为内部镜像源
问题:公司内网由于防火墙的原因,上不了外网,而这个时候k8s集群pods以来的pasue容器是依赖的外部镜像源,这会造成k8s节点重启后无法起pods. 解决: 我们知道在kubelet的配置中有这样一个参数: kubernetes中默认的配置参数是: KUBELET_POD_INFRA_CONTAINER=–pod-infra-container-image=k8s.gcr.io/pause-a...原创 2019-05-05 20:23:13 · 2033 阅读 · 0 评论 -
强制删除k8s不正常状态的容器
1.强制删除特定pods #kubectl delete pods cloudagile-mariadb-0 -n intelligence-data-lab –grace-period=0 --force 2.删除集群失败的pods #kubectl get pods --field-selector=status.phase=Failed --all-namespaces |awk ‘{ sy...原创 2019-05-05 19:10:37 · 7838 阅读 · 0 评论 -
etcd添加新节点
第一步:etcd客户端执行 [root@k8s-master-1 ~]# etcdctl member add node180 https://109.105.1.180:2380 Added member named node180 with ID ead16f36d2aa4f03 to cluster ETCD_NAME=“node180” ETCD_INITIAL_CLUSTER=“k8s...原创 2019-04-17 20:33:20 · 2645 阅读 · 0 评论 -
Kubrnetes work NotReady ResourceExhausted work节点资源耗尽
rpc error: code = ResourceExhausted desc = grpc: received message larger than max (4196772 vs. 4194304) 现象:kubernetes集群不可用,所有work节点离线 问题定位: 执行kubectl get node 发现work节点都是NotReady状态 登入到work节点查看日志发现 Nov...转载 2018-12-03 15:28:00 · 902 阅读 · 0 评论 -
k8s nginx-ingress too large
问题:k8s nginx-ingress-controller Failed to upload report - 413: 413 Request Entity Too Large 413 Request Entity Too Large nginx/1.13.9 解决: kind: Ingress metadata: annotations: nginx.ing...原创 2018-11-28 10:27:48 · 3078 阅读 · 0 评论 -
Kubernetes v1.10.x HA 全手动安装教程
转自 https://www.kubernetes.org.cn/3814.html 本篇延续过往手动安装方式来部署 Kubernetes v1.10.x 版本的 High Availability 集群,主要目的是学习 Kubernetes 安装的一些元件关析与流程。若不想这么累的话,可以参考 Picking the Right Solution 来选择自己最喜欢的方式。 本次安装的软件版本:...转载 2018-10-26 22:36:09 · 943 阅读 · 0 评论 -
ssh无法登陆k8s集群容器
1、ssh登录容器登录不上,怀疑是flannel问题 经查发现flannel没有,sytemctl status flanneld发现是etcd证书问题。 因为重新生成的etcd证书没有粘贴到180上,所以会出错。把新生成的证书拷贝到/etc/etcd/ssl systemctl restart flaaneld,下即可 2、问题依然没哟解决,发现是flannel和docker0网段不一致问题。 ...原创 2018-10-29 20:27:05 · 2336 阅读 · 1 评论
分享