## kubefed init 初始化联邦控制平面 ### 概要 Init 用来初始化联邦控制平面 联邦控制平面位于 Kubernetes 集群内。必须使用 --host-cluster-context 参数指定主机集群。 ``` kubefed init FEDERATION_NAME --host-cluster-context=HOST_CONTEXT [flags] ``` ### 示例 ``` ``` # 为主机集群中名为 foo 的联邦初始化控制平面,该主机集群中的本地 kubeconfig 上下文为 bar。 kubefed init foo --host-cluster-context=bar ``` ### 选项 ``` --api-server-advertise-address string 公布 API 服务器的 nodeport 服务的首选地址。 只在 'api-server-service-type=NodePort' 时有效。 --api-server-port int32 API 服务器的 nodeport 服务的首选端口(设置为 0 将随机指定端口)。只在 'api-server-service-type=NodePort' 时有效。 --api-server-service-type string 创建联邦 API 服务器的服务类型。 选项包括:'LoadBalancer'(默认),'NodePort'。(默认 "LoadBalancer") --apiserver-arg-overrides string 要重写的联合 API 服务器参数列表,用逗号分隔, 例如 "--arg1=value1,--arg2=value2..." --apiserver-enable-basic-auth 为联邦 API 服务器启用 HTTP 基本身份验证。默认关闭。 --apiserver-enable-token-auth 为联邦 API 服务器启用令牌身份验证。默认关闭。 --controllermanager-arg-overrides string 要重写的 federation-controller-manager 参数列表,用逗号分隔,例如:"--arg1=value1,--arg2=value2..." --credentials-kubeconfig string 本地文件系统上的 kubeconfig 文件路径,应用于与主机集群或加入集群(而不是默认的 kubeconfig)进行身份验证。这可用于在初始化联邦控制平面或将集群加入到一个集群时覆盖基于 RBAC 的身份验证,即使在集群公开 RBAC API 时也是如此。 --dns-provider string 此 deployment 使用的 DNS 驱动。 --dns-provider-config string 用来配置 DNS 驱动的本地文件系统中的配置文件。 --dns-zone-name string 此联邦的 DNS 后缀。使用此后缀发布联邦服务 DNS 名称。 --dry-run 在不向服务器发送命令的情况下进行试运行。 --etcd-image string 服务器使用的镜像(默认 "gcr.io/google_containers/etcd:3.1.10") --etcd-persistent-storage etcd 使用持久卷,默认为 'true'。(默认 true) --etcd-pv-capacity string etcd 所使用的持久卷申领的大小(默认 "10Gi") --etcd-pv-storage-class string etcd 所使用的持久卷申领的存储类。如果主机集群没有配置默认存储类,就必须提供。 --etcd-servers string 用来存储联邦状态的外部预部署的 etcd 服务器。 --federation-system-namespace string 主机集群上用来安装联邦系统组件的命名空间(默认 "federation-system") -h, --help init 的帮助信息 --host-cluster-context string 主机集群的上下文 --image string 用于联邦 API 服务器和控制器管理器二进制文件的镜像。(默认 "gcr.io/k8s-jkns-e2e-gce-federation/fcp-amd64:v0.0.0-master_$Format:%h$") --image-pull-policy string 拉取策略描述了容器映像的拉取策略。默认的拉取策略是 ifNotPresent,如果镜像已存在,则不会拉它。(默认 "IfNotPresent") --image-pull-secrets string 提供访问私有仓库的 secret。 --node-selector string 逗号分隔的 nodeSelector(节点选择器)参数列表,例如:"arg1=value1,arg2=value2..." ``` ### 从父命令继承的选项 ``` --alsologtostderr 同时将日志输出到标准错误输出(stderr) --as string 用户名模拟操作 --as-group stringArray 要模拟操作的组,可以重复使用此参数来指定多个组。 --cache-dir string 默认 HTTP 缓存目录(默认 "/Users/jrondeau/.kube/http-cache") --certificate-authority string 证书创建的证书机构的的路径 --client-certificate string TLS 客户端证书的路径 --client-key string TLS 客户端秘钥的路径 --cloud-provider-gce-lb-src-cidrs cidrs 在 GCE 防火墙中放开的 CIDRs,用于 LB 流量代理和检查是否正常(默认 130.211.0.0/22,209.85.152.0/22,209.85.204.0/22,35.191.0.0/16) --cluster string 使用的 kubeconfig 集群的名称 --context string 使用的 kubeconfig 上下文名称 --default-not-ready-toleration-seconds int 对于未添加 notReady:NoExecute 容忍度设置的所有 Pod,为其设置此参数值作为对 notReady:NoExecute 容忍度的容忍秒数(tolerationSeconds);默认值为 300 秒。 --default-unreachable-toleration-seconds int 对于未设置 unreachable:NoExecute 容忍度的所有 Pod,设置其对 unreachable:NoExecute 的容忍度秒数(tolerationSeconds);默认值为 300 秒。 --insecure-skip-tls-verify 如果是 true,将不检查服务器证书的有效性。这将使您的 HTTPS 连接不安全 --ir-data-source string 由 InitialResources 使用的数据源;支持的选项有:influxdb 和 gcm(默认 "influxdb")。 --ir-dbname string 数据库名,其中包含 InitialResources 所需的指标(默认 "k8s") --ir-hawkular string Hawkular 配置 URL --ir-influxdb-host string 包含 InitialResources 需要的指标的 InfluxDB 的地址(默认 "localhost:8080/api/v1/namespaces/kube-system/services/monitoring-influxdb:api/proxy") --ir-namespace-only 是否仅根据来自相同命名空间的数据进行估算。 --ir-password string 用于连接到 InfluxDB 的密码(默认 "root") --ir-percentile int 在估算资源时,InitialResoruces 要使用的样本百分比。仅用于实验目的。默认值为 90。 --ir-user string 用于连接到 InfluxDB 的用户(默认 "root") --kubeconfig string 用于 CLI 请求的 kubeconfig 文件的路径。 --log-backtrace-at traceLocation 当日志机制遇到文件行 file:N 时,打印堆栈轨迹;默认值为 “:0”。 --log-dir string 如果非空,在此目录中写入日志文件 --log-flush-frequency duration 日志刷新的最大秒数(默认 5s) --logtostderr 记录日志到标准错误输出(stderr)而不是文件中;默认值为 true --match-server-version 要求服务器版本与客户端版本匹配 -n, --namespace string 若给定,用来设置 CLI 请求的命名空间范围 --password string 用来对 API 服务器进行基本身份验证的密码 --request-timeout string 放弃单个服务器请求前等待的时间长度。非零值应包含相应的时间单位(如 1s、2m 或 3h)。值为 0 表示请求不超时;默认值为 "0" -s, --server string Kubernetes API 服务器的地址和端口 --stderrthreshold severity 在此阈值或以上的日志将转到 stderr(默认 2) --token string 向 API 服务器进行身份验证的持有者令牌 --user string 使用的 kubeconfig 用户的名称 --username string 用户名,用于对 API 服务器的基本身份验证 -v, --v Level V 日志的日志级别 --vmodule moduleSpec 基于文件的日志过滤,取值为逗号分隔的列表,列表中每项的格式为 "pattern=N" ``` ### 其他参考 * [kubefed](kubefed.md) - 用 kubefed 控制 Kubernetes 集群联邦 ###### 原文由 spf13/cobra 自动生成于 2018-9-24