栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Kubernetes学习---kubectl命令使用(3)(service & secret系列)

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Kubernetes学习---kubectl命令使用(3)(service & secret系列)

目录
  • 1、kubectl create service clusterip
    • 语法
    • 示例
  • 2、kubectl create service externalname
    • 语法
    • 示例
  • 3、kubectl create service loadbalancer
    • 语法
    • 示例
  • 4、kubectl create service nodeport
    • 语法
    • 示例
  • 5、kubectl create serviceaccount
    • 语法
    • 示例
  • 6、kubectl create secret tls
    • 语法
    • 示例
  • 7、kubectl create secret generic
    • 语法
    • 示例
  • 8、kubectl create secret docker-registry
    • 语法
    • 示例

1、kubectl create service clusterip

创建具有指定Service名的clusterIP。相当于给指定的service配置默认的虚拟IP

语法
$ clusterip NAME [--tcp=:] [--dry-run]
示例

创建Service名为my-cs为的clusterIP

kubectl create service clusterip my-cs --tcp=5678:8080

创建Service名为my-cs的clusterIP(headless模式)

kubectl create service clusterip my-cs --clusterip="None"
2、kubectl create service externalname

创建指定Service名的ExternalName。

语法
$ externalname NAME --external-name external.name [--dry-run]
示例

创建Service名为my-ns的ExternalName

kubectl create service externalname my-ns --external-name bar.com
3、kubectl create service loadbalancer

创建一个指定名称的Service的LoadBalancer。

语法
$ loadbalancer NAME [--tcp=port:targetPort] [--dry-run]
示例

创建一个Service名为my-lbs的LoadBalancer。

kubectl create service loadbalancer my-lbs --tcp=5678:8080
4、kubectl create service nodeport

创建指定Service名称的nodeport。类似于端口映射,相当于是将指定的service的端口,关联到机器的某个端口,那么就可以通过机器的ip地址:关联的端口这种方式去访问这个service。

语法
$ nodeport NAME [--tcp=port:targetPort] [--dry-run]
示例

创建service名为my-ns的新的nodeport。

kubectl create service nodeport my-ns --tcp=5678:8080
5、kubectl create serviceaccount

创建指定名称的service account。

ServiceAccount是给运行在Pod的程序使用的身份认证,Pod容器的进程需要访问API Server时用的就是ServiceAccount帐户; ServiceAccount仅局限它所在的名称空间,每个名称空间创建时都会自动创建一个默认服务帐户;创建Pod时,如果没有指定服务帐户,Pod重新使用默认服务帐户。

语法
$ serviceaccount NAME [--dry-run]
示例

创建一个名为my-service-account的 service account

kubectl create serviceaccount my-service-account
6、kubectl create secret tls

从给定的(public/private)公钥/私钥对创建TLS secret 。

公共密钥证书必须是.PEM编码并匹配指定的私钥。

语法
$ tls NAME --cert=path/to/cert/file --key=path/to/key/file [--dry-run]
示例

使用指定的key创建名为tls-secret的TLS secret :

kubectl create secret tls tls-secret --cert=path/to/tls.cert --key=path/to/tls.key
7、kubectl create secret generic

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

secret可以保存为一个或多个key/value信息。

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

当基于目录创建secret时,key还是文件的基础名称,目录中有效的key的每个文件都被打包到secret中,除了常规文件之外的任何目录条目都被忽略(例如subdirectories, symlinks, devices, pipes, etc)。

语法
$ generic NAME [--type=string] [--from-file=[key=]source] [--from-literal=key1=value1] [--dry-run]
示例

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

kubectl create secret generic my-secret --from-file=ssh-privatekey=~/.ssh/id_rsa --from-file=ssh-publickey=~/.ssh/id_rsa.pub

用key1 = supersecret和key2 = topsecret创建一个名为my-secret的secret

kubectl create secret generic my-secret --from-literal=key1=supersecret --from-literal=key2=topsecret

从env文件创建名为my-secret的secret

kubectl create secret generic my-secret --from-env-file=path/to/bar.env
8、kubectl create secret docker-registry

创建与Docker registries一起使用的secret。

Dockercfg secrets用于对Docker registries进行安全认证。

当使用Docker命令push镜像时,可以进行Docker registries认证

$ docker login DOCKER_REGISTRY_SERVER --username=DOCKER_USER --password=DOCKER_PASSWORD --email=DOCKER_EMAIL'.

这时会产生一个 ~/.dockercfg 文件,在“docker push”和“docker pull”命令时,此文件用于registries进行认证。

在创建应用时,当Node节点从私有仓库Pull镜像时,需要有相应凭证,才能使用私有Docker仓库。我们可以通过创建dockercfg secret并添加到service account来实现。

语法
$ docker-registry NAME --docker-username=user --docker-password=password --docker-email=email [--docker-server=string] [--from-literal=key1=value1] [--dry-run]
示例

如果没有.dockercfg 文件,则可以使用以下命令创建dockercfg secret:

kubectl create secret docker-registry my-secret --docker-server=DOCKER_REGISTRY_SERVER --docker-username=DOCKER_USER --docker-password=DOCKER_PASSWORD --docker-email=DOCKER_EMAIL

参考文档:Kubernetes中文文档

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/679913.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号