zoukankan      html  css  js  c++  java
  • skywalking/8.5部署

    制作镜像

    OAP镜像

    # cat oap/Dockerfile 
    FROM apache/skywalking-oap-server:8.5.0-es7
    # 时区修改为东八区
    RUN apk add --no-cache tzdata
    ENV TZ=Asia/Shanghai
    RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
     
    # docker build -t registry-vpc.cn-beijing.aliyuncs.com/hmy_repo/oap:8.5 .
    #上传到私由仓库
    # docker push registry-vpc.cn-beijing.aliyuncs.com/hmy_repo/oap:8.5
    

    UI镜像

    # cat ui/Dockerfile 
    FROM apache/skywalking-ui:8.5.0
     
    # 时区修改为东八区
    RUN apk add --no-cache tzdata
    ENV TZ=Asia/Shanghai
    RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
     
    # docker build -t registry-vpc.cn-beijing.aliyuncs.com/hmy_repo/oap-ui-8.5-v1 .
    #上传到私由仓库
    # docker push registry-vpc.cn-beijing.aliyuncs.com/hmy_repo/oap-ui-8.5-v1
    

    Agent镜像

    agent 下载地址没有变动项:https://archive.apache.org/dist/skywalking/8.5.0/apache-skywalking-apm-es7-8.5.0.tar.gz

    # cat Dockerfile 
    FROM alpine:3
     
    # 时区修改为东八区
    RUN apk add --no-cache tzdata
    ENV TZ=Asia/Shanghai
    RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
     
    ENV LANG=C.UTF-8
     
    RUN set -eux && mkdir -p /data
      
    ADD agent /data/agent
      
    WORKDIR /
    
    # docker build -t registry-vpc.cn-beijing.aliyuncs.com/hmy_repo/skywalking-agent:8.5 .
    #上传到私由仓库
    # docker push registry-vpc.cn-beijing.aliyuncs.com/hmy_repo/skywalking-agent:8.5
    

    部署skywalking服务

    部署oap

    # cat oap.yaml 
    apiVersion: v1
    kind: ServiceAccount
    metadata:
      name: skywalking-oap
      namespace: skywalking
    ---
    apiVersion: rbac.authorization.k8s.io/v1
    kind: RoleBinding
    metadata:
      name: skywalking-oap
      namespace: skywalking
    roleRef:
      apiGroup: rbac.authorization.k8s.io
      kind: Role
      name: skywalking-oap
    subjects:
    - kind: ServiceAccount
      name: skywalking-oap
      namespace: skywalking
    ---
    kind: Role
    apiVersion: rbac.authorization.k8s.io/v1
    metadata:
      namespace: skywalking
      name: skywalking-oap
    rules:
    - apiGroups: [""]
      resources: ["pods"]
      verbs: ["get", "watch", "list"]
    
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      labels:
        app: oap  
        release: oap
      name: oap
      namespace: skywalking
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: oap
          release: oap
      template:
        metadata:     
          labels:
            app: oap
            release: oap
        spec:
          imagePullSecrets:
            - name: harborsecret
          containers:
          - env:
            - name: JAVA_OPTS
              #value: -Dmode=no-init -Xmx2g -Xms2g
              value: -Xmx2g -Xms2g
            - name: SW_CLUSTER
              value: kubernetes
            - name: SW_CLUSTER_K8S_NAMESPACE   #集群命名空间
              value: skywalking
            - name: SW_CLUSTER_K8S_LABEL
              value: app=oap,release=oap
            - name: SKYWALKING_COLLECTOR_UID
              valueFrom:
                fieldRef:
                  apiVersion: v1
                  fieldPath: metadata.uid
            - name: SW_STORAGE        #存储类型
              value: elasticsearch7
            - name: SW_STORAGE_ES_CLUSTER_NODES   #es地址
              value: 172.17.226.61:9200
    #        - name: SW_ES_USER
    #          value: ""
    #        - name: SW_ES_PASSWORD
    #          value: ""
            image: registry.cn-beijing.aliyuncs.com/hmy_repo/oap:8.5v1
            imagePullPolicy: Always
            livenessProbe:
              failureThreshold: 3
              initialDelaySeconds: 15
              periodSeconds: 20
              successThreshold: 1
              tcpSocket:
                port: 12800
              timeoutSeconds: 1
            name: oap
            ports:
            - containerPort: 11800
              name: grpc
              protocol: TCP
            - containerPort: 12800
              name: rest
              protocol: TCP
            readinessProbe:
              failureThreshold: 3
              initialDelaySeconds: 15
              periodSeconds: 20
              successThreshold: 1
              tcpSocket:
                port: 12800
              timeoutSeconds: 1
          initContainers:
          - command:
            - sh
            - -c
            - for i in $(seq 1 60); do nc -z -w3 172.17.226.61 9200 && exit 0 || sleep
              5; done; exit 1
            image: busybox:1.30
            imagePullPolicy: Always
            name: wait-for-elasticsearch
          restartPolicy: Always
          serviceAccount: skywalking-oap
          serviceAccountName: skywalking-oap
    ---
    apiVersion: v1
    kind: Service
    metadata:
      labels:
        app: oap
      name: oap-svc
      namespace: skywalking
    spec:
      ports:
      - name: rest
        port: 12800
        protocol: TCP
        targetPort: 12800
      - name: grpc
        port: 11800
        protocol: TCP
        targetPort: 11800
      selector:
        app: oap
      sessionAffinity: None
      type: ClusterIP
    

    部署ui

    # cat ui.yaml 
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      labels:
        app: ui
        release: ui
      name: ui
      namespace: skywalking
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: ui
          release: ui
      template:
        metadata:
          labels:
            app: ui
            release: ui
        spec:
          imagePullSecrets:
            - name: harborsecret
          containers:
          - env:
            - name: SW_OAP_ADDRESS   #oap地址
              value: oap-svc:12800
            - name: security.user.admin.password   #账号密码
              value: admin
            image: registry-vpc.cn-beijing.aliyuncs.com/hmy_repo/oap-ui-8.5-v1:latest
            imagePullPolicy: Always
            name: ui
            ports:
            - containerPort: 8080
              name: page
              protocol: TCP
    ---
    apiVersion: v1
    kind: Service
    metadata:
      labels:
        app: ui
      name: ui-svc
      namespace: skywalking
    spec:
      externalTrafficPolicy: Cluster
      ports:
      - nodePort: 31234
        port: 80
        protocol: TCP
        targetPort: 8080
      selector:
        app: ui
      sessionAffinity: None
      type: NodePort
    

    查看获取对于的ui

    kubectl get svc -n skywalking 
    skywalking    ui-svc                      NodePort    10.68.98.32     <none>        80:31234/TCP             53s
    

    集成sidecar

    # cat x-admin.yaml
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: x-admin
      namespace: skywalking
      labels: 
        app: x-admin
    spec: 
      replicas: 1
      selector:
        matchLabels:
          app: x-admin
      template:
        metadata:
          labels:
            app: x-admin
        spec:
          imagePullSecrets:
            - name: harborsecret
          initContainers:
            - name: sidecar
              image: registry-vpc.cn-beijing.aliyuncs.com/hmy_repo/skywalking-agent:8.5 # 容器镜像,包含静态资源文件
              imagePullPolicy: Always
              command: ["cp", "-r", "/data/agent", "/sidecar"]
              volumeMounts:
                - name: sidecar
                  mountPath: /sidecar
          containers:
            - name: x-admin
              image: registry.cn-beijing.aliyuncs.com/hmy_repo/x-admin:master-33
              imagePullPolicy: Always
              env:
                - name: JAVA_TOOL_OPTIONS
                  value: -javaagent:/sidecar/agent/skywalking-agent.jar
                - name: SW_AGENT_NAME
                  value: x-admin
                - name: SW_AGENT_COLLECTOR_BACKEND_SERVICES    #oap地址
                  value: oap-svc:11800
              resources:
                limits:
                  memory: "1Gi"
                requests:
                  memory: "1Gi"
              ports:
                - name: http
                  containerPort: 8080
                  protocol: TCP
              volumeMounts:
                - name: date
                  mountPath: /etc/localtime
                - name: sidecar
                  mountPath: /sidecar
          volumes:
            - name: date
              hostPath:
                path: /etc/localtime
            - name: sidecar  #共享agent文件夹
              emptyDir: {}
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: x-admin-svc
      namespace: skywalking
      labels:
        app: x-admin
    spec:
      sessionAffinity: "ClientIP"
      ports:
        - name: http
          port: 8080
          protocol: TCP
          targetPort: 8080
          nodePort: 30836
      selector:
        app: x-admin
      type: NodePort
    
    如果当你发现自己的才华撑不起野心时,那就请你安静下来学习
  • 相关阅读:
    编写一个函数,接受三个string参数,s,oldVal和newVal。使用迭代器及insert和erase函数将s中所有oldVal替换为newVal。测试你的程序,用他替换通用的简写形式,如,将“tho”,将“”“”
    输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。
    oracle中 connect by prior 递归算法
    Java实现3DES加密--及ANSI X9.8 Format标准 PIN PAN获取PIN BlOCK
    XML预览
    Javascript跳转页面和打开新窗口等方法
    Eclipse读取含有extjs的项目文件时卡死或者编写ExtJS时卡
    Oracle-更新字段-一张表的字段更新另一张的表的字段
    Oracle-表被锁住
    03_Ext_Viewport_Window_Dialog
  • 原文地址:https://www.cnblogs.com/haozheyu/p/15593888.html
Copyright © 2011-2022 走看看