source : http://www.opennaru.com/cloud/msa/
마이크로서비스는 애플리케이션 구축을 위한 아키텍처 기반의 접근 방식입니다. 마이크로서비스를 전통적인 모놀리식(monolithic) 접근 방식과 구별 짓는 기준은 애플리케이션을 핵심 기능으로 세분화하는 방식입니다. 각 기능을 서비스라고 부르며, 독립적으로 구축하고 배포할 수 있습니다. 이는 개별 서비스가 다른 서비스에 부정적 영향을 주지 않으면서 작동(또는 장애가 발생)할 수 있음을 의미합니다.
Continuous Deployment Practices, with Production, Test and Development Enviro...Amazon Web Services
With AWS companies now have the ability to develop and run their applications with speed and flexibility like never before. Working with an infrastructure that can be 100% API driven enables businesses to use lean methodologies and realize these benefits. This in turn leads to greater success for those who make use of these practices. In this session we'll talk about some key concepts and design patterns for Continuous Deployment and Continuous Integration, two elements of lean development of applications and infrastructures.
As engineers we spend much of our time getting stuff to production and making sure our infrastructure doesn’t burn down out right. We however spend very little time learning to understand and respond to outages. Does our platform degrade in a graceful way or what does a high cpu load really mean? What can we learn from level 1 outages to be able to run our platforms more reliably.
Plenty of people are jumping on the new hype, Observability, lots of them are replacing their “legacy” monitoring stack. Not all of them achieve the goals they set. But observability is not a tool — it is a property of a system. Moving from many small black boxes to a more holistic view of your system.
In this talk we ll talk about how to prepare teams to tweak their testing and monitoring setup and work instructions to quickly observe, react to and resolve problems. We look at improving your monitoring by adapting your culture and then maybe your tooling. Where we as engineers not only write, maintain and operate our software platforms but actively pursue ways to learn and predict its (non-functional) behavior.
Furthermore we ll discuss the need for and the options of not only monitoring our platforms and it's envitable outages, but also their (potential) length and impact. We ll look at tools like at using Service Level Objects for ways to prepare teams to tweak their testing and monitoring setup and runbooks to quickly observe, react to and resolve problems.
- What are Internal Developer Portal (IDP) and Platform Engineering?
- What is Backstage?
- How Backstage can help dev to build developer portal to make their job easier
Jirayut Nimsaeng
Founder & CEO
Opsta (Thailand) Co., Ltd.
Youtube Record: https://youtu.be/u_nLbgWDwsA?t=850
Dev Mountain Tech Festival @ Chiang Mai
November 12, 2022
Introduction to Jenkins and how to effectively apply Jenkins to your projects.
Jenkins Growth , Companies using Jenkins , Most downloaded and Used Plugins.
source : http://www.opennaru.com/cloud/msa/
마이크로서비스는 애플리케이션 구축을 위한 아키텍처 기반의 접근 방식입니다. 마이크로서비스를 전통적인 모놀리식(monolithic) 접근 방식과 구별 짓는 기준은 애플리케이션을 핵심 기능으로 세분화하는 방식입니다. 각 기능을 서비스라고 부르며, 독립적으로 구축하고 배포할 수 있습니다. 이는 개별 서비스가 다른 서비스에 부정적 영향을 주지 않으면서 작동(또는 장애가 발생)할 수 있음을 의미합니다.
Continuous Deployment Practices, with Production, Test and Development Enviro...Amazon Web Services
With AWS companies now have the ability to develop and run their applications with speed and flexibility like never before. Working with an infrastructure that can be 100% API driven enables businesses to use lean methodologies and realize these benefits. This in turn leads to greater success for those who make use of these practices. In this session we'll talk about some key concepts and design patterns for Continuous Deployment and Continuous Integration, two elements of lean development of applications and infrastructures.
As engineers we spend much of our time getting stuff to production and making sure our infrastructure doesn’t burn down out right. We however spend very little time learning to understand and respond to outages. Does our platform degrade in a graceful way or what does a high cpu load really mean? What can we learn from level 1 outages to be able to run our platforms more reliably.
Plenty of people are jumping on the new hype, Observability, lots of them are replacing their “legacy” monitoring stack. Not all of them achieve the goals they set. But observability is not a tool — it is a property of a system. Moving from many small black boxes to a more holistic view of your system.
In this talk we ll talk about how to prepare teams to tweak their testing and monitoring setup and work instructions to quickly observe, react to and resolve problems. We look at improving your monitoring by adapting your culture and then maybe your tooling. Where we as engineers not only write, maintain and operate our software platforms but actively pursue ways to learn and predict its (non-functional) behavior.
Furthermore we ll discuss the need for and the options of not only monitoring our platforms and it's envitable outages, but also their (potential) length and impact. We ll look at tools like at using Service Level Objects for ways to prepare teams to tweak their testing and monitoring setup and runbooks to quickly observe, react to and resolve problems.
- What are Internal Developer Portal (IDP) and Platform Engineering?
- What is Backstage?
- How Backstage can help dev to build developer portal to make their job easier
Jirayut Nimsaeng
Founder & CEO
Opsta (Thailand) Co., Ltd.
Youtube Record: https://youtu.be/u_nLbgWDwsA?t=850
Dev Mountain Tech Festival @ Chiang Mai
November 12, 2022
Introduction to Jenkins and how to effectively apply Jenkins to your projects.
Jenkins Growth , Companies using Jenkins , Most downloaded and Used Plugins.
Funny stories and anti-patterns from DevOps landscapeMikalai Alimenkou
During last several years DevOps became strong buzzword used almost in every project, team and company. But almost everywhere it is used in very funny and strange context. For example, existing ops guys are renamed to DevOps just to sell them to the client for more money. Or DevOps is used as new job title for some magically powerful person who is able to operate cloud environment and modern infrastructure related tools, leading team of old school ops and participating in management meetings. In this talk I’m going to review all different anti-patterns and bad practices in DevOps landscape using stories from my personal experience as Delivery Manager and independent consultant.
Many teams struggle with the implementation of user story acceptance criteria and having a shared understanding about the expected story outcomes. This often results in missed stakeholder expectations, ad-hoc assumptions made by the team during implementation and conflict between team members and the product owner around testing.
This session shows how specification-by-example and acceptance test driven development will address team conflict, missed stakeholder expectations and overall increasing the level of clarity on the project end-to-end. The presentation will cover the theory behind ATDD and case-studies and practical experience from real projects.
The talk was held at the ALM summit 3 in Redmond, January 2013. Recording of the talk can be found here: http://channel9.msdn.com/Events/ALM-Summit/ALM-Summit-3/Implementing-ATDD-and-Specification-By-Example
Stefan is currently working on a new exciting project, GitOps Toolkit (https://github.com/fluxcd/toolkit), which is an experimental toolkit for assembling CD pipelines the GitOps way
***** DevOps Masters Program : https://www.edureka.co/masters-progra... *****
This tutorial on DevOps testing will help you understand how Continuous Testing takes place in the DevOps lifecycle and which tools are used for the same. The following topics have been covered in this video:
1. What Is Continuous Testing?
2. Various Testing Types
3. Tools Used For Continuous Testing
4. Demo: Maven, Selenium, TestNG & Jenkins Integration
API Management within a Microservice ArchitectureWSO2
This slide deck will discuss API management's role in a microservices ecosystem. It will discuss the purpose of edge gateways and proxies and how that complements a well defined API management layer.
[AWS Dev Day] 앱 현대화 | DevOps 개발자가 되기 위한 쿠버네티스 핵심 활용 예제 알아보기 - 정영준 AWS 솔루션즈 아키...Amazon Web Services Korea
쿠버네티스에 어플리케이션을 손쉽게 배포하는 방법은 무엇일까요? 복잡하게 배포된 어플리케이션의 파드들은 어떻게 디버깅하고 로깅해야 할까요? 또한 요즘 자주 이야기 되는 클라우드 네이티브 아키텍처로 설계된 어플리케이션은 어떻게 만들고 배포해야하는 걸까요?삼성전자 무선사업부에서 삼성헬스를 EKS 에 배포한 사례를 살펴보며, 이러한 문제를 어떻게 해결했는지 알아봅니다. 또한 복잡하게만 느껴졌던 쿠버네티스의 어플리케이션 배포와 클라우드 네이티브 아키텍처의 베스트 프렉티스를 EKS 에 어플리케이션을 배포하고, 관리하는 예제를 통하여 간편하게 이해할 수 있게 도와드립니다.
Unique course notes for the Certified Kubernetes Administrator (CKA) for each section of the exam. Designed to be engaging and used as a reference in the future for kubernetes concepts.
카카오 광고 플랫폼 MSA 적용 사례 및 API Gateway와 인증 구현에 대한 소개if kakao
황민호(robin.hwang) / kakao corp. DSP개발파트
---
최근 Spring Cloud와 Netflix OSS로 MSA를 구성하는 시스템 기반의 서비스들이 많아지는 추세입니다.
카카오에서도 작년에 오픈한 광고 플랫폼 모먼트에 Spring Cloud 기반의 MSA환경을 구성하여, API Gateway도 적용하였는데 1년 반 정도 운영한 경험을 공유할 예정입니다. 더불어 MSA 환경에서는 API Gateway를 통해 인증을 어떻게 처리하는지 알아보고 OAuth2 기반의 JWT Token을 이용한 인증에 대한 이야기도 함께 나눌 예정입니다.
This presentation provides an overview of a Test Automation Framework with BDD and Cucumber. It also includes several open-source initiatives that Rhoynar Software Consulting (www.rhoynar.com) has been working on in the fields of QA Automation and DevOps. Lastly, it also includes links to some of the open-source projects that you can use right now for your work.
- Continuous Integration Infra a la OpenStack - https://github.com/Rhoynar/ci-infra
- An Email Verification Library in Java:
https://github.com/Rhoynar/EmailVerify
- Automatic Test Generation using Selenium WebDriver, Java and TestNG
https://github.com/Rhoynar/AutoTestR
- Barebones BDD and Cucumber Framework integrated with Java Maven and TestNG:
https://github.com/Rhoynar/qa-automation
어떻게 하면 배포 프로세스를 빠르게 개선할 수 있을까요?
git branch를 푸시하고 개별 테스트 서버를 만드려면 어떻게 해야 할까요?
쿠버네티스와 GitOps, Argo CD를 이용한 배포 방법을 소개 합니다.
Open Infrastructure & Cloud Native Days Korea 2019 발표자료
원본 슬라이드 다운로드 - http://bit.ly/subicura-gitops
source : http://www.opennaru.com/open-source/containers-metaphor-for-what-docker-is/
컨테이너가 구축하는 애플리케이션에 대한 표준화된 컨테이너는 화물 운송 분야의 컨테이너는 대한 은유입니다.
컨테이너가 Tantlinger 에 의해 기술적인 표준화가 되기 전부터 오랫동안 구축된 개념입니다. HP, 오라클, IBM 과 같은 대형 벤더들은 수년간 켄테이너 기술을 사용해 왔으며, 특히 구글은 내부 프로젝트에서 매우 유사한 구현 방식을 사용하였습니다.
도커는 오픈소스와 커뮤니티를 중심으로 기술의 표준화와 발전을 이끌고 있습니다.
화물 컨테이너의 내부 화물은 운송에 중요하진 않습니다. 세계의 모든 선박과 트럭 그리고 크레인은 컨테이너 규격에 적합해야 합니다. 마찬가지로 도커 컨테이너도 어떤 애플리케이션( 관련 파일, 프레임워크, 의존성 등)이 내부에 있는지 중요하지 않습니다.
컨테이너는 모든 리눅스 배포판에서 실행되며, AMAZON AWS, Micrsoft Azue, Google Cloud Platform, Rackplace 등 모든 퍼블릭 클라우드 환경에서 운영됩니다.
해외로 이사를 간다고 가정을 하면 사실상 컨테이너에 이사짐을 넣은 후 트럭으로 이동하여, 크레인으로 배에 옮겨져 다른 나라로 운송합니다. 마찬가지로 컨테이너를 이용하면 개발자가 로컬 시스템에서 애플리케이션을 빌드하고 테스트 할 수 있으며
애플리케이션을 서버에 Push할 수 있습니다. 개발자는 컨테이너로 배포하게 되면 개발환경이나 운영환경이나 동일하게 동작할 것이라는 것을 알수 있습니다.
The 2011-2016 SOCCSKSARGEN Regional Development Plan (RDP) serve as the region’s blueprint to achieve its twin goals of inclusive growth and poverty reduction.
The 2016 Regional Development Report (RDR) shows how the region performed during the year. It provides an assessment of the targets in the final year of implementation of the updated Regional Development Plan (RDP), 2013-2016. The assessment highlighted how the economy rebounded in 2016 after the extreme drought that started in 2015. The report also accounted the contributions of the various sectors towards the attainment of inclusive growth and poverty reduction.
Funny stories and anti-patterns from DevOps landscapeMikalai Alimenkou
During last several years DevOps became strong buzzword used almost in every project, team and company. But almost everywhere it is used in very funny and strange context. For example, existing ops guys are renamed to DevOps just to sell them to the client for more money. Or DevOps is used as new job title for some magically powerful person who is able to operate cloud environment and modern infrastructure related tools, leading team of old school ops and participating in management meetings. In this talk I’m going to review all different anti-patterns and bad practices in DevOps landscape using stories from my personal experience as Delivery Manager and independent consultant.
Many teams struggle with the implementation of user story acceptance criteria and having a shared understanding about the expected story outcomes. This often results in missed stakeholder expectations, ad-hoc assumptions made by the team during implementation and conflict between team members and the product owner around testing.
This session shows how specification-by-example and acceptance test driven development will address team conflict, missed stakeholder expectations and overall increasing the level of clarity on the project end-to-end. The presentation will cover the theory behind ATDD and case-studies and practical experience from real projects.
The talk was held at the ALM summit 3 in Redmond, January 2013. Recording of the talk can be found here: http://channel9.msdn.com/Events/ALM-Summit/ALM-Summit-3/Implementing-ATDD-and-Specification-By-Example
Stefan is currently working on a new exciting project, GitOps Toolkit (https://github.com/fluxcd/toolkit), which is an experimental toolkit for assembling CD pipelines the GitOps way
***** DevOps Masters Program : https://www.edureka.co/masters-progra... *****
This tutorial on DevOps testing will help you understand how Continuous Testing takes place in the DevOps lifecycle and which tools are used for the same. The following topics have been covered in this video:
1. What Is Continuous Testing?
2. Various Testing Types
3. Tools Used For Continuous Testing
4. Demo: Maven, Selenium, TestNG & Jenkins Integration
API Management within a Microservice ArchitectureWSO2
This slide deck will discuss API management's role in a microservices ecosystem. It will discuss the purpose of edge gateways and proxies and how that complements a well defined API management layer.
[AWS Dev Day] 앱 현대화 | DevOps 개발자가 되기 위한 쿠버네티스 핵심 활용 예제 알아보기 - 정영준 AWS 솔루션즈 아키...Amazon Web Services Korea
쿠버네티스에 어플리케이션을 손쉽게 배포하는 방법은 무엇일까요? 복잡하게 배포된 어플리케이션의 파드들은 어떻게 디버깅하고 로깅해야 할까요? 또한 요즘 자주 이야기 되는 클라우드 네이티브 아키텍처로 설계된 어플리케이션은 어떻게 만들고 배포해야하는 걸까요?삼성전자 무선사업부에서 삼성헬스를 EKS 에 배포한 사례를 살펴보며, 이러한 문제를 어떻게 해결했는지 알아봅니다. 또한 복잡하게만 느껴졌던 쿠버네티스의 어플리케이션 배포와 클라우드 네이티브 아키텍처의 베스트 프렉티스를 EKS 에 어플리케이션을 배포하고, 관리하는 예제를 통하여 간편하게 이해할 수 있게 도와드립니다.
Unique course notes for the Certified Kubernetes Administrator (CKA) for each section of the exam. Designed to be engaging and used as a reference in the future for kubernetes concepts.
카카오 광고 플랫폼 MSA 적용 사례 및 API Gateway와 인증 구현에 대한 소개if kakao
황민호(robin.hwang) / kakao corp. DSP개발파트
---
최근 Spring Cloud와 Netflix OSS로 MSA를 구성하는 시스템 기반의 서비스들이 많아지는 추세입니다.
카카오에서도 작년에 오픈한 광고 플랫폼 모먼트에 Spring Cloud 기반의 MSA환경을 구성하여, API Gateway도 적용하였는데 1년 반 정도 운영한 경험을 공유할 예정입니다. 더불어 MSA 환경에서는 API Gateway를 통해 인증을 어떻게 처리하는지 알아보고 OAuth2 기반의 JWT Token을 이용한 인증에 대한 이야기도 함께 나눌 예정입니다.
This presentation provides an overview of a Test Automation Framework with BDD and Cucumber. It also includes several open-source initiatives that Rhoynar Software Consulting (www.rhoynar.com) has been working on in the fields of QA Automation and DevOps. Lastly, it also includes links to some of the open-source projects that you can use right now for your work.
- Continuous Integration Infra a la OpenStack - https://github.com/Rhoynar/ci-infra
- An Email Verification Library in Java:
https://github.com/Rhoynar/EmailVerify
- Automatic Test Generation using Selenium WebDriver, Java and TestNG
https://github.com/Rhoynar/AutoTestR
- Barebones BDD and Cucumber Framework integrated with Java Maven and TestNG:
https://github.com/Rhoynar/qa-automation
어떻게 하면 배포 프로세스를 빠르게 개선할 수 있을까요?
git branch를 푸시하고 개별 테스트 서버를 만드려면 어떻게 해야 할까요?
쿠버네티스와 GitOps, Argo CD를 이용한 배포 방법을 소개 합니다.
Open Infrastructure & Cloud Native Days Korea 2019 발표자료
원본 슬라이드 다운로드 - http://bit.ly/subicura-gitops
source : http://www.opennaru.com/open-source/containers-metaphor-for-what-docker-is/
컨테이너가 구축하는 애플리케이션에 대한 표준화된 컨테이너는 화물 운송 분야의 컨테이너는 대한 은유입니다.
컨테이너가 Tantlinger 에 의해 기술적인 표준화가 되기 전부터 오랫동안 구축된 개념입니다. HP, 오라클, IBM 과 같은 대형 벤더들은 수년간 켄테이너 기술을 사용해 왔으며, 특히 구글은 내부 프로젝트에서 매우 유사한 구현 방식을 사용하였습니다.
도커는 오픈소스와 커뮤니티를 중심으로 기술의 표준화와 발전을 이끌고 있습니다.
화물 컨테이너의 내부 화물은 운송에 중요하진 않습니다. 세계의 모든 선박과 트럭 그리고 크레인은 컨테이너 규격에 적합해야 합니다. 마찬가지로 도커 컨테이너도 어떤 애플리케이션( 관련 파일, 프레임워크, 의존성 등)이 내부에 있는지 중요하지 않습니다.
컨테이너는 모든 리눅스 배포판에서 실행되며, AMAZON AWS, Micrsoft Azue, Google Cloud Platform, Rackplace 등 모든 퍼블릭 클라우드 환경에서 운영됩니다.
해외로 이사를 간다고 가정을 하면 사실상 컨테이너에 이사짐을 넣은 후 트럭으로 이동하여, 크레인으로 배에 옮겨져 다른 나라로 운송합니다. 마찬가지로 컨테이너를 이용하면 개발자가 로컬 시스템에서 애플리케이션을 빌드하고 테스트 할 수 있으며
애플리케이션을 서버에 Push할 수 있습니다. 개발자는 컨테이너로 배포하게 되면 개발환경이나 운영환경이나 동일하게 동작할 것이라는 것을 알수 있습니다.
The 2011-2016 SOCCSKSARGEN Regional Development Plan (RDP) serve as the region’s blueprint to achieve its twin goals of inclusive growth and poverty reduction.
The 2016 Regional Development Report (RDR) shows how the region performed during the year. It provides an assessment of the targets in the final year of implementation of the updated Regional Development Plan (RDP), 2013-2016. The assessment highlighted how the economy rebounded in 2016 after the extreme drought that started in 2015. The report also accounted the contributions of the various sectors towards the attainment of inclusive growth and poverty reduction.
The RPFP presents the vision for the physical and socio-economic development of the region for the next twenty-six (26) years, as well as, the policy guidelines and directions
for the major components of the plan, namely, Protection Land Use, Production Land Use, Settlements, and Infrastructure Support.
Introducing the Cloud4all/GPII Architecture presentation by Antranig Basman & Colin Clark at ICCHP - International Conference on Computers Helping People with Special Needs in Linz, Austria.
Which Frameworks/Tools can actually help you in Agile Development? The talk is about what problems you have to face during Agile Development and how software can help you or be a mischief.
Automating it management with Puppet + ServiceNowPuppet
As the leading IT Service Management and IT Operations Management platform in the marketplace, ServiceNow is used by many organizations to address everything from self service IT requests to Change, Incident and Problem Management. The strength of the platform is in the workflows and processes that are built around the shared data model, represented in the CMDB. This provides the ‘single source of truth’ for the organization.
Puppet Enterprise is a leading automation platform focused on the IT Configuration Management and Compliance space. Puppet Enterprise has a unique perspective on the state of systems being managed, constantly being updated and kept accurate as part of the regular Puppet operation. Puppet Enterprise is the automation engine ensuring that the environment stays consistent and in compliance.
In this webinar, we will explore how to maximize the value of both solutions, with Puppet Enterprise automating the actions required to drive a change, and ServiceNow governing the process around that change, from definition to approval. We will introduce and demonstrate several published integration points between the two solutions, in the areas of Self-Service Infrastructure, Enriched Change Management and Automated Incident Registration.
Simplified Patch Management with Puppet - Oct. 2020Puppet
Does your company struggle with patching systems? If so, you’re not alone — most organizations have attempted to solve this issue by cobbling together multiple tools, processes, and different teams, which can make an already complicated issue worse.
Puppet helps keep hosts healthy, secure and compliant by replacing time-consuming and error prone patching processes with Puppet’s automated patching solution.
Join this webinar to learn how to do the following with Puppet:
Eliminate manual patching processes with pre-built patching automation for Windows and Linux systems.
Gain visibility into patching status across your estate regardless of OS with new patching solution from the PE console.
Ensure your systems are compliant and patched in a healthy state
How Puppet Enterprise makes patch management easy across your Windows and Linux operating systems.
Presented by: Margaret Lee, Product Manager, Puppet, and Ajay Sridhar, Sr. Sales Engineer, Puppet.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Designing Puppet: Roles/Profiles Pattern
1. Designing Puppet:
Roles / Profiles Design Pattern
Puppet Camp Stockholm, Feb 2013
Thursday, 7 February 13
2. Hello
• Craig Dunn
• Puppet user since 2008 as an IT contractor
• Started with 0.24
• Joined Puppet Labs in June 2012
• @crayfishX
• Freenode IRC: crayfishx
Thursday, 7 February 13
3. Agenda
• How people typically design Puppet
• Real-world case study
• Thinking about components
• Designing Puppet for your users
• Node classification
• Data separation
Thursday, 7 February 13
4. Background
• Originally a blog post written in May 2012
• Advocated by many Puppet Labs Engineers
• Based on a real world solution
• Several community members have adopted
with success
Thursday, 7 February 13
5. Designing Puppet
• You write awesome modules
• You classify them to your node
Thursday, 7 February 13
6. Designing Puppet
Node Classification
Modules
Thursday, 7 February 13
7. Down the road...
• Your infrastructure grows
• Business requirements will change
• Your Puppet code feels bulky and high
maintenence
• There will always be edge cases eventually
• You decide it needs refactoring
Thursday, 7 February 13
8. Danger Signs
• Resources being declared in two modules
• You don’t know where your
implementation “fits”
• Lot’s of logic at a node level
• Repetition and duplication
• The if statement is your go-to-guy
Thursday, 7 February 13
9. Write good modules
• Should manage only it’s own resources
• Should be granular
• Should be portable
Thursday, 7 February 13
10. Thinking beyond the
module....
• Puppet is a code base
• How do I design an effective framework
• Gluing everything together
Thursday, 7 February 13
11. Node-level logic
• Risks duplication and repetition
• No guarantee of consistency
• TMI!
Thursday, 7 February 13
12. Node-level logic
node basil {
class { ‘apache’:
version => ‘latest’,
}
class { ‘motd’: }
class { ‘ssh’: }
class { ‘users’:
default_shell => ‘/bin/false’,
}
Class[‘ssh’] -> Class[‘users’]
}
Thursday, 7 February 13
13. Node-level logic
• What happens when I have 1000 nodes
• Or 10,000 nodes!!
• That’s a lot of code!
• So where should implement this?
Thursday, 7 February 13
14. Designing Puppet
• Provide business logic to classification
• Provide an abstraction layer for
implementation of components
• Make code adaptable to complex
requirements
• Reduce node-level logic
• Reduce functionality overlap
Thursday, 7 February 13
15. What is the worse
thing that is
going to happen to
your Puppet code?
Thursday, 7 February 13
24. Problems
• These applications aren’t that different
• They seem to share a whole bunch of
similarities
• Implementation differed on different
environments and locations
• Writing 3 separate modules creates
conflicts and duplication
Thursday, 7 February 13
26. We are trying to code
business logic.
Thursday, 7 February 13
27. Stop thinking about
what it looks like
• Break everything down into components
• Granularity is the key
• Think about what it actually is
Thursday, 7 February 13
28. What we realised
• Each application stack is a collection of a
subset of the same Java apps implemented
in different ways
Thursday, 7 February 13
29. The business view
Application X
Application Y Application Z
Thursday, 7 February 13
30. The technical reality
Application X
ApplicationApplication Z
Y
Thursday, 7 February 13
31. We only have one
application
Implemented many
different ways
Thursday, 7 February 13
32. So we had an idea!
• Reduce each Java sub application into
granular Puppet modules
• Create a code layer responsible for
implementation
• Let’s call them profiles
Thursday, 7 February 13
33. class profiles::x {
include tomcat
include mysql
include componenta
include componentb
componentb::resource { ‘name’:
ensure => present,
}
}
class profiles::y {
include tomcat
include mysql
include componenta
include componentc
include componentd
}
class profiles::z {
include tomcat
include mysql
include componenta
include componentb
include componentd
include dependancy
Class[‘dependancy’] -> Class[‘componentd’]
}
Thursday, 7 February 13
34. Use inheritance for abstraction within profiles
class profiles::application {
include tomcat
include mysql
include componenta
}
class profiles::application::x inherits profiles::application {
include componentb
componentb::resource { ‘name’:
ensure => present,
}
}
class profiles::application::y inherits profiles::application {
include componentc
include componentd
}
class profiles::application::z inherits profiles::application {
include componentb
include componentd
include dependancy
Class[‘dependancy’] -> Class[‘componentd’]
}
Thursday, 7 February 13
35. Profiles and
Components
Resources
Thursday, 7 February 13
36. Profiles and
Components
Components: Resource modelling
Resources
Thursday, 7 February 13
37. Profiles and
Components
Profiles : Implementation
Components: Resource modelling
Resources
Thursday, 7 February 13
39. In reality it was worse
• 2 different deployment types made up of
over 15 server types each
Thursday, 7 February 13
40. In reality it was worse
• 2 different deployment types made up of
over 15 server types each
• 10+ locations
Thursday, 7 February 13
41. In reality it was worse
• 2 different deployment types made up of
over 15 server types each
• 10+ locations
• 4 environment types
Thursday, 7 February 13
42. In reality it was worse
• 2 different deployment types made up of
over 15 server types each
• 10+ locations
• 4 environment types
• Every installation was an edge case!
Thursday, 7 February 13
43. In reality it was worse
• 2 different deployment types made up of
over 15 server types each
• 10+ locations
• 4 environment types
• Every installation was an edge case!
• My slides weren’t big enough.
Thursday, 7 February 13
44. Lessons learned
• Granularity is good
• Don’t assume business logic will directly
translate to technology
• Abstraction is awesome.... but that’s
nothing new....
Thursday, 7 February 13
45. Abstraction is a core
principle of coding
• Functions are abstracted by methods
• Methods abstracted by classes and modules
• They are abstracted with libraries
• Puppet is code!
Thursday, 7 February 13
46. Puppet is all about
abstraction
• Data is abstracted by Hiera
• Providers are abstracted by types
• Resources are abstracted by classes
• Classes are abstracted by modules
Thursday, 7 February 13
47. Puppet is all about
abstraction
• Data is abstracted by Hiera
• Providers are abstracted by types
• Resources are abstracted by classes
• Classes are abstracted by modules
• Modules are abstracted by profiles
Thursday, 7 February 13
48. Focussing on
Abstraction
• We’ve turned business logic into a
technology stack
• Can we translate that back into business
logic?
• Why would we even want to do that?
Thursday, 7 February 13
49. UAT Cluster node
Our example configuration model:
include security
include users
include ntp
include ssh::server
include customapp
include tomcat::server
class { ‘jenkins’:
require => Class[‘tomcat::server’],
}
include mysql
database { ‘apptest’:
ensure => present,
}
Thursday, 7 February 13
50. Think about the users
Meet John, Susan and Bill.
Thursday, 7 February 13
51. John is a Sysadmin
• Wants to ensure all servers have kernel
hardening, NTP and SSH Server installed
• Wants to manage what packages, services,
files and other resources
• Is responsible for maintaining all the
components of a UAT cluster server
Thursday, 7 February 13
52. Susan is an application
specialist
• Cares that a UAT Cluster node requires
MySQL Server, Tomcat Server and Jenkins
server installed.
Thursday, 7 February 13
53. Bill is an IT manager
• Bill cares that the server is a UAT Cluster
node
Thursday, 7 February 13
54. What do they care
about?
• John cares about modelling all resources
• Susan cares about the technology stack
• Bill cares about the business logic
Thursday, 7 February 13
55. In Puppet
• Resource modelling is done in component
modules
• The technology stack is defined in profiles
• Where do we represent the business logic
for Bill?
Thursday, 7 February 13
56. Introducing Roles
• Represent business logic, not technology
• Define a set of technology stacks (profiles)
that make up the logical role
• Allow the business to manage how the
infrastructure looks without defining what it
is
Thursday, 7 February 13
57. A node can only have
one role
• A role can include as many profiles as
required to define itself
• If a node requires two roles, it has by
definition become a new role
Thursday, 7 February 13
58. A node can only have
one role
• A role can include as many profiles as
required to define itself
• If a node requires two roles, it has by
definition become a new role
• Something couldn’t be a lion and a
kangaroo at the same time!
Thursday, 7 February 13
59. It would be a Lingaroo
Thursday, 7 February 13
60. Roles
• One-to-one to nodes
• One-to-many to profiles
• Only implement profiles
Thursday, 7 February 13
61. Example role
class role::uat_server {
include profiles::base
include profiles::customapp
include profiles::test_tools
}
Thursday, 7 February 13
62. Classification
• Node classification simply assigns roles to
nodes
• Roles expose profiles
Thursday, 7 February 13
63. Classification
node ‘craig.puppetlabs.vm’ {
include roles::uat_server
}
Thursday, 7 February 13
66. The Stack
Components: Resource modelling
Resources
Thursday, 7 February 13
67. The Stack
Profiles : Implementation
Components: Resource modelling
Resources
Thursday, 7 February 13
68. The Stack
Roles : Business Logic
Profiles : Implementation
Components: Resource modelling
Resources
Thursday, 7 February 13
69. Terminology
• Profiles and Roles are Puppet modules
• Components are Puppet modules
responsible for modelling resources
• Everything is a module
Thursday, 7 February 13
70. Naming conventions
• Components should be named after what
they manage (apache, ssh, mysql)
• Profiles should be named after the logical
stack they implement (database, bastion,
email)
• Roles should be named in business logic
convention (uat_server, web_cluster,
application, archive)
Thursday, 7 February 13
71. Hiera Overview
Let’s talk about data!
Thursday, 7 February 13
78. Without Hiera?
if ( $::environment == ‘dev’ ) {
$ntpserver = ‘192.168.2.1’
} else {
if ( $::fqdn == ‘host4.mycorp.com’) {
$ntpserver = ‘127.0.0.1’
} else {
$ntpserver = ‘213.21.6.4’
}
}
Thursday, 7 February 13
79. With Hiera?
$ntpserver = hiera(‘ntpserver’)
Thursday, 7 February 13
80. Hierarchical lookups
• Hiera uses facter facts to determine a
hierarchy
• Top down hierarchy for overriding
configuration values based on roles,
environments, locations.... or anything else
• And do this without any coding!
Thursday, 7 February 13
81. Separation of data from code
• Puppet modules without hard-coded data
are easily shared and more re-usable
• Infrastructure configuration can be
managed without needing to edit Puppet
code
Thursday, 7 February 13
82. Pluggable Backends
• Source data from multiple locations
• Data source is abstracted from code
Thursday, 7 February 13
83. Pluggable Backends
• Source data from multiple locations
• Data source is abstracted from code
• hiera-gpg • hiera-redis
• hiera-http • hiera-json
• hiera-mysql • hiera-zookeeper
Thursday, 7 February 13
84. Data Separation
• Use Hiera to abstract your data from your
code
• Components and profiles can source data
from Hiera
Thursday, 7 February 13
85. Profiles and Hiera
• Use Hiera to model your data
• Use profiles to model your implementation
Thursday, 7 February 13
86. The Stack
Roles : Business Logic
Profiles : Implementation
Components: Resource modelling
Resources
Thursday, 7 February 13
87. The Stack
Roles : Business Logic
Profiles : Implementation
Hiera:
Data
Components: Resource modelling
Resources
Thursday, 7 February 13
88. Classification
• Assigning classes to a node
• You can classify within Puppet code
(site.pp)
• You can use an External Node Classifier
(ENC)
Thursday, 7 February 13
89. Leveraging an ENC
• You can classify your nodes however you
want
• Puppet Dashboard
• Enterprise Console
• Foreman
• Site.pp
• Custom script
Thursday, 7 February 13
90. Leveraging an ENC
• An ENC should classify a node to it’s role
• Nothing else
Thursday, 7 February 13
91. The Stack
Roles : Business Logic
Profiles : Implementation
Hiera:
Data
Components: Resource modelling
Resources
Thursday, 7 February 13
92. The Stack
Roles : Business Logic Classifier
Profiles : Implementation
Hiera:
Data
Components: Resource modelling
Resources
Thursday, 7 February 13
93. Key benefits
• Reduced node-level logic to a role.
• Gain the ability to be flexible with
implementation
• Business logic improves managability by
non-Puppet users
• Edge cases are now easy to solve
Thursday, 7 February 13
95. This is not the way to
design Puppet... It’s a
way.
Thursday, 7 February 13
96. Can I implement this
design without roles?
Thursday, 7 February 13
97. Can I implement this
design without roles?
• Yes.
• You lose the layer of abstraction that
exposes business logic
Thursday, 7 February 13
98. Can my roles be
defined in my ENC?
Thursday, 7 February 13
99. Can my roles be
defined in my ENC?
• Yes.
• Keeping it in code makes it versionable
Thursday, 7 February 13
100. Can’t I just use Hiera
to define profiles?
Thursday, 7 February 13
101. Can’t I just use Hiera
to define profiles?
• Technically yes.
• You lose the flexibility to implement code
logic in profiles and it may become
restrictive
• You could possibly use: https://github.com/
ripienaar/hiera-puppet-nodes
Thursday, 7 February 13
103. The fundamental
concepts....
• Abstraction, abstraction, abstraction
Thursday, 7 February 13
104. The fundamental
concepts....
• Abstraction, abstraction, abstraction
• Decoupling business logic, implementation
and resource modelling.
Thursday, 7 February 13
105. The fundamental
concepts....
• Abstraction, abstraction, abstraction
• Decoupling business logic, implementation
and resource modelling.
• Separating data and code
Thursday, 7 February 13
106. The fundamental
concepts....
• Abstraction, abstraction, abstraction
• Decoupling business logic, implementation
and resource modelling.
• Separating data and code
• Reducing node-level complexity
Thursday, 7 February 13
107. Other Resources
• Adrien Thebos’ excellent blog post http://
sysadvent.blogspot.co.uk/2012/12/day-13-configuration-management-as-
legos.html
• My original blog post
2012/05/239/
http://www.craigdunn.org/
• Module Structure Redux by R.I.Pienaar http://
www.devco.net/archives/2012/12/13/simple-puppet-module-structure-
redux.php
Thursday, 7 February 13
108. Thank you. Questions?
• Follow me at @crayfishX
• Bug me on Freenode: crayfishx
Enjoy the rest of Puppet Camp!
In memory of Giles Constant, who spent many nights debating Puppet design patterns with me over copious amounts of beer
and helped me on my journey of discovery learning how to implement Puppet properly. R.I.P
Thursday, 7 February 13