kubernetes集群配置
- 安装helm
- 可以通过pvc动态创建pv
- kubectl 版本要求1.8或1.9
自定义DNS
安装etcd(for dns)
helm install --namespace my-namespace --name etcd-operator stable/etcd-operator
helm upgrade --namespace my-namespace --set cluster.enabled=true etcd-operator stable/etcd-operator
部署coredns
helm fetch stable/coredns
解压后修改values
isClusterService: false
plugins:
kubernetes:
enabled: false
etcd:
enabled: true
zones:
- "example.com."
endpoint: "http://etcd-cluster.my-namespace:2379"
**zones 最后有个 .
**
helm install --namespace my-namespace --name coredns -f Values.yaml stable/coredns
初始化主集群
获取kubefed
从github上下载 地址: https://github.com/kubernetes/federation/releases
coredns配置
cat coredns-provider.conf
[Global]
etcd-endpoints = http://etcd-cluster.my-namespace:2379
zones = example.com.
获取集群的连接信息
kubectl config get-contexts
CURRENT NAME CLUSTER AUTHINFO NAMESPACE
* fellowship fellowship fellowship
node202.k8s.com kubernetes kubernetes-admin
sjx.k8s.com kubernetes-sjx kubernetes-admin-sjx
部署federation
kubefed init fellowship \ #集群联邦的context name
--host-cluster-context=node202.k8s.com \ #主集群的context NAME
--dns-provider="coredns" \ # DNS 服务提供商,还支持 aws-route53 或 google-clouddns
--dns-zone-name="k8s.inspur.com." \ #域名后缀,必须以. 结束
--dns-provider-config="/root/coredns-provider.conf" \ #coredns 配置
--apiserver-arg-overrides="--anonymous-auth=false,--v=4" \ # federation API server 自定义参数
--api-server-service-type="NodePort" \ #在自己的机器上需要用NodePort
--etcd-pv-storage-class='ceph-rbd' \ #sc
--image='markdotsonrs/fcp-amd64:v1.9.0-alpha.3' \ #使用dockerhub上的镜像
--etcd-image='s7799653/google-etcd' #使用dockerhub上的镜像
注册集群
kubefed join new \ #自定义名称
--host-cluster-context=node202.k8s.com \ #集群联邦所在集群的context
--cluster-context=node202.k8s.com #要加入集群的context
验证
kubectl config use-context fellowship
kubectl get cluster
kubectl create ns default
kubectl run nginx --image nginx --port 80 --replicas=4
kubectl get deploy
kubectl --context=node202.k8s.com get po -n default
kubectl --context=sjx.k8s.com get po -n default
参考
https://my.oschina.net/u/2306127/blog/1835623
https://kubernetes.io/docs/tasks/federation/set-up-cluster-federation-kubefed/
https://feisky.gitbooks.io/kubernetes/content/components/federation.html
网友评论