目录

  • 1、kubectl create
    • 语法
    • 示例
  • 2、kubectl create clusterrole
    • 语法
    • 示例
  • 3、kubectl create clusterrolebinding
    • 语法
    • 示例
  • 4、kubectl create configmap
    • 语法
    • 示例
  • 5、kubectl create deployment
    • 语法
    • 示例
  • 6、kubectl create namespace
    • 语法
    • 示例
  • 7、kubectl create poddisruptionbudget
    • 举例说明
    • 语法
    • 示例
  • 8、kubectl create quota
    • 语法
    • 示例
  • 9、kubectl create role
    • 语法
    • 示例
  • 10、kubectl create rolebinding
    • 语法
    • 示例

1、kubectl create

通过配置文件名或stdin创建一个集群资源对象。

支持JSON和YAML格式的文件。

语法

$ create -f FILENAME

示例

通过pod.json文件创建一个pod。

kubectl create -f ./pod.json

通过stdin的JSON创建一个pod。

cat pod.json | kubectl create -f -

API版本为v1的JSON格式的docker-registry.yaml文件创建资源。

kubectl create -f docker-registry.yaml --edit --output-version=v1 -o json

2、kubectl create clusterrole

创建一个ClusterRole(集群角色)。创建后的ClusterRole需通过ClusterRoleBinding来与user、group和serviceaccount进行绑定。

语法

$ clusterrole NAME --verb=verb --resource=resource.group [--resource-name=resourcename] [--dry-run]

示例

创建一个名为“pod-reader”的ClusterRole,允许用户在pod上执行“get”,“watch”和“list”

kubectl create clusterrole pod-reader --verb=get,list,watch --resource=pods

创建一个名为“pod-reader”的ClusterRole,其中指定了ResourceName

kubectl create clusterrole pod-reader --verb=get,list,watch --resource=pods --resource-name=readablepod --resource-name=anotherpod

在指定的API Group中创建为"foo"的ClusterRole

kubectl create clusterrole foo --verb=get,list,watch --resource=rs.extensions

创建一个名为“foo”的ClusterRole,并指定SubResource

kubectl create clusterrole foo --verb=get,list,watch --resource=pods,pods/status

使用指定的NonResourceURL创建名称“foo”的ClusterRole

kubectl create clusterrole "foo" --verb=get --non-resource-url=/logs/*

3、kubectl create clusterrolebinding

为特定的ClusterRole创建ClusterRoleBinding。

语法

$ clusterrolebinding NAME --clusterrole=NAME [--user=username] [--group=groupname] [--serviceaccount=namespace:serviceaccountname] [--dry-run]

示例

在集群范围将cluster-admin ClusterRole授予用户user1,user2和group1。

kubectl create clusterrolebinding cluster-admin --clusterrole=cluster-admin --user=user1 --user=user2 --group=group1

4、kubectl create configmap

根据配置文件、目录或指定的literal-value创建configmap 。

存储配置文件或密钥文件等,可以将 configmap 直接绑定给对象(pod、deployment等),对象就可以直接使用。

configmap 用来保存一个或多个key/value信息。

当基于配置文件创建configmap时,key将默认为文件的基础名称,value默认为文件文本内容。如果基本名称的key无效,则可以指定另一个key。

当基于目录创建configmap时,key还是文件的基础名称,目录中每个配置文件名都被设置为key,文件内容设置为value。

语法

$ configmap NAME [--from-file=[key=]source] [--from-literal=key1=value1] [--dry-run]

示例

根据文件创建一个名为my-config的configmap

kubectl create configmap my-config --from-file=path/to/bar

使用指定的keys创建一个名为my-config的configmap

kubectl create configmap my-config --from-file=key1=/path/to/bar/file1.txt --from-file=key2=/path/to/bar/file2.txt

使用key1 = config1和key2 = config2创建一个名为my-config的configmap

kubectl create configmap my-config --from-literal=key1=config1 --from-literal=key2=config2

从文件中的key = value对创建一个名为my-config的configmap

kubectl create configmap my-config --from-file=path/to/bar

从env文件创建一个名为my-config的configmap

kubectl create configmap my-config --from-env-file=path/to/bar.env

5、kubectl create deployment

创建具有指定名称的deployment 。

语法

$ deployment NAME --image=image [--dry-run]

示例

创建一个名为my-dep的deployment,运行busybox镜像。

kubectl create deployment my-dep --image=busybox

6、kubectl create namespace

创建一个具有指定名称的namespace。

语法

$ namespace NAME [--dry-run]

示例

创建一个名为my-namespace的namespace

kubectl create namespace my-namespace

7、kubectl create poddisruptionbudget

使用指定的name、selector和所需的最小pod数量,创建一个pod disruption budget(PDB)。

举例说明

例如:一个服务由有10个pod,指定最少需要8个(80%)pod在运行,那么在删除的时候最多就只能删除2个pod。为了保证在删除pod的同时,不影响服务正常运行。

语法

$ poddisruptionbudget NAME --selector=SELECTOR --min-available=N [--dry-run]

示例

创建名为my-pdb的pod disruption budget,使用app = rails label #来选择所有po​​d,要求至少1个Pod可用。

kubectl create poddisruptionbudget my-pdb --selector=app=rails --min-available=1

创建名为my-pdb的pod disruption budget,使用app = nginx label #选择所有po​​d,要求至少50%Pod可用。

kubectl create pdb my-pdb --selector=app=nginx --min-available=50%

8、kubectl create quota

创建具有指定名称、hard限制和可选scopes的resourcequota,主要是用来限制CPU、内存、磁盘等配置。

语法

$ quota NAME [--hard=key1=value1,key2=value2] [--scopes=Scope1,Scope2] [--dry-run=bool]

示例

创建名为my-quota的resourcequota

kubectl create quota my-quota --hard=cpu=1,memory=1G,pods=2,services=3,replicationcontrollers=2,resourcequotas=1,secrets=5,persistentvolumeclaims=10

创建名为best-effort的resourcequota

kubectl create quota best-effort --hard=pods=100 --scopes=BestEffort

9、kubectl create role

使用单一规则创建Role。再通过RoleBinding将Role绑定给user、group和serviceaccount。

语法

$ role NAME --verb=verb --resource=resource.group/subresource [--resource-name=resourcename] [--dry-run]

示例

创建名为“pod-reader”的Role ,允许用户在pod上执行“get”,“watch”和“list”

kubectl create role pod-reader --verb=get --verb=list --verb=watch --resource=pods

创建名为“pod-reader”的Role,并指定ResourceName

kubectl create role pod-reader --verb=get,list,watch --resource=pods --resource-name=readablepod --resource-name=anotherpod

使用指定的API Group 创建名为“foo”的Role

kubectl create role foo --verb=get,list,watch --resource=rs.extensions

使用指定的SubResource创建名为“foo”的Role

kubectl create role foo --verb=get,list,watch --resource=pods,pods/status

10、kubectl create rolebinding

为特定Role或ClusterRole创建RoleBinding。

语法

$ rolebinding NAME --clusterrole=NAME|--role=NAME [--user=username] [--group=groupname] [--serviceaccount=namespace:serviceaccountname] [--dry-run]

示例

将admin ClusterRole授予user1,user2和group1。

kubectl create rolebinding admin --clusterrole=admin --user=user1 --user=user2 --group=group1

参考文档:Kubernetes中文文档

kubectl 命令使用(create系列)相关推荐

  1. kubectl命令大全

    全栈工程师开发手册 (作者:栾鹏) 架构系列文章 kubectl 安装 参考https://blog.csdn.net/luanpeng825485697/article/details/808625 ...

  2. kubectl常用命令_《蹲坑学kubernetes》之十五:kubectl命令详解

    kubectl用于运行Kubernetes集群命令的管理工具.本章节主要讲了kubectl基本语法和使用方法.在以后的实际工作中,使用越来越多,也会越来越熟悉. 1.kubectl语法 kubectl ...

  3. kubectl logs -f tail 显示100_系统管理员应该知道的9个kubectl命令

    kubectl是Kubernetes的一个命令行管理工具,可用于Kubernetes上的应用部署和日常管理.本文列举了9个常见的kubectl命令,并对每个命令进行了简单扼要的介绍,供大家参考.同时, ...

  4. 容器编排技术 -- Kubernetes kubectl 命令表

    容器编排技术 -- Kubernetes kubectl 命令表 kubectl命令列表 kubectl run(创建容器镜像) kubectl expose(将资源暴露为新的 Service) ku ...

  5. Kubernetes中pod分类、核心组件、网络模型及kubectl命令使用

    文章目录 Kubernetes中pod分类.核心组件.网络模型及kubectl命令使用 1.k8s中pod分类 2.核心组件 3.网络模型 4.kubectl常用命令使用 Kubernetes中pod ...

  6. kubectl命令使用滚动更新和回滚

    这里写目录标题 Kubectl命令的使用 create get expose delete edit scale autoscale cluster-info describe logs attach ...

  7. kubectl命令行管理工具

    kubectl 就是 kube-apiserver 的客户端程序,是通过连接 master 节点的 apiserver 上实现各种 k8s 相关对象资源的增删改查 k8s 可管理对象资源: 资源分类 ...

  8. kubectl命令应用

    kubectl命令语法 kubectl [command] [TYPE] [NAME] [flags] command:子命令,用于操作Kubernetes集群资源对象的命 令,例如create.de ...

  9. 云原生之kubectl命令详解

    目录 1.查看版本信息:kubectl version 2.查看资源对象简写(缩写):kubectl api-resources 3.查看集群信息:kubectl cluster-info 4.查看帮 ...

  10. Kubernetes集群kubectl命令的常见使用方法

    简介:kubectl是一个命令行界面,用于运行针对Kubernetes群集的命令. 语法: kubectl [command] [TYPE] [NAME] [flags] command:指定您希望对 ...

最新文章

  1. 深度学习(5)感知机(神经元)与神经网络
  2. 《转》十种更好的表达“你的代码写的很烂”的方法
  3. ubuntu修改新增用户的目录_Ubuntu 18.04下创建新用户/目录、修改用户权限及删除用户的方法...
  4. 2、Android应用程序基本特性
  5. EBS 11i数据库升级(9i-10g)几点事项
  6. 学习笔记#Android Studio 从安装到虚拟机启动
  7. 2021年,Azure云遇到. NET5,注定开启高光时刻,微软的心,真大!
  8. java虚拟机的内存模型_JVM(Java虚拟机)内存模型(转载/整理)
  9. 正六边形网格化(Hexagonal Grids)原理与实现
  10. 初步搭建RocketMQ环境
  11. FFmpeg入门知识(二):Windows环境下编译FFMPEG源码
  12. eclipse安装SVN插件
  13. 5寸照片尺寸_证件照尺寸及更换背景颜色教程
  14. 卡方检验四格表怎么做_SPSS案例实践:2*2四格表卡方检验
  15. Android 获取当天零点的毫秒值并将时间格式化
  16. 计算机输入输出方式的应用,[原创]计算机组成原理之输入输出系统题目及解答...
  17. python print函数用法_print函数的用法总结
  18. Excel技巧—一个公式实现中英文翻译
  19. 端游开发用什么技术可以让用户更短时间内体验游戏?端游分发...
  20. ORA-14400错误

热门文章

  1. 中国月子中心行业发展形势展望及投资前景预测报告2021年版
  2. 编写高质量代码改善java程序的151个建议——[110-117]异常及Web项目中异常处理
  3. Python和Pyqt5如何绘制中国各大城市地铁线路图
  4. 【Kafka】kafka 获取消费组 详情 Exiting due to KeeperErrorCode = NoNode for /consumers/group
  5. openGL-读取off、stl、obj文件并旋转平移缩放操作
  6. 智慧城市排水管网监测系统解决方案
  7. Android ------ Android X 的BottomNavigationView底部导航栏
  8. python图片大小怎么算的_python图片大小处理;
  9. 数据资源丨原始数据哪里找?这些网站要用好!(建议收藏)
  10. android 逆向入门知识