rancher部署k8s集群

前提条件:

docker已经安装

一、Docker快速安装

sudo docker run -d --name=rancher2  --restart=unless-stopped -p 9080:80 -p 9443:443 rancher/rancher:stable

剩下步骤按要求一步一步来

二、部署私有网络下的LB开源方案metallb

在kubectl终端下执行一下命令

# 安装metallb.yaml
kubectl apply -f https://gitee.com/cyneck/metallb/raw/master/manifests/metallb.yaml

# 查看metallb-system命名空间是否生成
kubectl get all -n metallb-system

配置负载均衡私有网络下的地址池

kubectl apply -f - << EOF

apiVersion: v1
kind: ConfigMap
metadata:
  namespace: metallb-system
  name: config
data:
  config: |
    address-pools:
    - name: default      # 默认命名空间上
      protocol: layer2
      addresses:
      - 192.168.0.150-192.169.0.240  #自己的局域网地址池区间
   
EOF   #输入EOF,输入文件结束

ingress

kubectl apply -f - << EOF
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-lb
  namespace: default
spec:
  selector:
    matchLabels:
      app: nginx-lb
  replicas: 1
  template:
    metadata:
      labels:
        app: nginx-lb
    spec:
      containers:
        - name: nginx-lb
          image: nginx:1.7.9
          ports:
            - containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
  name: nginx-lb-svc
  namespace: default
  labels:
    app: test-service-svc
spec:
  selector:
    app: nginx-lb
  ports:
    - protocol: TCP
      name: http
      port: 8090
      targetPort: 80
  type: LoadBalancer     # 负载均衡形式
# 查看k8s集群下的service
kubectl get service