当前位置: 首页 > news >正文

k8s-CCE创建工作负载变量引用

CCE创建工作负载变量引用

背景,看到cce创建负载时会生成变量,如下。在skywaking-agent的使用,想要调用cce负载变量生成service_name。
-Dskywalking.agent.authentication里含有敏感信息需要写到配置项。简单粗糙的都写到配置项好像不合适。

创建my_service负载后默认创建变量

PAAS_APP_NAME
PAAS_NAMESPACE
PAAS_PROJECT_ID

1、以dockerfile直接调用,调用不到

FROM centos:v7.0.0
ADD target/*.jar app.jarENV JAVA_OPTS "-Xms2048m -Xmx2048m "
ENV JAVA_OPT  "-Dskywalking.agent.service_name=skywalking-test.$(PAAS_APP_NAME).test"ENTRYPOINT java  $JAVA_OPT  $JAVA_OPTS -jar /app.jar 
/]# ps -ef 
UID          PID    PPID  C STIME TTY          TIME CMD
root           1       0 71 10:49 ?        00:00:32 java -Dskywalking.agent.service_name=skywalking-test.$(PAAS_APP_NAME).test -Xms2048m -Xmx2048m 

构建时引用不到cce的变量,且以字符串的形式给了java-options,不会再产生调用

2、以自定义变量调用cce变量:以下仅$(PAAS_APP_NAME)生效了,使用还是要标准些

自定义	my_app_name		$PAAS_APP_NAME		-->		my_app_name=$PAAS_APP_NAME
自定义	my_app_name2	${PAAS_APP_NAME}	-->		my_app_name2=${PAAS_APP_NAME}
自定义	my_app_name3	$(PAAS_APP_NAME)	-->		my_app_name3=my_service  #正确引用  调用还是要标准些
自定义	my_app_name4	$(apm-test)			-->		my_app_name4=$(apm-test)		#调配置项

最终

FROM centos:v7.0.0
ADD target/*.jar app.jarENV JAVA_OPTS "-Xms2048m -Xmx2048m "ENTRYPOINT java  $JAVA_OPT  $JAVA_OPTS -jar /app.jar 

cce变量配置

JAVA_OPT  -javaagent:/skywalking-agent.jar -Dskywalking.agent.service_name=skywalking-test.$(PAAS_APP_NAME).test

以变量形式配置时,可以调用,但是插拔性不强,去掉就找不回了,而且不够安全。还是想以配置项导入或卸掉

2、配置项调用PAAS_APP_NAME时是调用不到的

配置项导入 --			apm-test	
JAVA_OPT -Dskywalking.agent.service_name=skywalking-test.$PAAS_APP_NAME.test
# 以键值写入数据库,调用时是固定的

3、以start.sh启动,
虽然复杂点,但是多处插拔,比较灵活。dockerfile、与cce的变量strat.sh都可以调用

FROM centos:v7.0.0
ADD target/*.jar app.jar
COPY start.sh /start.sh
ENV JAVA_OPTS "-Xms2048m -Xmx2048m "
ENTRYPOINT ["/bin/bash","/start.sh"]

调用cce的PAAS_APP_NAME

#!/bin/bash
JAVA_OPT="-Dskywalking.agent.service_name=skywalking-test.$PAAS_APP_NAME.test"  # 调用cce的PAAS_APP_NAME
java  $JAVA_OPT $JAVA_OPTS -jar /app.jar

也可以这样

#!/bin/bash
JAVA_OPTS="-Dskywalking.agent.service_name=skywalking-test.$PAAS_APP_NAME.test $JAVA_OPTS"  # 调用cce的PAAS_APP_NAME,调用dockerfile的JAVA_OPTS
java  $JAVA_OPTS -jar /app.jar    # 多个变量,方便使用不通的操作

最终三部分

dockerfile、start.sh可以sed灵活更改,配置项放敏感信息更安全

dockerfile
基础启动配置

FROM centos:v7.0.0
ADD target/*.jar app.jar
COPY start.sh /start.sh
ENV JAVA_OPTS "-Xms2048m -Xmx2048m "
ENTRYPOINT ["/bin/bash","/start.sh"]

cce配置项
存储共用配置、authentication敏感信息

#诸多共用性agent选项配置一个
JAVA_OPT -javaagent:/skywalking-agent.jar -Dskywalking.collector.backend_service=100.12.15.15:12800 -Dskywalking.agent.authentication=SvqIBCDuhAp3yzMK

start.sh

追加临时的变量参数,直接调用cce的负载变量

#!/bin/bash
JAVA_OPTS="-Dskywalking.agent.service_name=skywalking-test.$PAAS_APP_NAME.test $JAVA_OPTS"  # 调用cce的PAAS_APP_NAME,调用dockerfile的JAVA_OPTS
java  $JAVA_OP $JAVA_OPT $JAVA_OPTS -jar /app.jar    # 多个变量,方便使用不通的操作,JAVA_OP预留,这里没有使用
http://www.lryc.cn/news/373532.html

相关文章:

  • 后端主流框架--Spring02
  • [数据集][目标检测]减速带检测数据集VOC+YOLO格式5400张1类别
  • 分析Linux操作指令及使用场景与频率分析 持续更新
  • Redis 字符串(String)
  • 第一篇:容器化的未来:从Docker的革命到云原生架构
  • 【2024最新华为OD-C/D卷试题汇总】[支持在线评测] URL拼接(100分) - 三语言AC题解(Python/Java/Cpp)
  • 反射,枚举以及lambda表达式
  • DNS域名解析----分离解析、多域名解析、父域与子域
  • Spring底层架构核心概念解析
  • C++ 44 之 指针运算符的重载
  • onlyoffice在线预览加载优化
  • 依赖自动装配
  • mysql和redis的双写一致性问题
  • Qwen2——阿里巴巴最新的多语言模型挑战 Llama 3 等 SOTA
  • 等级考试3-2021年3月题
  • Web前端开发PPT:深入探索与实战应用
  • liunx常见指令
  • vscode设置成中文界面
  • python命名空间详解
  • 【日常记录】【vue】vite-plugin-inspect 插件的使用
  • mini web框架示例
  • 基于C#开发web网页管理系统模板流程-主界面统计功能完善
  • chromedriver114以后版本下载地址汇总chromedriver所有版本下载地址汇总国内源下载
  • x86计算机的启动初期流程 Linux 启动流程
  • P450Rdb: CYP450数据库--地表最强系列--文献精读24
  • ubuntu 22.04下载和安装
  • Fegin如何传参form-data文件
  • 解决 Visual C++ 17.5 __cplusplus 始终为 199711L 的问题
  • Mac M3 Pro安装Hadoop-3.3.6
  • mac下Xcode在iphone真机上测试运行iOS软件