本站用于记录日常工作内容,虚拟化云计算,系统运维,数据库DBA,网络与安全。
 
0

Kubernetes Annotations

发表者:admin分类:云计算容器2020-08-15 13:35:39 阅读[420]
Kubernetes Annotations可以使用Kubernetes Annotations将任何非标识metadata附加到对象。客户端(如工具和库)可以检索此metadata。将metadata附加到对象可以使用Labels或Annotations将元数据附加到Kubernetes对象。标签可用于选择对象并查找满足某些条件的对象集合。相比之下,Annotations不用于标识和选择对象。Annotations中的元数据可以是small 或large,structured 或unstructured,并且可以包括标签不允许使用的字符。Annotations就如标签一样,也是由key/value组成:"annotations": { "key1" : "value1", "key2" : "value2" }以下是在Annotations中记录信息的一些例子:构建、发布的镜像信息,如时间戳,发行ID,git分支,PR编号,镜像hashes和注Registry地址。一些日志记录、监视、分析或audit repositories。一些工具信息:例如,名称、版本和构建信息。用户或工具/系统来源信息,例如来自其他生态系统组件对象的URL。负责人电话/座机,或一些信息目录。注意:Annotations不会被Kubernetes直接使用,其主要目的是方便用户阅读查找。
Centos7安装Docker19,Harbor_v2.0.2企业级容器镜像仓库一. harbor概述1. 基本功能harbor是一个由vm公司开源的企业级容器镜像仓库包括企业级特性:管理用户界面基于角色的访问控制LDAP/AD 集成及日志审计等基本运维操作官方网站:https://vmware.github.io/harbor/cn/https://github.com/vmware/harbor2. harbor 的基本组件组件功能harbor-adminserver配置管理中心harbor-db数据库harbor-jobservice镜像复制harbor-log日志操作harbor-uiWeb管理页面和APInginx前端代理,负责前端页面和镜像上传/下载转发redis会话registry镜像存储二. harbor部署1. harbor的安装方式harbor安装有三种方式在线安装:从docker hub 下载harbor相关镜像,安装包较小离线安装:安装包包含部署的相关镜像,安装包较大OVA安装:当用户具有vCenter环境时,使用此安装,部署OVA后启动harbor离线安装环境较为齐全,所有我们采用离线安装。2. 安装 老版本 前期需要准备的:下载harbor离线安装包下载地址:https://github.com/goharbor/harbor/releases安装 docker compose官方文档:https://docs.docker.com/compose/#common-use-cases指定版本:https://github.com/docker/compose/releases3,Cento...
Dockerfile中RUN,CMD和ENTRYPOINT都能够用于执行命令,下面是三者的主要用途:RUN命令执行命令并创建新的镜像层,通常用于安装软件包CMD命令设置容器启动后默认执行的命令及其参数,但CMD设置的命令能够被docker run命令后面的命令行参数替换ENTRYPOINT配置容器启动时的执行命令(不会被忽略,一定会被执行,即使运行 docker run时指定了其他命令)Shell格式和Exec格式运行命令我们可用两种方式指定 RUN、CMD 和 ENTRYPOINT 要运行的命令:Shell 格式和 Exec 格式:Shell格式:<instruction> <command>。例如:apt-get install python3Exec格式:<instruction> ["executable", "param1", "param2", ...]。例如: ["apt-get", "install", "python3"]CMD 和 ENTRYPOINT 推荐使用 Exec 格式,因为指令可读性更强,更容易理解。RUN 则两种格式都可以。Run命令RUN 指令通常用于安装应用和软件包。RUN 在当前镜像的顶部执行命令,并通过创建新的镜像层。Dockerfile 中常常包含多个 RUN 指令。下面是一个例子:RUN apt-get update && apt-get install -y \ bzr \ cvs \ git \ me...
 
0

k8s command & args

发表者:admin分类:云计算容器2020-08-13 16:51:52 阅读[402]
k8s command & args12345678910111213命令和参数说明:command、args两项实现覆盖Dockerfile中ENTRYPOINT的功能,具体的command命令代替ENTRYPOINT的命令行,args代表集体的参数。 如果command和args均没有写,那么用Dockerfile的配置。如果command写了,但args没有写,那么Dockerfile默认的配置会被忽略,执行输入的command(不带任何参数,当然command中可自带参数)。如果command没写,但args写了,那么Dockerfile中配置的ENTRYPOINT的命令行会被执行,并且将args中填写的参数追加到ENTRYPOINT中。如果command和args都写了,那么Dockerfile的配置被忽略,执行command并追加上args参数。比如:command:/test.sh,p1,p2args: p3,p4 另:多命令执行使用sh,-c,[command;command,...]的形式,单条命令的参数填写在具体的command里面,例如:command:sh,-c,echo '123';/test.sh,p1,p2,p3,p4args: 不填
今天发现在kubernetes上创建POD时,有个节点一直不能分配到POD,并该节点上有些pod的状态为pendding.查询该节点的状态:mac-temp:echo test$ kubectl describe node 192.168.5.86 Name: 192.168.5.86 Role: ..... CreationTimestamp: Thu, 05 Oct 2017 17:09:52 +0800 <span style="color:#ff6666;">Conditions:</span> Type Status LastHeartbeatTime LastTransitionTime Reason Message ---- ------ ----------------- ------------------ ------ ------- DiskPressure False Sun, 11 Mar 2018 18:13:57 +0800 Sun, 11 Mar 2018 17:13:59 +0800 KubeletHasNoDiskPressure kubelet has no disk pressure MemoryPressure False Sun, 11 Mar 2018 18:13:57 +0800 Sun, 11 Mar 2018 17:13:59 +0800 KubeletHasSufficientMemory kubelet has sufficient memory available OutOfDisk False Sun, 11 Mar 2018 18:13:57 +0800 Sun, 11 Mar 2018 17:13:59 +0800 KubeletHasSufficientDisk kubelet has sufficient disk space available Ready True Sun, 11 Mar 2018 18:13:57 +0800 Sun...
KUBERNETES POD调度失败问题(INSUFFICIENT PODS)Kubernetes的node默认最大pod数量为110个,所有node都达到110个时无法再调度,出现如下报错信息0/3 nodes are available: 1 node(s) had taints that the pod didn't tolerate, 2 Insufficient pods解决办法:修改/etc/sysconfig/kubelet配置文件,添加--max-pods配置,然后重启kubelet服务,修改后文件内容如下KUBELET_EXTRA_ARGS="--fail-swap-on=false --max-pods=300"
windows 2016 Hyper-v虚拟机中安装docker,k8s 1.18.6,重启master节点系统,k8s无法正常启动。查看docker 容器实例,一直在不停的重启,重建中。使用vmstate -n 3,与top命令,查看硬盘IO占用很高,很卡顿。Hyper-v中安装的kubernetes 1.18.6 单master节点集群,docker使用的cgroup-driver是systemd,并且安装了kuboard面板。master节点系统不重启时,一直正常。但是系统重启后,k8s的master节点无法正常工作。最后将 docker与kubelet 的cgroup-driver 修改成默认的cgroupfs后,重启 docker服务与kubelet 服务后,才正常使用。明白 k8s装到hyper-v虚拟机中,会有问题,建议还是装到物理机系统中比较好,中间层太多,浪费性能,毛病也会变多。查看 cat /var/log/messages 里面有大量此类信息。cb0-42f2-a753-83ef4abc9208)Aug 12 20:52:08 centosk8s kubelet[1060]: E0812 20:52:08.818796    1060 eviction_manager.go:575] eviction manager: cannot evict a critical pod kube-apiserver-centosk8s_kube-system(20ba893addde533b5afb0c186476bdeb)Aug 12 20:52:08 centosk8s kubelet[1060]: E0812 20:52:08.818843    1060 eviction_manager.go:575] evi...
Hyper-V结合远程路由访问实现一个公网IP内部多个虚拟服务器的发布与共享上网,映射端口 windows server 2K安装Hyper-V,虚拟机共享上网并映射端口 现在有一台Windows Server 2008、windows 2012/2016 服务器有且只有一个IP地址是可以进行Internet的网络访问,现在在该服务器上安装hyper-v的角色,并且在Hyper-v上安装两台Guest OS,VM1和VM2。虚拟机系统打开了3389端口,外网需要通过公网IP 远程访问VM系统。 以下是这个应该的基本架构图。为了使结构简单,不容出问题,所以在物理服务器的宿主机上启用远程路由访问,为内部的物理服务器提供NAT的映射。 1,先安装好hyper-v角色,然后添加一个虚拟机交换机,这里名称为 NAT交换机,连接类型为 内部网。 2,新建一个虚拟交换机后,到windows 2K网络连接中查看 对应名称的网卡,我这里就将IP配置成192.168.137.1,此网卡相当于内网网卡, 分配给虚拟机使用。 3,新建一个虚拟机,将对应的网卡添加给虚拟机。这里此虚拟机的ip配置成 192.168.137.26 网关: 192.168.137.1 4,虚拟机配置好后,...
    总共60页,当前第5页 | 页数:
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15