Kubernetes:18.kubectl edit
2019-08-13 本文已影响0人
小六的昵称已被使用
语法
[14:47:56 root@ceshi-01 ~ $]kubectl edit --help
Edit a resource from the default editor.
从默认编辑器编辑资源。
The edit command allows you to directly edit any API resource you can retrieve via the command line tools.
edit命令允许您直接编辑可以通过命令行工具检索的任何API资源。
It will open the editor defined by your KUBE_EDITOR, or EDITOR environment variables, or fall back to 'vi' for Linux or 'notepad' for Windows.
它将打开由您的KUBE_EDITOR或EDITOR环境变量定义的编辑器,或者回退到Linux的'vi'或Windows的'notepad'。
You can edit multiple objects, although changes are applied one at a time. The command accepts filenames as well as command line arguments, although the files you
point to must be previously saved versions of resources.
您可以编辑多个对象,但一次只应用一个更改。 该命令接受文件名和命令行参数,但您指向的文件必须是以前保存的资源版本。
Editing is done with the API version used to fetch the resource. To edit using a specific API version, fully-qualify the resource, version, and group.
使用用于获取资源的API版本完成编辑。 要使用特定API版本进行编辑,请对资源,版本和组进行完全限定。
The default format is YAML. To edit in JSON, specify "-o json".
默认格式为YAML。 要在JSON中编辑,请指定“-o json”。
The flag --windows-line-endings can be used to force Windows line endings, otherwise the default for your operating system will be used.
标志--windows-line-endings可用于强制Windows行结尾,否则将使用操作系统的默认值。
In the event an error occurs while updating, a temporary file will be created on disk that contains your unapplied changes.
如果更新时发生错误,将在磁盘上创建包含未应用更改的临时文件。
The most common error when updating a resource is another editor changing the resource on the server.
更新资源时最常见的错误是另一个更改服务器上资源的编辑器。
When this occurs, you will have to apply your changes to the newer version of the resource, or update your temporary saved copy to include the latest resource version.
发生这种情况时,您必须将更改应用于较新版本的资源,或更新临时保存的副本以包含最新的资源版本。
示例:
# Edit the service named 'docker-registry':
# 编辑名为'docker-registry'的服务:
kubectl edit svc/docker-registry
# Use an alternative editor
# 使用另一种编辑器
KUBE_EDITOR="nano" kubectl edit svc/docker-registry
# Edit the job 'myjob' in JSON using the v1 API format:
# 使用v1 API格式在JSON中编辑作业'myjob':
kubectl edit job.v1.batch/myjob -o json
# Edit the deployment 'mydeployment' in YAML and save the modified config in its annotation:
# 在YAML中编辑部署“mydeployment”并将修改后的配置保存在其注释中:
kubectl edit deployment/mydeployment -o yaml --save-config
选项:
--allow-missing-template-keys=true: If true, ignore any errors in templates when a field or map key is missing in
the template. Only applies to golang and jsonpath output formats.
-f, --filename=[]: Filename, directory, or URL to files to use to edit the resource
-k, --kustomize='': Process the kustomization directory. This flag can't be used together with -f or -R.
-o, --output='': Output format. One of:
json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-file.
--output-patch=false: Output the patch if the resource is edited.
--record=false: Record current kubectl command in the resource annotation. If set to false, do not record the
command. If set to true, record the command. If not set, default to updating the existing annotation value only if one
already exists.
-R, --recursive=false: Process the directory used in -f, --filename recursively. Useful when you want to manage
related manifests organized within the same directory.
--save-config=false: If true, the configuration of current object will be saved in its annotation. Otherwise, the
annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.
--template='': Template string or path to template file to use when -o=go-template, -o=go-template-file. The
template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].
--validate=true: If true, use a schema to validate the input before sending it
--windows-line-endings=false: Defaults to the line ending native to your platform.
用法:
kubectl edit (RESOURCE/NAME | -f FILENAME) [options]
Use "kubectl options" for a list of global command-line options (applies to all commands).