Kubernetes部署Smart Agent

步骤一:获取镜像

1.      下载镜像安装包

登录DOCP平台,在门户首页,单击APM-Server从下载镜像安装包

docker tag cw_smartagent_busybox:1.0 harbor.cloudwise.com/nonghang/cw_smartagent_busybox:1.0

2.      push到远程仓库

docker push harbor.cloudwise.com/nonghang/cw_smartagent_busybox:1.0

3.      准备yaml文件

apiVersion: apps/v1
kind: DaemonSet
metadata:
  name: apm-smartagent
spec:
  selector:
    matchLabels:
      name: apm-smartagent
  template:
    metadata:
      labels:
        name: apm-smartagent
    spec:
      hostPID: true
      hostIPC: true
      hostNetwork: true
      nodeSelector: #约束smartagent只能在特定的节点上运行
        kubernetes.io/os: linux #linux节点
        kubernetes.io/arch: amd64 #x64位机器
      volumes:
      - name: logs
        hostPath:
          path: /var/cloudwise/smartagent/logs # 日志路径
      containers:
      - name: apm-smartagent
        image: cw_smartagent_busybox:1.0 #使用的实际镜像
        resources: #资源使用限制
          limits:
            cpu: "2"  #2个cpu核心
          requests:
            cpu: "0.1"
        env:  #设置容器环境变量
        - name: SMARTAGENT_CONFIGSERVER #后端地址
          value: ''
        - name: SMARTAGENT_DATASERVER
          value: ''
        - name: SMARTAGENT_LICENSE
          value: 'J45Engw88NeHUZ4Q7qNsK8L47FTH**QvgW113IEnsNaBNMR5zZ**oj/g!!!!'
        # 可选配置项
        #-name:SMARTAGENT_LOGLEVE #日志级别
        # value:'ERROR'
        #-name:ENABLE_AGENT_TYPE #允许注入的语言类型
        # value:'java,dnetcore'
        #-name:ALPINE_GLIBC_ENABLE #定制化控制拦截器注入
        # value:'true'
        args:
        - ''
        volumeMounts:
        - name: logs
          mountPath: /opt/cloudwise/smartagent/logs
        securityContext:
          privileged: true

步骤二:使用镜像

l  方法一:在k8s管理界面创建守护进程,或者使用kubectl执行提供的yaml文件。

image005.jpg

l  方法二:命令行使用镜像

#启动:
kubectl apply -f cw_smartagent_kubernetes.yaml -n [namespace]
#删除:
kubectl delete -f cw_smartagent_kubernetes.yaml -n [namespace]