kubernetes集群配置
- 安裝helm
- 可以通過pvc動態(tài)創(chuàng)建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 \ #集群聯(lián)邦的context name
--host-cluster-context=node202.k8s.com \ #主集群的context NAME
--dns-provider="coredns" \ # DNS 服務(wù)提供商涩蜘,還支持 aws-route53 或 google-clouddns
--dns-zone-name="k8s.inspur.com." \ #域名后綴爷肝,必須以. 結(jié)束
--dns-provider-config="/root/coredns-provider.conf" \ #coredns 配置
--apiserver-arg-overrides="--anonymous-auth=false,--v=4" \ # federation API server 自定義參數(shù)
--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 \ #集群聯(lián)邦所在集群的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