zoukankan      html  css  js  c++  java
  • k8s搭建web界面管理rancher

    rancher部署

    一、准备介质

    镜像v2.4.17

    docker pull rancher/rancher:v2.4.17
    

    二、使用docker安装

    点击查看代码
     docker run -d --restart=unless-stopped -p 80:80 -p 443:443 \
     -v /home/ap/aipf/rancher_home/rancher:/var/lib/rancher \
     -v /home/ap/aipf/rancher_home/auditlog:/var/log/auditlog \
     --name rancher rancher/rancher:v2.4.17
    

    访问本机ip

    三、使用k8s部署rancher

    3.1、创建namespace

    kubectl create ns rancher
    

    3.2、创建rancher的存储路径pv/pvc

    点击查看代码
    ---
    apiVersion: v1
    kind: PersistentVolume
    metadata:
      name: pv-rancher
      namespace: rancher
    spec:
      capacity:
        storage: 20Gi
      accessModes:
      - ReadWriteMany
      persistentVolumeReclaimPolicy: Retain
      storageClassName: local-storage
      local:
        path: /home/ap/nas_b
      nodeAffinity:
        required:
          nodeSelectorTerms:
          - matchExpressions:
            - key: kubernetes.io/hostname
              operator: In
              values:
              - k8s-master
    ---
    kind: PersistentVolumeClaim
    apiVersion: v1
    metadata:
      name: pvc-rancher
      namespace: rancher
    spec:
      accessModes:
       - ReadWriteMany
      storageClassName: local-storage
      resources:
        requests:
          storage: 15Gi
    

    3.3、创建rancher的配置文件

    点击查看代码
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      labels:
        app: rancher
      name: rancher
      namespace: rancher
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: rancher
      template:
        metadata:
          labels:
            app: rancher
          containers:
          - image: rancher/rancher:v2.4.17
            imagePullPolicy: IfNotPresent
            name: rancher
            envFrom:
            - configMapRef:
                name: ai-platform-config
            ports:
            - containerPort: 80
            volumeMounts:
            - mountPath: /var/lib/rancher
              name: ai-rancher-volumes
              subPath: rancher_home/rancher
            - mountPath: /var/log/auditlog
              name: ai-rancher-volumes
              subPath: rancher_home/auditlog
    
          volumes:
          - name: ai-rancher-volumes
            persistentVolumeClaim:
              claimName: pvc-rancher
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: rancher
      labels:
        app: rancher
      namespace: rancher
    spec:
      type: ClusterIP
      selector:
        app: ai-admin-web
      ports:
      - port: 80
        targetPort: 80
    
    
    注意:k8s集群多的时候,配置文件可以添加标签指定rancherd pod启动到固定节点上 也可以搭建harbor 拉取镜像从harbor获取 第一次启动rancher可以挂载目录为空,需要你这边使用docker启动后,在吧数据拷贝进去,然后在重启
    点击查看代码
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      labels:
        app: rancher
      name: rancher
      namespace: rancher
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: rancher
      template:
        metadata:
          labels:
            app: rancher
        spec:
          nodeSelector:
            rancherbase: "true"
          containers:
          - image: rancher.harbor.io/rancher/rancher:v2.4.17
            imagePullPolicy: IfNotPresent
            name: rancher
            envFrom:
            - configMapRef:
                name: ai-platform-config
            ports:
            - containerPort: 80
            volumeMounts:
            - mountPath: /var/lib/rancher
              name: ai-rancher-volumes
              subPath: rancher_home/rancher
            - mountPath: /var/log/auditlog
              name: ai-rancher-volumes
              subPath: rancher_home/auditlog
    
          volumes:
          - name: ai-rancher-volumes
            persistentVolumeClaim:
              claimName: pvc-rancher
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: rancher
      labels:
        app: rancher
      namespace: rancher
    spec:
      type: ClusterIP
      selector:
        app: ai-admin-web
      ports:
      - port: 80
        targetPort: 80
    
    
    ![](https://img2020.cnblogs.com/blog/1461308/202112/1461308-20211220164832096-358264527.png)

    3.4、使用上面的配置文件启动rancher服务

    [root@k8s-master conf]# kubectl apply -f rancher-pv.yaml 
    persistentvolume/pv-rancher created
    persistentvolumeclaim/pvc-rancher created
    
    [root@k8s-master conf]# kubectl get pv,pvc -A | grep rancher
    persistentvolume/pv-rancher   20Gi       RWX            Retain           Bound    rancher/pvc-rancher     local-storage            79s
    rancher       persistentvolumeclaim/pvc-rancher   Bound    pv-rancher   20Gi       RWX            local-storage   79s
    

    3.5、启动rancher服务

    [root@k8s-master conf]# kubectl apply -f rancher.yaml 
    deployment.apps/rancher created
    service/rancher created
    
  • 相关阅读:
    Hibernate-----关系映射 重点!!!
    hibernate总结
    hibernate--session的CRUD方法, delete, load,get,update,saveorupdate, clear, flush
    hibernate--对象的三种状态Transient,Persistent,Detached
    hibernate--coreapi--configuration sessionfactory--getcurrentsession--opensession
    hibernate--联合主键--annotation
    Flutter Demo: 径向菜单动画
    Flutter Demo: PageView横向使用
    Flutter: 判断是Android还是Ios
    Flutter:发布包
  • 原文地址:https://www.cnblogs.com/pythonx/p/15711816.html
Copyright © 2011-2022 走看看