KubraGen建筑商:RabbitMQ

kg-rabbitmq的Python项目详细描述


库布拉根建筑商:RabbitMQ

PyPI versionSupported Python versions

kg_rabbitmq是KubraGen的构建器,它部署 Kubernetes的RabbitMQ服务器。在

KubraGen是一个kubernetesyaml生成器库,它可以生成 配置使用Python编程语言的全部功能。在

示例

fromkubragenimportKubraGenfromkubragen.constsimportPROVIDER_GOOGLE,PROVIDERSVC_GOOGLE_GKEfromkubragen.objectimportObjectfromkubragen.optionimportOptionRootfromkubragen.optionsimportOptionsfromkubragen.outputimportOutputProject,OD_FileTemplatefromkubragen.outputimplimportOutputFile_ShellScript,OutputFile_Kubernetes,OutputDriver_Printfromkubragen.providerimportProviderfromkg_rabbitmqimportRabbitMQBuilder,RabbitMQOptionskg=KubraGen(provider=Provider(PROVIDER_GOOGLE,PROVIDERSVC_GOOGLE_GKE),options=Options({'namespaces':{'mon':'app-monitoring',},}))out=OutputProject(kg)shell_script=OutputFile_ShellScript('create_gke.sh')out.append(shell_script)shell_script.append('set -e')## OUTPUTFILE: app-namespace.yaml#file=OutputFile_Kubernetes('app-namespace.yaml')file.append([Object({'apiVersion':'v1','kind':'Namespace','metadata':{'name':'app-monitoring',},},name='ns-monitoring',source='app',instance='app')])out.append(file)shell_script.append(OD_FileTemplate(f'kubectl apply -f ${{FILE_{file.fileid}}}'))shell_script.append(f'kubectl config set-context --current --namespace=app-monitoring')## SETUP: rabbitmq#rabbit_config=RabbitMQBuilder(kubragen=kg,options=RabbitMQOptions({'namespace':OptionRoot('namespaces.mon'),'basename':'myrabbit','config':{'erlang_cookie':'my-secret-cookie',},'kubernetes':{'volumes':{'data':{'persistentVolumeClaim':{'claimName':'rabbitmq-storage-claim'}}},'resources':{'statefulset':{'requests':{'cpu':'150m','memory':'300Mi'},'limits':{'cpu':'300m','memory':'450Mi'},},},}}))rabbit_config.ensure_build_names(rabbit_config.BUILD_ACCESSCONTROL,rabbit_config.BUILD_CONFIG,rabbit_config.BUILD_SERVICE)## OUTPUTFILE: rabbitmq-config.yaml#file=OutputFile_Kubernetes('rabbitmq-config.yaml')out.append(file)file.append(rabbit_config.build(rabbit_config.BUILD_ACCESSCONTROL,rabbit_config.BUILD_CONFIG))shell_script.append(OD_FileTemplate(f'kubectl apply -f ${{FILE_{file.fileid}}}'))## OUTPUTFILE: rabbitmq.yaml#file=OutputFile_Kubernetes('rabbitmq.yaml')out.append(file)file.append(rabbit_config.build(rabbit_config.BUILD_SERVICE))shell_script.append(OD_FileTemplate(f'kubectl apply -f ${{FILE_{file.fileid}}}'))## Write files#out.output(OutputDriver_Print())# out.output(OutputDriver_Directory('/tmp/build-gke'))

输出:

^{pr2}$

学分

基于

rabbitmq/diy-kubernetes-examples

作者

范围实数(rangelreale@gmail.com

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java获取JEditorPane中字符的绝对位置   java Datetime:将时间段拆分为天、小时和分钟   java是使此HashMap更高效的一种方法   java项目reactor:collectList()之后的block()对Flux不起作用。创建()   java在Mac OSX上安装OpenCV   java递归地确定一组数字是否包含两个总和相等的子集   Quad2D曲线上的几何图形Java绘图箭头   java将SSL证书导入Glassfish 4。十、   java Android未找到处理Intent MediaScanner的活动   EclipseJava。安全cert.CertificateParsingException:java。木卫一。IOException:主题密钥,无法创建EC公钥   java我能在O(M log N)时间内完成吗?   java跟踪eclipse中的资源更改也在中。元数据和。项目   java如何完全禁用Android键盘   java返回到上一个活动