diff --git a/docs/api.md b/docs/api.md index 76b3fd5a..88dc2e4f 100644 --- a/docs/api.md +++ b/docs/api.md @@ -79,6 +79,11 @@ ### API Testing * [softwaretestingportal.com: API Testing, Key Terminologies and more...](http://www.softwaretestingportal.com/2020/03/31/api-testing/) * [dzone.com: 10 API Testing Tips for Beginners (SOAP and REST)](https://dzone.com/articles/10-api-testing-tips-for-beginners-soap-amp-rest) Let's take a look at ten API testing tips for beginners with a focus on REST APIs and SOAP APIs. +* [blog.testproject.io: Top 10 API Testing Tools to Watch in 2020 🌟](https://blog.testproject.io/2020/06/25/top-10-api-testing-tools-to-watch-in-2020/) + +
+[![top 10 api testing tools](images/summarising_top_10_api_testing_tools.png){: style="width:50%"}](https://blog.testproject.io/2020/06/25/top-10-api-testing-tools-to-watch-in-2020/) +
### GraphQL - [GraphQL](https://graphql.org/) A query language for your API diff --git a/docs/aws.md b/docs/aws.md index 3acde0f5..1b93da76 100644 --- a/docs/aws.md +++ b/docs/aws.md @@ -530,7 +530,8 @@ aws ec2 describe-instances --query 'Reservations[].Instances[].[Placement.Availa ## EKS - [Amazon EKS Price Reduction](https://aws.amazon.com/blogs/aws/eks-price-reduction/) -* [cloudonaut.io: Scaling Container Clusters on AWS: ECS and EKS 🌟](https://cloudonaut.io/scaling-container-clusters-on-aws-ecs-eks/) +- [cloudonaut.io: Scaling Container Clusters on AWS: ECS and EKS 🌟](https://cloudonaut.io/scaling-container-clusters-on-aws-ecs-eks/) +- [Amazon EKS Best Practices Guide for Security 🌟](https://aws.github.io/aws-eks-best-practices/) ## Interview Questions - [intellipaat.com: Top Amazon AWS Interview Questions – Most Asked](https://intellipaat.com/blog/interview-question/amazon-aws-interview-questions/) diff --git a/docs/databases.md b/docs/databases.md index 473729b1..06a6582a 100644 --- a/docs/databases.md +++ b/docs/databases.md @@ -30,6 +30,7 @@ - [Debugging Crunchydata Postgres Operator 4.0.1 Community Edition](#debugging-crunchydata-postgres-operator-401-community-edition) - [Certified Crunchydata Postgres Operator (OLM/OperatorHub). Manual Setup](#certified-crunchydata-postgres-operator-olmoperatorhub-manual-setup) - [Oracle 12c on OpenShift Container Platform](#oracle-12c-on-openshift-container-platform) +- [SQL Server](#sql-server) ## Stateful and Stateless Applications * [xenonstack.com: Stateful and Stateless Applications Best Practices and Advantages](https://www.xenonstack.com/insights/stateful-and-stateless-applications/) @@ -41,7 +42,7 @@ * [reddit.com: What's the best, proper way of running a database cluster on top of Kubernetes?](https://www.reddit.com/r/kubernetes/comments/9d8on5/whats_the_best_proper_way_of_running_a_database/) * [caylent.com: The Pros and Cons of Running Production Databases as Containers](https://caylent.com/the-pros-and-cons-of-running-production-databases-as-containers) * [learnk8s.io: Provisioning cloud resources (AWS, GCP, Azure) in Kubernetes](https://learnk8s.io/cloud-resources-kubernetes) - + ## Database DevOps - [informationweek.com: Can Enterprises Benefit From Adopting Database DevOps?](https://www.informationweek.com/devops/can-enterprises-benefit-from-adopting-database-devops/a/d-id/1337238) @@ -87,6 +88,7 @@ * [info.crunchydata.com: Multi-Kubernetes Cluster PostgreSQL Deployments](https://info.crunchydata.com/blog/multi-kubernetes-cluster-postgresql-deployments) * [info.crunchydata.com: Quickly Document Your Postgres Database Using psql Meta-Commands](https://info.crunchydata.com/blog/d-meta) * [info.crunchydata.com: Fast CSV and JSON Ingestion in PostgreSQL with COPY](https://info.crunchydata.com/blog/fast-csv-and-json-ingestion-in-postgresql-with-copy) +* [info.crunchydata.com: Composite Primary Keys, PostgreSQL and Django](https://info.crunchydata.com/blog/composite-primary-keys-postgresql-and-django) ### Crunchy Data Developer Portal - [Announcing the Crunchy Data Developer Portal](https://info.crunchydata.com/blog/announcing-the-crunchy-data-developer-portal) @@ -716,4 +718,7 @@ oc adm policy add-scc-to-user anyuid system:serviceaccount:pgophub:default ## Oracle 12c on OpenShift Container Platform - [medium: Running Oracle 12c on OpenShift Container Platform](https://medium.com/@pittar/running-oracle-12c-on-openshift-container-platform-ca471a9f7057) Oracle is now offering an Oracle 12c image on Docker Hub for dev/test purposes (license still required for Prod). -- [dockerhub: Oracle Database 12c Enterprise Edition](https://hub.docker.com/_/oracle-database-enterprise-edition) \ No newline at end of file +- [dockerhub: Oracle Database 12c Enterprise Edition](https://hub.docker.com/_/oracle-database-enterprise-edition) + +## SQL Server +- [Expanding SQL Server Big Data Clusters capabilities, now on Red Hat OpenShift](https://cloudblogs.microsoft.com/sqlserver/2020/06/23/expanding-sql-server-big-data-clusters-capabilities-now-on-red-hat-openshift/) \ No newline at end of file diff --git a/docs/demos.md b/docs/demos.md index 970c2490..881c2c9f 100644 --- a/docs/demos.md +++ b/docs/demos.md @@ -1,8 +1,9 @@ -# DevOps Demos & Screencasts +# DevOps Demos, Tutorials & Screencasts - [DevOps Screencasts](#devops-screencasts) - [DevOps Blogs](#devops-blogs) - [DevOps Demos](#devops-demos) - [Ansible and Ansible Tower](#ansible-and-ansible-tower) + - [GitOps](#gitops) - [Kubernetes Demos](#kubernetes-demos) - [CI/CD with SpringBoot for Kubernetes](#cicd-with-springboot-for-kubernetes) - [Kubernetes CKAD Example Exam Questions Practical Challenge Series](#kubernetes-ckad-example-exam-questions-practical-challenge-series) @@ -15,6 +16,8 @@ - [IBM Cloud Pak Playbooks](#ibm-cloud-pak-playbooks) - [Knative](#knative) - [OpenShift Pipelines Workshop (Tekton)](#openshift-pipelines-workshop-tekton) + - [Monitoring Services with OpenShift ServiceMesh](#monitoring-services-with-openshift-servicemesh) + - [Red Hat Migration Toolkit for Applications](#red-hat-migration-toolkit-for-applications) - [Jenkins Demos](#jenkins-demos) - [Jenkins Declarative Pipelines with OpenShift](#jenkins-declarative-pipelines-with-openshift) - [OpenShift Pipelines with S2i and Jenkins Blue Ocean](#openshift-pipelines-with-s2i-and-jenkins-blue-ocean) @@ -31,6 +34,10 @@ - [AWS Demos](#aws-demos) - [Azure DevOps Demos](#azure-devops-demos) - [Google DevOps Demos](#google-devops-demos) + - [GitOps with Anthos Config Management](#gitops-with-anthos-config-management) +- [Quarkus Demos](#quarkus-demos) +- [Kafka](#kafka) +- [Codeless](#codeless) ## DevOps Screencasts - [SysAdmin Casts 🌟](https://sysadmincasts.com/) @@ -53,6 +60,9 @@ * [ansible.github.io/workshops/demos : Red Hat Ansible Automation Platform Workshops](https://ansible.github.io/workshops/demos/) * [Red Hat Ansible Tower - Workshop and Demo](https://github.com/network-automation/tower_workshop) +### GitOps +- [thenewstack.io: GitOps in Multicluster Environments with Anthos Config Management](https://thenewstack.io/tutorial-gitops-in-multicluster-environments-with-anthos-config-management/) + ## Kubernetes Demos * [kubernetesbyexample.com 🌟](http://kubernetesbyexample.com/) * [github.com/eon01/kubernetes-workshop](https://github.com/eon01/kubernetes-workshop) @@ -123,11 +133,17 @@ * [knative-tutorial](https://github.com/redhat-developer-demos/knative-tutorial) A pratical guide to get started with knative. Knative concepts are explained simple and easy way with lots of demos and exercises. ### OpenShift Pipelines Workshop (Tekton) -- [openshift-pipelines-workshop](https://redhat-developer-demos.github.io/openshift-pipelines-workshop/) Workshop to demonstrate OpenShift Pipelines (featuring Tekton) - [Build a Go application using OpenShift Pipelines](https://developers.redhat.com/blog/2020/05/26/build-a-go-application-using-openshift-pipelines/) + - [openshift-pipelines-workshop](https://redhat-developer-demos.github.io/openshift-pipelines-workshop/) Workshop to demonstrate OpenShift Pipelines (featuring Tekton) - [OpenShift Pipelines Catalog](https://github.com/openshift/pipelines-catalog) - [systemcraftsman/lab-tekton-pipelines: OpenShift Pipelines workshop](https://github.com/systemcraftsman/lab-tekton-pipelines) +### Monitoring Services with OpenShift ServiceMesh +- [Monitoring Services like an SRE in OpenShift ServiceMesh](https://www.openshift.com/blog/monitoring-services-like-an-sre-in-openshift-servicemesh) + +### Red Hat Migration Toolkit for Applications +- [Migration Toolkit for Applications Demo - June 2020](https://youtu.be/mRCz6Jl0Ds8) Migraiton Toolkit from Applications by Red Hat can help you migrate and/or modernize your applications by analyzing them and finding isses such as use of proprietary classes or behaviousr that are not conformant with 12factor app, in order to help you modernize your app portfolio and make it more cloud & container friendly. + ## Jenkins Demos * [kublr.com: cicd pipeline with jenkins nexus kubernetes](https://kublr.com/blog/cicd-pipeline-with-jenkins-nexus-kubernetes/) * [bitbucket.org: setting up a cicd pipeline with spring mvc and kubernetes on aws](https://bitbucket.org/blog/setting-up-a-ci-cd-pipeline-with-spring-mvc-jenkins-and-kubernetes-on-aws ) @@ -277,3 +293,19 @@ Grab them from here: [awesome-kubernetes/scripts](https://github.com/redhatspain ## Google DevOps Demos - [Terraform Automation Demo using Google Cloud Provider](https://github.com/TerraHubCorp/terraform-google-automation-demo) +### GitOps with Anthos Config Management +- [Tutorial: Connect Amazon EKS and Azure AKS Clusters with Google Anthos](https://thenewstack.io/tutorial-connect-amazon-eks-and-azure-aks-clusters-with-google-anthos/) +- [Tutorial: GitOps in Multicluster Environments with Anthos Config Management](https://thenewstack.io/tutorial-gitops-in-multicluster-environments-with-anthos-config-management/) +- [Tutorial: Deploy Anthos Apps from GCP Marketplace into Amazon EKS Cluster](https://thenewstack.io/tutorial-deploy-anthos-apps-from-gcp-marketplace-into-amazon-eks-cluster/) + +## Quarkus Demos +- [Develop and test a Quarkus client on Red Hat CodeReady Containers with Red Hat Data Grid 8.0](https://developers.redhat.com/blog/2020/06/19/develop-and-test-a-quarkus-client-on-red-hat-codeready-containers-with-red-hat-data-grid-8-0/) + +## Kafka +- [medium: Setting up KafkaSource to send data and displayed with Knative event-display](https://medium.com/@jweng1/setting-up-kafkasource-to-send-data-and-displayed-with-knative-event-display-33891b253442) + +## Codeless +- [github.com/kelseyhightower/nocode](https://github.com/kelseyhightower/nocode) + + + diff --git a/docs/devops.md b/docs/devops.md index 2a160a33..c90e345f 100644 --- a/docs/devops.md +++ b/docs/devops.md @@ -6,6 +6,7 @@ - [Blogs](#blogs) - [Xebia Labs and DevOps](#xebia-labs-and-devops) - [DevOps Tools](#devops-tools) + - [Relay](#relay) - [Netflix and DevOps](#netflix-and-devops) - [Public Cloud DevOps](#public-cloud-devops) - [AWS DevOps](#aws-devops) @@ -42,6 +43,7 @@ * [DevOps for beginners: Where to start learning and focusing](https://enterprisersproject.com/article/2020/6/devops-beginners-where-start) Where to start with DevOps? Let's explore how to get going with this cross-functional way of working that breaks down walls, improves speed of delivery, and increases experimentation. * [contino.io: How to Make Enterprise Container Strategies That Last (Part One) 🌟](https://www.contino.io/insights/how-to-make-enterprise-container-strategies-that-last-part-one) * [scaledagileframework.com: DevOps 🌟🌟](https://www.scaledagileframework.com/devops/) +* [dzone: Why Now Is the Time for the Spring Boot of Infrastructure Automation 🌟](https://dzone.com/articles/why-now-is-the-time-for-the-spring-boot-of-infrast) Application teams move fast using frameworks built to boost developer productivity. Learn how a productivity framework can help your DevOps initiative succeed.
[![OCP 4 Pland and Deploy](images/openshift_day2.png)](https://www.openshift.com/blog/openshift-end-to-end-cluster-customization) @@ -79,6 +81,11 @@ - [geekflare.com: devops-tools](https://geekflare.com/devops-tools/) - [edureka.com: Top 10 DevOps Tools You Must Know In 2020](https://www.c/blog/top-10-devops-tools/) +### Relay +- [Relay](https://relay.sh/) Event-driven automation that connects the cloud providers, DevOps tools, and other APIs you already use. +- Automation tools can learn a lot from the CI/CD and Serverless ecosystems. Relay by **PuppetLabs** leverages **Tekton** and **Knative** in an attempt to do just that. +- [zdnet.com: Puppet introduces beta of cloud-native, event-driven DevOps program: Relay](https://www.zdnet.com/article/puppet-introduces-beta-of-cloud-native-event-driven-devops-program-relay/#ftag=RSSbaffb68) The open-source wants to expand DevOps to cover cloud and containers with its newest program. + ## Netflix and DevOps * [Full Cycle Developers at Netflix β€” Operate What You Build](https://netflixtechblog.com/full-cycle-developers-at-netflix-a08c31f83249) * [Applying Netflix DevOps Patterns to Windows](https://netflixtechblog.com/applying-netflix-devops-patterns-to-windows-2a57f2dbbf79) diff --git a/docs/devsecops.md b/docs/devsecops.md index 809bf45c..6da02256 100644 --- a/docs/devsecops.md +++ b/docs/devsecops.md @@ -12,13 +12,16 @@ - [Databases in DMZ and Intranet](#databases-in-dmz-and-intranet) - [Manage your secrets in Git with SOPS for Kubernetes](#manage-your-secrets-in-git-with-sops-for-kubernetes) - [Pentesting](#pentesting) -- [HashiCorp Vault](#hashicorp-vault) +- [GitOps Secret Management](#gitops-secret-management) + - [HashiCorp Vault](#hashicorp-vault) + - [Alternatives](#alternatives) - [Serverless Security Best Practices](#serverless-security-best-practices) ## Introduction - [fiercesw.com: DevOps vs DevSecOps](https://fiercesw.com/devsecops-starter) - [devopszone.info: DevSecOps Explained](https://www.devopszone.info/post/devsecops-explained) - [linkedin: Dear Google, my data has left your building!](https://www.linkedin.com/pulse/dear-google-my-data-has-left-your-building-zakir-khan/) +- [snyk.io: The State of Open Source Security 2020](https://snyk.io/open-source-security-report/) ## Kubernetes Config Security Threats - [cncf.io: Identifying Kubernetes Config Security Threats: Pods Running as Root](https://www.cncf.io/blog/2020/06/16/identifying-kubernetes-config-security-threats-pods-running-as-root/) @@ -59,9 +62,19 @@ ## Pentesting - [forbes.com: DevOps Drives Pentesting Delivered As A Service](https://www.forbes.com/sites/chenxiwang/2020/06/17/devops-drives-pentesting-delivered-as-a-service/) -## HashiCorp Vault +## GitOps Secret Management +### HashiCorp Vault - [vaultproject.io](https://www.vaultproject.io/) Manage Secrets and Protect Sensitive Data. Secure, store and tightly control access to tokens, passwords, certificates, encryption keys for protecting secrets and other sensitive data using a UI, CLI, or HTTP API. - [medium: Coding for Secrets Reliability with HashiCorp Vault](https://medium.com/hashicorp-engineering/coding-for-secrets-reliability-with-hashicorp-vault-2090dd8667e) +- [hashicorp.com: Vault & Kubernetes: Better Together](https://www.hashicorp.com/resources/vault-and-kubernetes-better-together/) +- OpenShift Blogs: + - https://www.openshift.com/blog/managing-secrets-openshift-vault-integration + - https://www.openshift.com/blog/vault-integration-using-kubernetes-authentication-method + - https://www.openshift.com/blog/integrating-vault-with-legacy-applications + - https://www.openshift.com/blog/integrating-hashicorp-vault-in-openshift-4 + +### Alternatives +- [GitOps secret management with bitnami-labs Sealed Secret and GoDaddy Kubernetes External Secrets](https://www.openshift.com/blog/gitops-secret-management) ## Serverless Security Best Practices - [10 Serverless security best practices](https://snyk.io/blog/10-serverless-security-best-practices/) diff --git a/docs/docker.md b/docs/docker.md index 53e09315..9a6f2bba 100644 --- a/docs/docker.md +++ b/docs/docker.md @@ -1,5 +1,6 @@ # Docker - [Introduction and Tutorials](#introduction-and-tutorials) +- [How To Build a Smaller Docker Image](#how-to-build-a-smaller-docker-image) - [Docker Tools](#docker-tools) - [Docker and WSL2](#docker-and-wsl2) - [Docker Cheat sheet](#docker-cheat-sheet) @@ -18,7 +19,6 @@ * [americanexpress.io: **Do Not Run Dockerized Applications as Root** 🌟](https://americanexpress.io/do-not-run-dockerized-applications-as-root/) * [medium.com: Removing Docker Images, Containers, and Volumes with Ease](https://medium.com/@jon.froiland/removing-docker-images-containers-and-volumes-with-ease-fdf16bebccec) * [medium.freecodecamp.com: A Beginner-Friendly Introduction to Containers, VMs and Docker](https://medium.freecodecamp.com/a-beginner-friendly-introduction-to-containers-vms-and-docker-79a9e3e119b) -* [developers.redhat.com: Keep it small: a closer look at Docker image sizing](https://developers.redhat.com/blog/2016/03/09/more-about-docker-images-size/) * [Google Play: Learning Solution - Learn Docker 🌟](https://play.google.com/store/apps/details?id=com.LearningSolution.LearnDocker&hl=en) * [Play with docker 🌟](https://labs.play-with-docker.com/) A simple, interactive and fun playground to learn Docker * [blog.docker.com: Intro Guide to Dockerfile Best Practices 🌟](https://blog.docker.com/2019/07/intro-guide-to-dockerfile-best-practices/) @@ -35,6 +35,10 @@ * [geekflare.com: docker tutorials](https://geekflare.com/docker-tutorials/) * [medium: What is Docker, Why should you use it in simple words](https://medium.com/@shahinghasemy/what-is-docker-why-should-you-use-it-in-simple-words-cc5e6160f9db) +## How To Build a Smaller Docker Image +* [developers.redhat.com: Keep it small: a closer look at Docker image sizing](https://developers.redhat.com/blog/2016/03/09/more-about-docker-images-size/) +* [medium: How to build a smaller Docker image](https://medium.com/@gdiener/how-to-build-a-smaller-docker-image-76779e18d48a) When you’re building a Docker image it’s important to keep the size under control. Having small images means ensuring faster deployment and transfers. + ## Docker Tools - [Top 50 Docker Tools](https://blog.inedo.com/top-50-docker-tools) diff --git a/docs/faq.md b/docs/faq.md index 55a9909a..c0dc5c86 100644 --- a/docs/faq.md +++ b/docs/faq.md @@ -2,7 +2,7 @@ - [Should I Use A Microservices Architecture? What about the UI? 🌟](https://www.jamesmichaelhickey.com/microservices-architecture/) - [medium.com: STOP!! You don’t need Microservices](https://medium.com/@ebin/stop-you-dont-need-microservices-dc732d70b3e0) - [contino.io: How to Make Enterprise Container Strategies That Last (Part One)](https://www.contino.io/insights/how-to-make-enterprise-container-strategies-that-last-part-one) -- [medium.com: Your team might not need Kubernetes](https://medium.com/@alexellisuk/your-team-might-not-need-kubernetes-57240e8d554a) +- [medium.com: Your team might not need Kubernetes](https://medium.com/faun/your-team-might-not-need-kubernetes-57240e8d554a) - [cybercoders.com: What Hiring Managers look for in a Full Stack Developer](https://www.cybercoders.com/insights/what-hiring-managers-look-for-in-a-full-stack-developer/) - [nginx.com: Introduction to Microservices 🌟🌟🌟](https://www.nginx.com/blog/introduction-to-microservices/) - [Dzone: Programming Styles Compared: Spring Framework vis-a-vis Eclipse MicroProfile 🌟🌟](https://dzone.com/articles/programming-styles-spring-boot-vis-a-vis-with-ecli) diff --git a/docs/git.md b/docs/git.md index 94f85eaf..955a173d 100644 --- a/docs/git.md +++ b/docs/git.md @@ -52,6 +52,7 @@ * [dev.to: Git Explained - The Basics](https://dev.to/milu_franz/git-explained-the-basics-igc) * [medium: 7 Best Courses to Master Git and Github for Programmers](https://medium.com/javarevisited/7-best-courses-to-master-git-and-github-for-programmers-d671859a68b2) These are the best courses to learn Git from scratch and also advanced concepts like branching and merging. It also includes a free course to learn git. * [medium: Top 7 Cloud Source Code Management Tools Features and Pricing Plans](https://medium.com/@atif.ramzan89/top-7-cloud-source-code-management-tools-features-and-pricing-plans-105f4eb88a3a) +* [towardsdatascience.com: The 6 Git Commands Data Scientist Should Know](https://towardsdatascience.com/the-only-6-git-commands-you-need-to-know-995065db1ae0) An introduction to using Git for machine learning projects. ## Design By Contract [Wikipedia: Design by contract (DbC)](https://en.wikipedia.org/wiki/Design_by_contract), also known as contract programming, programming by contract and design-by-contract programming, is an approach for designing software. diff --git a/docs/gitops.md b/docs/gitops.md index b62061ec..1f31c165 100644 --- a/docs/gitops.md +++ b/docs/gitops.md @@ -3,10 +3,13 @@ - [Git Repositories Structures](#git-repositories-structures) - [GitOps Tools](#gitops-tools) - [Flux. The GitOps Operator for Kubernetes](#flux-the-gitops-operator-for-kubernetes) + - [Kustomize. Kubernetes native configuration management](#kustomize-kubernetes-native-configuration-management) - [WKSctl. Weave Kubernetes System Control](#wksctl-weave-kubernetes-system-control) - [Helm](#helm) - [Jenkins](#jenkins) - [Terraform](#terraform) + - [Config Sync and Anthos Config Management](#config-sync-and-anthos-config-management) +- [GitOps Frameworks](#gitops-frameworks) - [Kubernetes Platforms and GitOps](#kubernetes-platforms-and-gitops) - [OpenShift GitOps](#openshift-gitops) - [Weave Kubernetes Platform](#weave-kubernetes-platform) @@ -35,6 +38,9 @@ * [dzone: Developing Applications on Multi-tenant Clusters With Flux and Kustomize](https://dzone.com/articles/developing-applications-on-multitenant-clusters-wi) Take a look at how multiple teams can use the resources of a single cluster to develop an application. * [A Complete Step by Step Guide to Implementing a GitOps Workflow with Flux 🌟](https://managedkube.com/gitops/flux/weaveworks/guide/tutorial/2020/05/01/a-complete-step-by-step-guide-to-implementing-a-gitops-workflow-with-flux.html) +### Kustomize. Kubernetes native configuration management +- [kustomize.io 🌟](https://kustomize.io/) Kustomize introduces a template-free way to customize application configuration that simplifies the use of off-the-shelf applications. Now, built into kubectl as apply -k. + ### WKSctl. Weave Kubernetes System Control * [Weave Kubernetes System Control - wksctl](https://github.com/weaveworks/wksctl) Open Source Weaveworks Kubernetes System * [WKSctl - A New OSS Kubernetes Manager using GitOps](https://www.weave.works/blog/wksctl-a-new-oss-kubernetes-manager-using-gitops) @@ -54,6 +60,15 @@ ### Terraform - [How to Create a GitOps Workflow with Terraform and Jenkins](https://www.hashicorp.com/resources/how-create-gitops-workflow-terraform-jenkins/) +### Config Sync and Anthos Config Management +- [Config Sync](https://cloud.google.com/kubernetes-engine/docs/add-on/config-sync/overview) +- [Anthos Config Management](https://cloud.google.com/anthos/config-management) +- Google built a tool called [Config Sync](https://cloud.google.com/kubernetes-engine/docs/add-on/config-sync/overview) which acts as the bridge between an external source code repository and the Kubernetes API server. [Anthos Config Management](https://cloud.google.com/anthos/config-management) is based on Config Sync to extend it to multicluster scenarios. + +## GitOps Frameworks +- [dzone: Why Now Is the Time for the Spring Boot of Infrastructure Automation 🌟](https://dzone.com/articles/why-now-is-the-time-for-the-spring-boot-of-infrast) Application teams move fast using frameworks built to boost developer productivity. Learn how a productivity framework can help your DevOps initiative succeed. +- [Kubestack 🌟](https://www.kubestack.com/framework/documentation) is an open-source GitOps framework for infrastructure automation built on Terraform and Kustomize. It’s designed for teams that want to automate Kubernetes based infrastructure and not reinvent automation. Think of it this way, Kubestack is to Terraform and infrastructure automation, what Spring Boot is to Java and cloud native applications. The framework supports all three major cloud providers and has been used as the foundation for a number of real world customer projects as part of my colleagues’ and my consulting work. It is fully documented, has a step-by-step tutorial to help users get started and even includes a local [GitOps development lab](https://www.kubestack.com/framework/documentation/tutorial-build-local-lab). So you can test-drive Kubestack and learn more about GitOps for infrastructure automation in the comfort of your own localhost. + ## Kubernetes Platforms and GitOps ### OpenShift GitOps * [blog.openshift.com: Introduction to GitOps with OpenShift](https://blog.openshift.comintroduction-to-gitops-with-openshift/) diff --git a/docs/ibm_cloud.md b/docs/ibm_cloud.md index ed6bad4e..0f4821d3 100644 --- a/docs/ibm_cloud.md +++ b/docs/ibm_cloud.md @@ -30,6 +30,7 @@ - [openliberty.io](https://www.openliberty.io/) A lightweight open framework for building fast and efficient cloud-native Java microservices. Build cloud-native apps and microservices while running only what you need. - [IBM open sources WebSphere Liberty code to support Java microservices and cloud-native apps](https://developer.ibm.com/dwblog/2017/websphere-liberty-java-open-source/) - [github.com/openliberty](https://github.com/openliberty/) +- [developers.redhat.com: Support for GraphQL with Open Liberty 20.0.0.6](https://developers.redhat.com/blog/2020/06/17/support-for-graphql-with-open-liberty-20-0-0-6/) ## Red Hat OpenShift on IBM Z and LinuxONE - [IBM and Red Hat bring OpenShift to IBM Z and LinuxONE](https://www.openshift.com/blog/ibm-and-red-hat-bring-openshift-to-ibm-z-and-linuxone) diff --git a/docs/images/redis_logo.jpg b/docs/images/redis_logo.jpg new file mode 100644 index 00000000..c45bc639 Binary files /dev/null and b/docs/images/redis_logo.jpg differ diff --git a/docs/images/summarising_top_10_api_testing_tools.png b/docs/images/summarising_top_10_api_testing_tools.png new file mode 100644 index 00000000..3fdd6bec Binary files /dev/null and b/docs/images/summarising_top_10_api_testing_tools.png differ diff --git a/docs/index.md b/docs/index.md index 34d852bd..01df61a0 100644 --- a/docs/index.md +++ b/docs/index.md @@ -12,7 +12,7 @@ A curated list of awesome references collected since 2018. Microservices archite [![dzone videos](images/dzone_logo.jpg){: style="width:7%"}](https://www.youtube.com/c/dzone/) [![prometheus videos](images/prometheus_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UC4pLFely0-Odea4B2NL1nWA) [![grafana videos](images/grafana_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCYCwgQAMm9sTJv0rgwQLCxw) [![istio videos](images/istio_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UC-zVlo1F3mUbExQ96fABWcQ) [![elastic videos](images/elasticsearch_logo.jpg){: style="width:7%"}](https://www.youtube.com/user/elasticsearch) [![dynatrace videos](images/dynatrace_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCcYJ-5q_AfmjQ4XTjTS0o3g) [![appdynamics videos](images/appdynamics_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCTL2V4fqMMERSWQa1kT4EMw) [![newrelic videos](images/newrelic_logo.jpg){: style="width:7%"}](https://www.youtube.com/user/NewRelicInc) [![tigera calico](images/tigera_calico_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UC8uN3yhpeBeerGNwDiQbcgw) [![weavecloud](images/weavecloud_logo.jpg){: style="width:7%"}](https://www.youtube.com/c/WeaveWorksInc) [![white square](images/empty_logo.jpg){: style="width:7%"}](https://www.youtube.com)
[![atlassian videos](images/atlassian_logo.jpg){: style="width:7%"}](https://www.youtube.com/user/GoAtlassian) [![vscode videos](images/vscode_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCs5Y5_7XK8HLDX0SLNwkd3w) [![github videos](images/github_logo.jpg){: style="width:7%"}](https://www.youtube.com/user/github) [![gitlab video](images/gitlab_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg) [![gitkraken](images/gitkraken_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCp06FAzrFalo3txskS1gCfA) [![rocketchat videos](images/rocket_chat_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCin9nv7mUjoqrRiwrzS5UVQ) [![slack videos](images/slack_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCY3YECgeBcLCzIrFLP4gblw) [![mattermost videos](images/mattermost_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCNR05H72hi692y01bWaFXNA) [![microsoft365](images/microsoft_365_logo.jpg){: style="width:7%"}](https://www.youtube.com/user/officevideos) [![openproject](images/openproject_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCpDojas1X9ccix4mxadabpw) [![deiser](images/deiser_logo.jpg){: style="width:7%"}](https://www.youtube.com/user/DEISERCHANNEL)
[![acloudguru](images/acloudguru_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCp8lLM2JP_1pv6E0NQ38pqw) [![devops_tv](images/devops_tv_logo.jpg){: style="width:7%"}](https://www.youtube.com/c/Devopsdotcom) [![xebialabs](images/xebialabs_logo.jpg){: style="width:7%"}](https://www.youtube.com/user/xebialabs) [![devops library](images/devops_library_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCOnioSzUZS-ZqsRnf38V2nA) [![codecademy](images/codecademy.jpg){: style="width:7%"}](https://www.youtube.com/channel/UC5CMtpogD_P3mOoeiDHD5eQ) [![coursera](images/coursera_logo.jpg){: style="width:7%"}](https://www.youtube.com/user/coursera) [![academind](images/academind_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCSJbGtTlrDami-tDGPUV9-w) [![guru99](images/guru99_logo.jpg){: style="width:7%"}](https://www.youtube.com/user/guru99com) [![codelytv](images/codelytv_logo.jpg){: style="width:7%"}](https://www.youtube.com/CodelyTV) [![intellipaat](images/intellipaat_logo.jpg){: style="width:7%"}](https://www.youtube.com/user/intellipaaat) [![white square](images/empty_logo.jpg){: style="width:7%"}](https://www.youtube.com)
-[![crunchydata](images/crunchydata_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCooRnlDz6VLAbFyKIChz4fg) [![kubedb appscode](images/kubedb_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCxObRDZ0DtaQe_cCP-dN-xg) [![cockroachdb](images/cockroachdb_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCc-m3P54YDVTjtMUJlmAuow) [![mongodb](images/mongodb_logo.jpg){: style="width:7%"}](https://www.youtube.com/user/MongoDB) [![confluent video](images/confluent_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCmZz-Gj3caLLzEWBtbYUXaA) [![kubemq video](images/kubemq_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCud7fErZAyMC6lHT_cWZNfA) [![openebs](images/openebs_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UC3ywadaAUQ1FI4YsHZ8wa0g) [![storageos](images/storageos_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCm63IQg81KP9vXRWSHQpu1w) [![robin](images/robin_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCt7N400Z8gB_3yKq1qrjP2w) [![portworx](images/portworx_logo.jpg){: style="width:7%"}](https://www.youtube.com/c/Portworx) [![white square](images/empty_logo.jpg){: style="width:7%"}](https://www.youtube.com)
+[![crunchydata](images/crunchydata_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCooRnlDz6VLAbFyKIChz4fg) [![kubedb appscode](images/kubedb_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCxObRDZ0DtaQe_cCP-dN-xg) [![cockroachdb](images/cockroachdb_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCc-m3P54YDVTjtMUJlmAuow) [![mongodb](images/mongodb_logo.jpg){: style="width:7%"}](https://www.youtube.com/user/MongoDB) [![redis](images/redis_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCD78lHSwYqMlyetR0_P4Vig/) [![confluent video](images/confluent_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCmZz-Gj3caLLzEWBtbYUXaA) [![kubemq video](images/kubemq_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCud7fErZAyMC6lHT_cWZNfA) [![openebs](images/openebs_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UC3ywadaAUQ1FI4YsHZ8wa0g) [![storageos](images/storageos_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCm63IQg81KP9vXRWSHQpu1w) [![robin](images/robin_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCt7N400Z8gB_3yKq1qrjP2w) [![portworx](images/portworx_logo.jpg){: style="width:7%"}](https://www.youtube.com/c/Portworx)
[![rh devel](images/rh_developer_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UC7noUdfWp-ukXUlAsJnSm-Q/) [![spring logo](images/spring-logo.jpg){: style="width:7%"}](https://www.youtube.com/user/SpringSourceDev) [![quarkus logo](images/quarkus-logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCaW8QG_QoIk_FnjLgr5eOqg) [![lightbend videos](images/lightbend_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCcxTiKb1h2lY_gpTCDgXn1g) [![postman videos](images/postman_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCocudCGVb3MmhWQ1aoIgUQw) [![swagger videos](images/smartbear_swagger_logo.jpg){: style="width:7%"}](https://www.youtube.com/user/SmartBearSoftware) [![jfrog](images/jfrog_logo.jpg){: style="width:7%"}](https://www.youtube.com/user/artifrog) [![sonatype](images/sonatype_logo.jpg){: style="width:7%"}](https://www.youtube.com/user/sonatype) [![sonarsource sonarqube](images/sonarsource_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCS5-gTYteN9rnFd98YxYtrA) [![chrome developers videos](images/chromedevtools_logo.jpg){: style="width:7%"}](https://www.youtube.com/user/ChromeDevelopers) [![mozilla developer](images/mozilla_developer_logo.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCh5UlGiu9d6LegIeUCW4N1w)
--- diff --git a/docs/introduction.md b/docs/introduction.md index 4d88fac0..afa280c3 100644 --- a/docs/introduction.md +++ b/docs/introduction.md @@ -37,6 +37,7 @@ * [medium.com: Kubernetes β€” What Is It, What Problems Does It Solve and How Does It Compare With Alternatives?](https://medium.com/@srikanth.k/kubernetes-what-is-it-what-problems-does-it-solve-how-does-it-compare-with-its-alternatives-937fe80b754f) * [spec-india.com: Kubernetes VS Openshift (July 23rd 2019)](https://www.spec-india.com/blog/kubernetes-vs-openshift) * [phoenixnap.com: Kubernetes vs OpenShift: Key Differences Compared 🌟](https://phoenixnap.com/blog/kubernetes-vs-openshift) +* [crn.com: Red Hat CEO: We Have A β€˜Head Start’ Over VMware, Competitors In Kubernetes](https://www.crn.com/slide-shows/cloud/red-hat-ceo-we-have-a-head-start-over-vmware-competitors-in-kubernetes) Red Hat CEO Paul Cormier speaks with CRN about the role IBM has played in Red Hat’s channel strategy, how the company has preserved its independence under Big Blue, and why Red Hat will win in the ultra-competitive Kubernetes market.
[![Openshift SaaS VS Kubernetes SaaS](images/openshift-vs-kubernetes-saas.png)](https://proteon.com/2018/10/18/openshift-in-a-world-of-kubernetes-as-a-service/) diff --git a/docs/java_frameworks.md b/docs/java_frameworks.md index 71de8984..a4fb2412 100644 --- a/docs/java_frameworks.md +++ b/docs/java_frameworks.md @@ -2,6 +2,7 @@ - [Java](#java) - [Existing Java Implementations](#existing-java-implementations) - [Use Java 11](#use-java-11) + - [Java Collections Interview Questions](#java-collections-interview-questions) - [Java Programming Models (Frameworks)](#java-programming-models-frameworks) - [Jakarta EE](#jakarta-ee) - [Eclipse MicroProfile](#eclipse-microprofile) @@ -34,6 +35,9 @@ - [**AdoptOpenJDK 11** Is the New Default 🌟](https://blog.adoptopenjdk.net/2020/06/adoptopenjdk-11-new-default/) - [All You Need To Know For Migrating To Java 11](https://blog.codefx.org/java/java-11-migration-guide/) +### Java Collections Interview Questions +* [50+ Java Collections Interview Questions for Beginners and Experienced Programmers](https://medium.com/javarevisited/50-java-collections-interview-questions-for-beginners-and-experienced-programmers-4d2c224cc5ab) + ## Java Programming Models (Frameworks) - [Best Java Frameworks Solutions](https://www.itcentralstation.com/categories/java-frameworks) The best Java Frameworks vendors are **Apache Spark**, **Spring Boot**, **Oracle Application Development Framework (Oracle ADF)**, **Jakarta EE**, and **Open Liberty**. Apache is the top solution according to IT Central Station reviews and rankings. One reviewer writes: "Fast performance and has an easy initial setup", and another reviewer writes: "Easy to use and is capable of processing large amounts of data". The 2nd best product is Spring Boot. A user writes: "Very smooth implementation; excellent features for monitoring and tracking network calls ", and another reviewer writes: "Makes it difficult to support a specific functionality in a user-friendly manner, but simplifies application deployment". - **Open Source Microservices Frameworks** (frameworks for microservices development): diff --git a/docs/jenkins.md b/docs/jenkins.md index 23e6ec55..f6145279 100644 --- a/docs/jenkins.md +++ b/docs/jenkins.md @@ -19,6 +19,7 @@ - [Ansible and Jenkins. Running Ansible Playbooks From Jenkins](#ansible-and-jenkins-running-ansible-playbooks-from-jenkins) - [Jenkins Tools](#jenkins-tools) - [Plugin Installation Manager Tool](#plugin-installation-manager-tool) + - [Pipeline Development Tools](#pipeline-development-tools) - [Jenkins Multibranch Pipeline](#jenkins-multibranch-pipeline) - [Multibranch Pipelines with Kubernetes](#multibranch-pipelines-with-kubernetes) - [Jenkins Plugins](#jenkins-plugins) @@ -225,6 +226,8 @@ * [devops.com: Kubernetes Jenkins Master-Slave: Scaling the Scalability Issue](https://devops.com/kubernetes-jenkins-master-slave-scaling-the-scalability-issue/) * [7 Ways to Optimize Jenkins](https://www.sitepoint.com/7-ways-optimize-jenkins/) * [devopscube.com: How to Setup Docker containers as Build Slaves for Jenkins](https://devopscube.com/docker-containers-as-build-slaves-jenkins/) +* [cloudbees.com: Troubleshooting Jenkins Performance: Kubernetes Edition - Part 1 (2020) 🌟](https://www.cloudbees.com/blog/apm-tools-jenkins-performance) +* [cloudbees.com: Troubleshooting Jenkins Performance: Kubernetes Edition - Part 2 (2020) 🌟](https://www.cloudbees.com/blog/application-performance-monitoring-tools) ## Ansible and Jenkins. Running Ansible Playbooks From Jenkins * [Dzone: Running Ansible Playbooks From Jenkins](https://dzone.com/articles/running-ansible-playbooks-from-jenkins) @@ -242,6 +245,10 @@ * [Plugin Installation Manager Tool](https://github.com/jenkinsci/plugin-installation-manager-tool) The plugin manager downloads plugins and their dependencies into a folder so that they can easily be imported into an instance of Jenkins. The goal of this tool is to replace the [Docker install-plugins.sh script](https://github.com/jenkinsci/docker/blob/master/install-plugins.sh) and the many other implementations of plugin management that have been recreated across Jenkins. The tool also allows users to see more information about the plugins they are downloading such as available updates and security warnings. By default, plugins will be downloaded; the user can specify not to download plugins using the --no-download option. * [Jenkins Plugin Manager CLI v1.1.0](https://github.com/jenkinsci/plugin-installation-manager-tool/releases/tag/plugin-management-parent-pom-1.1.0) is now released: caching of update site data and downloaded plugins, retry on download, and dependency resolution fixes. +### Pipeline Development Tools +- [Pipeline Development Tools (Command-line Pipeline Linter)](https://www.jenkins.io/doc/book/pipeline/development/#linter) +- [Validating Jenkinsfile in Vim and/or using CLI / terminal](https://gist.github.com/MorganGeek/2958ba47630a176733e0136b42557284) + ## Jenkins Multibranch Pipeline - The [Multibranch Pipeline 🌟](https://www.jenkins.io/doc/book/pipeline/multibranch/) enable developer to implement different Jenkinsfiles for different branches of the same project. It’s can discover branches and execute pipeline automatically with Jenkinsfiles in version control for better management pipeline. diff --git a/docs/kubernetes.md b/docs/kubernetes.md index 2495c03d..507ef347 100644 --- a/docs/kubernetes.md +++ b/docs/kubernetes.md @@ -2,14 +2,11 @@ - [Certified Kubernetes Offerings](#certified-kubernetes-offerings) - [The State of Cloud-Native Development. Details data on the use of Kubernetes, serverless computing and more](#the-state-of-cloud-native-development-details-data-on-the-use-of-kubernetes-serverless-computing-and-more) - [Kubernetes open-source container-orchestation](#kubernetes-open-source-container-orchestation) + - [Health Checks](#health-checks) - [Architecting Kubernetes clusters](#architecting-kubernetes-clusters) - [Templating YAML in Kubernetes with real code. YQ YAML processor](#templating-yaml-in-kubernetes-with-real-code-yq-yaml-processor) - [Kubernetes Limits](#kubernetes-limits) - [Kubernetes Knowledge Hubs](#kubernetes-knowledge-hubs) -- [Extending Kubernetes](#extending-kubernetes) - - [Adding Custom Resources. Extending Kubernetes API with Kubernetes Resource Definitions. CRD vs Aggregated API](#adding-custom-resources-extending-kubernetes-api-with-kubernetes-resource-definitions-crd-vs-aggregated-api) - - [OpenKruise/Kruise](#openkruisekruise) - - [Crossplane, a Universal Control Plane API for Cloud Computing. Crossplane Workloads Definitions](#crossplane-a-universal-control-plane-api-for-cloud-computing-crossplane-workloads-definitions) - [Kubectl commands](#kubectl-commands) - [Kubectl Cheat Sheets](#kubectl-cheat-sheets) - [Kubectl Autocomplete](#kubectl-autocomplete) @@ -37,6 +34,11 @@ - [Cluster Autoscaler and DockerHub](#cluster-autoscaler-and-dockerhub) - [Cluster Autoscaler in GKE, EKS, AKS and DOKS](#cluster-autoscaler-in-gke-eks-aks-and-doks) - [Cluster Autoscaler in OpenShift](#cluster-autoscaler-in-openshift) +- [Extending Kubernetes](#extending-kubernetes) + - [Adding Custom Resources. Extending Kubernetes API with Kubernetes Resource Definitions. CRD vs Aggregated API](#adding-custom-resources-extending-kubernetes-api-with-kubernetes-resource-definitions-crd-vs-aggregated-api) + - [Krew, a plugin manager for kubectl plugins](#krew-a-plugin-manager-for-kubectl-plugins) + - [OpenKruise/Kruise](#openkruisekruise) + - [Crossplane, a Universal Control Plane API for Cloud Computing. Crossplane Workloads Definitions](#crossplane-a-universal-control-plane-api-for-cloud-computing-crossplane-workloads-definitions) - [Kubernetes Community](#kubernetes-community) - [Community Forums](#community-forums) - [Kubernetes Special Interest Groups (SIGs)](#kubernetes-special-interest-groups-sigs) @@ -150,7 +152,6 @@ * [kubernetes-on-aws.readthedocs.io](https://kubernetes-on-aws.readthedocs.io/ ) * [techbeacon.com: Why teams fail with Kubernetesβ€”and what to do about it 🌟](https://techbeacon.com/enterprise-it/why-teams-fail-kubernetes-what-do-about-it) * [itnext.io: Kubernetes rolling updates, rollbacks and multi-environments 🌟](https://itnext.io/kubernetes-rolling-updates-rollbacks-and-multi-environments-4ff9912df5) -* [youtube: Kubernetes 101: Get Better Uptime with K8s Health Checks](https://www.youtube.com/watch?v=D9w3DH1zAc8) * [learnk8s.io: Load balancing and scaling long-lived connections in Kubernetes 🌟](https://learnk8s.io/kubernetes-long-lived-connections) * [itnext.io: Successful & Short Kubernetes Stories For DevOps Architects](https://itnext.io/successful-short-kubernetes-stories-for-devops-architects-677f8bfed803) * [itnext.io: K8s Vertical Pod Autoscaling 🌟](https://itnext.io/k8s-vertical-pod-autoscaling-fd9e602cbf81) @@ -190,6 +191,11 @@

+### Health Checks +* [medium: How to Perform Health checks in Kubernetes (K8s)](https://medium.com/faun/how-to-perform-health-checks-in-kubernetes-k8s-a4e5300b1f9d) +* [wideops.com: Kubernetes best practices: Setting up health checks with readiness and liveness probes](https://wideops.com/kubernetes-best-practices-setting-up-health-checks-with-readiness-and-liveness-probes/) +* [youtube: Kubernetes 101: Get Better Uptime with K8s Health Checks](https://www.youtube.com/watch?v=D9w3DH1zAc8) + ### Architecting Kubernetes clusters * [learnk8s.io: Architecting Kubernetes clusters β€” how many should you have?](https://learnk8s.io/how-many-clusters) * [learnk8s.io: Architecting Kubernetes clusters β€” choosing a worker node size](https://learnk8s.io/kubernetes-node-size) @@ -209,34 +215,6 @@ - [k8sref.io 🌟](https://www.k8sref.io/) Kubernetes Reference - [Kubernetes Research. Research documents on node instance types, managed services, ingress controllers, CNIs, etc. 🌟](https://learnk8s.io/research) A research hub to collect all knowledge around Kubernetes. Those are in-depth reports and comparisons designed to drive your decisions. Should you use GKE, AKS, EKS? How many nodes? What instance type? -## Extending Kubernetes -### Adding Custom Resources. Extending Kubernetes API with Kubernetes Resource Definitions. CRD vs Aggregated API -- [Custom Resources](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/) -- Use a custom resource (CRD or Aggregated API) if most of the following apply: - - You want to use Kubernetes client libraries and CLIs to create and update the new resource. - - You want top-level support from kubectl; for example, kubectl get my-object object-name. - - You want to build new automation that watches for updates on the new object, and then CRUD other objects, or vice versa. - - You want to write automation that handles updates to the object. - - You want to use Kubernetes API conventions like .spec, .status, and .metadata. - - You want the object to be an abstraction over a collection of controlled resources, or a summarization of other resources. -- Kubernetes provides two ways to add custom resources to your cluster: - - CRDs are simple and can be created without any programming. - - API Aggregation requires programming, but allows more control over API behaviors like how data is stored and conversion between API versions. -- Kubernetes provides these two options to meet the needs of different users, so that neither ease of use nor flexibility is compromised. -- Aggregated APIs are subordinate API servers that sit behind the primary API server, which acts as a proxy. This arrangement is called API Aggregation (AA). To users, it simply appears that the Kubernetes API is extended. -- CRDs allow users to create new types of resources without adding another API server. You do not need to understand API Aggregation to use CRDs. -- Regardless of how they are installed, the new resources are referred to as Custom Resources to distinguish them from built-in Kubernetes resources (like pods). - -### OpenKruise/Kruise -- [openkruise.io](https://openkruise.io/) -- [OpenKruise/Kruise](https://github.com/openkruise/kruise) -- [thenewstack.io: Introducing CloneSet: A Production-Grade Kubernetes Deployment CRD](https://thenewstack.io/introducing-cloneset-production-grade-kubernetes-deployment-crd/) - -### Crossplane, a Universal Control Plane API for Cloud Computing. Crossplane Workloads Definitions -- [crossplane.io 🌟](https://crossplane.io/) Crossplane is an open source Kubernetes add-on that supercharges your Kubernetes clusters enabling you to provision and manage infrastructure, services, and applications from kubectl. -- [Crossplane, a Universal Control Plane API for Cloud Computing](https://www.infoq.com/news/2019/01/upbound-crossplane/) -- [Crossplane as an OpenShift Operator to manage and provision cloud-native services](https://blog.crossplane.io/crossplane-openshift-operator-cloud-native-services/) - ## Kubectl commands ### Kubectl Cheat Sheets * [Kubectl Cheat Sheets](cheatsheets.md) @@ -339,6 +317,8 @@ kubectl get secret --namespace=β€Š-o yaml | sed β€˜s/names ### Helm Charts repositories * [hub.helm.sh 🌟](http://hub.helm.sh) * [Bitnami Helm Charts](https://bitnami.com/stacks/helm) +* [JFrog ChartCenter](https://chartcenter.io/) + * [Navigating Kubernetes With Helm 3 Charts and ChartCenter 🌟](https://dzone.com/articles/navigating-kubernetes-with-helm-3-charts-and-chart) ChartCenter is a free central repository for discovering Helm Charts, created to help manage your Kubernetes applications ### Helm Charts * [Jenkins](https://github.com/helm/charts/tree/master/stable/jenkins) @@ -400,6 +380,38 @@ kubectl get secret --namespace=β€Š-o yaml | sed β€˜s/names * [OpenShift 3.11: Configuring the cluster auto-scaler in AWS](https://docs.openshift.com/container-platform/3.11/admin_guide/cluster-autoscaler.html) * [OpenShift 4.4: Applying autoscaling to an OpenShift Container Platform cluster](https://docs.openshift.com/container-platform/4.4/machine_management/applying-autoscaling.html) +## Extending Kubernetes +### Adding Custom Resources. Extending Kubernetes API with Kubernetes Resource Definitions. CRD vs Aggregated API +- [Custom Resources](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/) +- Use a custom resource (CRD or Aggregated API) if most of the following apply: + - You want to use Kubernetes client libraries and CLIs to create and update the new resource. + - You want top-level support from kubectl; for example, kubectl get my-object object-name. + - You want to build new automation that watches for updates on the new object, and then CRUD other objects, or vice versa. + - You want to write automation that handles updates to the object. + - You want to use Kubernetes API conventions like .spec, .status, and .metadata. + - You want the object to be an abstraction over a collection of controlled resources, or a summarization of other resources. +- Kubernetes provides two ways to add custom resources to your cluster: + - CRDs are simple and can be created without any programming. + - API Aggregation requires programming, but allows more control over API behaviors like how data is stored and conversion between API versions. +- Kubernetes provides these two options to meet the needs of different users, so that neither ease of use nor flexibility is compromised. +- Aggregated APIs are subordinate API servers that sit behind the primary API server, which acts as a proxy. This arrangement is called API Aggregation (AA). To users, it simply appears that the Kubernetes API is extended. +- CRDs allow users to create new types of resources without adding another API server. You do not need to understand API Aggregation to use CRDs. +- Regardless of how they are installed, the new resources are referred to as Custom Resources to distinguish them from built-in Kubernetes resources (like pods). + +### Krew, a plugin manager for kubectl plugins +* [Krew 🌟](https://krew.sigs.k8s.io/) is the plugin manager for kubectl command-line tool. +* [itnext.io: Extending Kubernetes Cluster; Kubectl Plugins and Krew](https://itnext.io/extending-kubernetes-cluster-kubectl-plugins-and-krew-547a8bc839a3) + +### OpenKruise/Kruise +- [openkruise.io](https://openkruise.io/) +- [OpenKruise/Kruise](https://github.com/openkruise/kruise) +- [thenewstack.io: Introducing CloneSet: A Production-Grade Kubernetes Deployment CRD](https://thenewstack.io/introducing-cloneset-production-grade-kubernetes-deployment-crd/) + +### Crossplane, a Universal Control Plane API for Cloud Computing. Crossplane Workloads Definitions +- [crossplane.io 🌟](https://crossplane.io/) Crossplane is an open source Kubernetes add-on that supercharges your Kubernetes clusters enabling you to provision and manage infrastructure, services, and applications from kubectl. +- [Crossplane, a Universal Control Plane API for Cloud Computing](https://www.infoq.com/news/2019/01/upbound-crossplane/) +- [Crossplane as an OpenShift Operator to manage and provision cloud-native services](https://blog.crossplane.io/crossplane-openshift-operator-cloud-native-services/) + ## Kubernetes Community ### Community Forums - [Community Forums 🌟🌟](https://discuss.kubernetes.io/) @@ -444,7 +456,6 @@ kubectl get secret --namespace=β€Š-o yaml | sed β€˜s/names * [**Tubectl**: a kubectl alternative which adds a bit of magic to your everyday kubectl routines by reducing the complexity of working with contexts, namespaces and intelligent matching resources.](https://github.com/reconquest/tubekit) * [**Kpt**: Packaging up your Kubernetes configuration with git and YAML since 2014 **(Google)**](https://opensource.googleblog.com/2020/03/kpt-packaging-up-your-kubernetes.html) * [kpt](https://googlecontainertools.github.io/kpt/) -* [**Krew** 🌟](https://krew.sigs.k8s.io/) is the plugin manager for kubectl command-line tool. * [kubernetes-common-services](https://github.com/ManagedKube/kubernetes-common-services) These services help make it easier to manage your applications environment in Kubernetes * [**k8s-job-notify**](https://github.com/sukeesh/k8s-job-notify) Kubernetes Job/CronJob Notifier. This tool sends an alert to slack whenever there is a Kubernetes cronJob/Job failure/success. * [**kube-opex-analytics** 🌟](https://github.com/rchakode/kube-opex-analytics) Kubernetes Cost Allocation and Capacity Planning Analytics Tool. Built-in hourly, daily, monthly reports - Prometheus exporter - Grafana dashboard. @@ -485,6 +496,7 @@ kubectl get secret --namespace=β€Š-o yaml | sed β€˜s/names - [inspektor-gadget](https://github.com/kinvolk/inspektor-gadget) Collection of gadgets for debugging and introspecting Kubernetes applications using BPF - [kinvolk.io](https://kinvolk.io) - [learnk8s.io: A visual guide on troubleshooting Kubernetes deployments 🌟](https://learnk8s.io/troubleshooting-deployments) +- [StatusBay 🌟](https://github.com/similarweb/statusbay) is a tool that provides the missing visibility into the K8S deployment process. The main goal is to ease the experience of troubleshooting and debugging services in K8S and provide confidence while making changes.
[![learnk8s debug your pods](images/learnk8s_debug_your_pods.png){: style="width:30%"}](https://learnk8s.io/troubleshooting-deployments) @@ -733,6 +745,8 @@ Kubernetes supports several authentication methods out-of-the-box, such as X.509 * [Security Group Rules EKS](https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html) * [EC2 ENI and IP Limit](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#AvailableIpPerENI) * [Calico in EKS](https://docs.aws.amazon.com/eks/latest/userguide/calico.html ) +* [Amazon EKS Best Practices Guide for Security 🌟](https://aws.github.io/aws-eks-best-practices/) + * [EKS Best Practices Guide for Security 🌟](https://aws.github.io/aws-eks-best-practices/iam/) ## Kubernetes Scheduling and Scheduling Profiles * [Kubernetes Scheduling](https://kubernetes.io/docs/reference/scheduling/) diff --git a/docs/message-queue.md b/docs/message-queue.md index f8d642ef..255d23a5 100644 --- a/docs/message-queue.md +++ b/docs/message-queue.md @@ -1,4 +1,4 @@ -# Cloud Based Integration & Messaging. Data Processing & Streaming (aka Data Pipeline) +# Cloud Based Integration & Messaging. Data Processing & Streaming (aka Data Pipeline). Open Data Hub - [Message Queue in Kubernetes. Event-driven Messaging. Real-Time Data Streaming](#message-queue-in-kubernetes-event-driven-messaging-real-time-data-streaming) - [Message Brokers](#message-brokers) - [ActiveMQ message broker](#activemq-message-broker) @@ -24,6 +24,7 @@ - [Red Hat AMQ (ActiveMQ Artemis broker and Apache Kafka)](#red-hat-amq-activemq-artemis-broker-and-apache-kafka) - [Red Hat AMQ Broker (ActiveMQ Artemis)](#red-hat-amq-broker-activemq-artemis) - [Red Hat AMQ Streams](#red-hat-amq-streams) +- [Open Data Hub AI-as-a-Service (AIaaS) platform](#open-data-hub-ai-as-a-service-aiaas-platform) - [eBooks](#ebooks) - [Related](#related) - [Questions and Answers](#questions-and-answers) @@ -59,6 +60,7 @@ #### Apache Camel K - [Apache Camel K](https://camel.apache.org/camel-k/latest/) is a lightweight cloud-integration platform that runs natively on Kubernetes. Based on the famous Apache Camel, Camel K is designed and optimized for serverless and microservices architectures. - [developers.redhat.com: Six reasons to love Camel K](https://developers.redhat.com/blog/2020/05/12/six-reasons-to-love-camel-k/) +- [developers.redhat.com: Extending Kafka connectivity with Apache Camel Kafka connectors](https://developers.redhat.com/blog/2020/05/19/extending-kafka-connectivity-with-apache-camel-kafka-connectors/) ### KubeMQ message broker - [KubeMQ.io: Kubernetes Native Message Queue Broker](https://kubemq.io/) @@ -167,6 +169,11 @@ Red Hat AMQ 7|JBoss AMQ 7 (Broker) or Red Hat AMQ 7 Suite|Apache ActiveMQ Artemi
+## Open Data Hub AI-as-a-Service (AIaaS) platform +- [Open Data Hub](https://opendatahub.io/) +- [Open Data Hub 0.6 brings component updates and Kubeflow architecture](https://developers.redhat.com/blog/2020/05/07/open-data-hub-0-6-brings-component-updates-and-kubeflow-architecture/) +- [A development roadmap for Open Data Hub](https://developers.redhat.com/blog/2020/06/22/a-development-roadmap-for-open-data-hub/) + ## eBooks - [O'Really: Streaming data](http://streamingsystems.net/) diff --git a/docs/nosql.md b/docs/nosql.md index f60a850f..d446dc77 100644 --- a/docs/nosql.md +++ b/docs/nosql.md @@ -1,2 +1,65 @@ -# NoSQL Databases -- [NoSQL Databases: a Survey and Decision Guidance](https://medium.baqend.com/nosql-databases-a-survey-and-decision-guidance-ea7823a822d) \ No newline at end of file +# NoSQL Databases and NewSQL +- [NoSQL](#nosql) + - [MongoDB Tools and MongoDB as a Service](#mongodb-tools-and-mongodb-as-a-service) + - [Redis](#redis) + - [Alternatives](#alternatives) + - [Apache Drill. Schema free SQL query on everything engines](#apache-drill-schema-free-sql-query-on-everything-engines) +- [NewSQL](#newsql) + +## NoSQL +- [NoSQL - Wikipedia](https://en.wikipedia.org/wiki/NoSQL) +- [Youtube: Introduction to NoSQL by Martin Fowler](https://www.youtube.com/watch?v=qI_g07C_Q5I) +- [NoSQL vs. SQL: Choosing a Data Management Solution](http://www.javacodegeeks.com/2015/10/nosql-vs-sql.html) +- [NoSQL Guide, by Martin Fowler](http://martinfowler.com/nosql.html) +- [thoughtworks.com: NoSQL Databases, an overview](https://www.thoughtworks.com/insights/blog/nosql-databases-overview) +- [Diferencias entre SQL y NoSQL ΒΏSabes cuΓ‘l usar?](http://www.facilcloud.com/noticias/?p=1294&lang=es_ES) +- [zdnet.com: SQL, NoSQL? What's the difference these days?](http://www.zdnet.com/article/sql-nosql-whats-the-difference-these-days/) +- [NoSQL Databases: 4 Game-Changing Use Cases](http://www.smartdatacollective.com/kingmesal/373466/nosql-databases-4-game-changing-use-cases) +- [blog.couchbase.com podcast: NoSQL in the Perspective of Industry Leaders](http://blog.couchbase.com/2016/january/nosql-in-the-perspective-of-industry-leaders) +- [Query JSON Using SQL With Couchbase Query Workbench](https://dzone.com/articles/query-json-using-sql-with-couchbase-query-workbenc) Would you like to query a JSON document database using SQL-like syntax? Couchbase has N1QL for you. +- [DZone: A Primer on Open-Source NoSQL Databases](https://dzone.com/articles/a-primer-on-open-source-nosql-databases) A beginner's guide to the different flavors of NoSQL databases, including key-value, document-oriented, graph, and column-oriented databases. +- [How to Evolve from RDBMS to NoSQL + SQL 🌟](https://www.linkedin.com/pulse/how-evolve-from-rdbms-nosql-sql-jim-scott) +- [DZone: SQL vs. NoSQL 🌟](https://dzone.com/articles/sql-vs-nosql) Take a look at the most recent developments between SQL and NoSQL databases. And remember, make your DB decision based on the project, not on the hype. +- [NoSQL Databases: a Survey and Decision Guidance](https://medium.baqend.com/nosql-databases-a-survey-and-decision-guidance-ea7823a822d) + +### MongoDB Tools and MongoDB as a Service +- [MongoDB Tools - Admin GUIs, Monitoring and Other Good Stuff](http://mongodb-tools.com/) +- [blog.mongodirector.com: Which is the best MongoDB GUI?](http://blog.mongodirector.com/which-is-the-best-mongodb-gui/) +- [MongoLab: Fully managed MongoDB-as-a-Service](https://mongolab.com/) +- [Orchestrate: DBaaS|NoSQL with One REST API](https://orchestrate.io/) +- [mongodirector: MongoDB Hosting](http://mongodirector.com) +- [MongoDB security tutorial](https://docs.mongodb.org/manual/administration/security) +- [MongoDB Security Part 1 - Design and Configuration](http://blog.mongodb.org/post/86408399868/mongodb-security-part-1-design-and-configuration) +- [MongoDB Security Part II: 10 mistakes that can compromise your database](http://blog.mongodb.org/post/87691901392/mongodb-security-part-ii-10-mistakes-that-can) +- [Avoiding pitfalls running Mongo 3.2 in Docker on OSX](https://iainhunter.wordpress.com/2016/01/12/avoiding-pitfalls-running-mongo-3-2-in-docker-on-osx/) +- [MongoDB Tutorial – A Scalable NoSQL DB](http://www.javacodegeeks.com/2015/09/mongodb-a-scalable-nosql-db.html) +- [MongoDB Cloud Manager](https://youtu.be/bB57HKeOvmw) +- [3T MongoChef – Your New MongoDB GUI](http://3t.io/) + - [Connecting to your MongoDB at MongoLab](http://3t.io/blog/how-to-connect-to-mongolab/) +- [MongoDB Administration Checklist for MySQL DBAs 🌟](https://dzone.com/articles/mongodb-administration-checklist-for-mysql-dbas) If you are MySQL DBA, starting MongoDB administration is not always an easy transition. This post provides a checklist for MongoDB administrators who are familiar with MySQL. +- [DZone: Maximizing MongoDB on AWS](https://dzone.com/articles/maximizing-mongodb-on-aws) This lengthy post will tell you everything you need to know about getting MongoDB Atlas working as best as it can on Amazon Web Services. +- [MongoDB and Kubernetes 🌟](https://www.mongodb.com/kubernetes) + +### Redis +- [Redis](http://redis.io/) +- [Start to Finish with Databases on Kubernetes 🌟](https://redislabs.com/blog/start-to-finish-with-databases-on-kubernetes/) + +### Alternatives +- [Couchdb.apache.org](http://couchdb.apache.org) +- [Cassandra.apache.org](http://cassandra.apache.org/) +- [HBase.apache.org](http://hbase.apache.org/) +- [Hive.apache.org](https://hive.apache.org/) +- [rethinkdb.com](http://rethinkdb.com) + +### Apache Drill. Schema free SQL query on everything engines +- [Apache Drill](https://drill.apache.org/) +- [dzone: SQL Syntax for Apache Drill](https://dzone.com/refcardz/sql-syntax-for-apache-drill) + +## NewSQL +- [NuoDB, elastically scalable database. A revolution compared to traditional monolithic 1-box databases. NuoDB is ACID,SQL, distributed/scalable and support flexible schemas](http://www.nuodb.com/) +- [Traditional database replication drawbacks](http://www.nuodb.com/blog/replication-is-it-easy) + +--- +
+ +
\ No newline at end of file diff --git a/docs/ocp4.md b/docs/ocp4.md index 265c1c5d..d5289da0 100644 --- a/docs/ocp4.md +++ b/docs/ocp4.md @@ -51,6 +51,7 @@ - [OpenShift Cost Management](#openshift-cost-management) - [Operators in OCP 4](#operators-in-ocp-4) - [Quay Container Registry](#quay-container-registry) +- [Application Migration Toolkit](#application-migration-toolkit) - [OpenShift Topology View](#openshift-topology-view) - [Slides](#slides) @@ -451,6 +452,7 @@ oc login ## OpenShift 4 Training * [github.com: Openshift 4 training](https://github.com/openshift/training) * [learn.openshift.com](https://learn.openshift.com/) + * [OpenShift 4.4](https://learn.openshift.com/playgrounds/openshift44) * [learn.crunchydata.com](https://learn.crunchydata.com/) ## OpenShift 4 Roadmap @@ -554,7 +556,7 @@ oc login * [blog.openshift.com: Helm and Operators on OpenShift, Part 2](https://blog.openshift.comhelm-and-operators-on-openshift-part-2/) ## Red Hat Marketplace -* [marketplace.redhat.com 🌟](https://marketplace.redhat.com/) +* [marketplace.redhat.com 🌟](https://marketplace.redhat.com/) A simpler way to buy and manage enterprise software, with automated deployment to any cloud. * [developers.redhat.com: Building Kubernetes applications on OpenShift with Red Hat Marketplace](https://developers.redhat.com/blog/2020/04/27/building-kubernetes-applications-on-openshift-with-red-hat-marketplace/) ## Kubestone. Benchmarking Operator for K8s and OpenShift @@ -583,6 +585,9 @@ oc login * [blog.openshift.com: Introducing Red Hat Quay](https://blog.openshift.com/introducing-red-hat-quay/) * [operatorhub.io/operator/quay](https://operatorhub.io/operator/quay) +## Application Migration Toolkit +- [Red Hat Application Migration Toolkit](https://developers.redhat.com/products/rhamt/overview) is an assembly of open source tools that enables large-scale application migrations and modernizations. The tooling consists of multiple individual components that provide support for each phase of a migration process. + ## OpenShift Topology View - [OpenShift topology view: A milestone towards a better developer experience](https://www.redhat.com/en/blog/openshift-topology-view-milestone-towards-better-developer-experience) diff --git a/docs/openshift.md b/docs/openshift.md index 05d02536..8326c3c9 100644 --- a/docs/openshift.md +++ b/docs/openshift.md @@ -113,6 +113,7 @@ Industry momentum has aligned behind Kubernetes as the orchestration platform fo * [schabell.org: Cloud-native development - On local containers 🌟](https://www.schabell.org/2020/06/cloud-native-development-on-local-containers.html) * etc * [Dzone: Cloud-Native Development - Common Architectural Elements 🌟](https://dzone.com/articles/cloud-native-development-common-architectural-elem) +* [Dzone: Cloud-native development - An advanced deployment blueprint 🌟](https://dzone.com/articles/cloud-native-development-an-advanced-deployment-bl) * [Portfolio Architecture WorkShops 🌟](https://redhatdemocentral.gitlab.io/portfolio-architecture-workshops/#/) Workshops for creating impactful architectural diagrams. This workshop will teach you how to use, design, and create architectural diagrams based on the **draw.io** tooling and Red Hat Portfolio Architecture design elelements. You'll leverage existing portfolio architecture diagrams as starting points. * [Portfolio Architecture Tooling](https://redhatdemocentral.gitlab.io/portfolio-architecture-tooling/) * [gitlab.com: Portfolio Architecture Examples](https://gitlab.com/redhatdemocentral/portfolio-architecture-examples) diff --git a/docs/project-management-tools.md b/docs/project-management-tools.md index a1e79340..b296da58 100644 --- a/docs/project-management-tools.md +++ b/docs/project-management-tools.md @@ -3,4 +3,7 @@ - [OpenProject](https://www.openproject.org/) - [Servicenow](https://www.servicenow.com/) - [BMC Remedy ITSM](https://www.bmcsoftware.es/it-solutions/remedy-itsm.html) -- [Atlassian Confluence](https://www.atlassian.com/software/confluence) \ No newline at end of file +- [Atlassian Confluence](https://www.atlassian.com/software/confluence) + +## Alternatives +- [32 Best Jira Alternatives For Agile Project Management Teams In 2020 [Free and Paid]](https://dzone.com/articles/32-best-jira-alternatives-for-agile-project-manage) \ No newline at end of file diff --git a/docs/securityascode.md b/docs/securityascode.md index 61d3e553..f6c43b80 100644 --- a/docs/securityascode.md +++ b/docs/securityascode.md @@ -1,5 +1,6 @@ # Security Policy as Code and Open Policy Agent (OPA) - [Security Policy as Code](#security-policy-as-code) +- [Open Policy Agent in Kubernetes](#open-policy-agent-in-kubernetes) - [Open Policy Agent in OpenShift](#open-policy-agent-in-openshift) - [Open Policy Agent in Cloudflare Workers](#open-policy-agent-in-cloudflare-workers) - [Policy as Code in Terraform Cloud](#policy-as-code-in-terraform-cloud) @@ -10,6 +11,9 @@ - [searchitoperations.techtarget.com: Kubernetes policy project takes enterprise IT by storm](https://searchitoperations.techtarget.com/news/252467102/Kubernetes-policy-project-takes-enterprise-IT-by-storm) A Kubernetes-friendly compliance as code project hosted by the CNCF has caught on among large enterprises in the first half of 2019, largely through word of mouth. - [magalix.com: Integrating Open Policy Agent (OPA) With Kubernetes 🌟](https://www.magalix.com/blog/integrating-open-policy-agent-opa-with-kubernetes-a-deep-dive-tutorial) +## Open Policy Agent in Kubernetes +- [infracloud.io: Kubernetes Pod Security Policies with Open Policy Agent](https://www.infracloud.io/kubernetes-pod-security-policies-opa/) + ## Open Policy Agent in OpenShift - [blog.openshift.com: Fine-Grained Policy Enforcement in OpenShift with Open Policy Agent 🌟](https://blog.openshift.com/fine-grained-policy-enforcement-in-openshift-with-open-policy-agent/) diff --git a/docs/sre.md b/docs/sre.md index 099fac57..c0bfb434 100644 --- a/docs/sre.md +++ b/docs/sre.md @@ -11,6 +11,7 @@ - [linkedin: DevOps vs Site Reliability Engineering](https://www.linkedin.com/pulse/devops-vs-site-reliability-engineering-sean-washington/) - [Google: What is Site Reliability Engineering (SRE)?](https://landing.google.com/sre/) SRE is what you get when you treat operations as if it’s a software problem. Our mission is to protect, provide for, and progress the software and systems behind all of Google’s public services β€” Google Search, Ads, Gmail, Android, YouTube, and App Engine, to name just a few β€” with an ever-watchful eye on their availability, latency, performance, and capacity. - [opensource.com: What is an SRE and how does it relate to DevOps?](https://opensource.com/article/18/10/sre-startup) The SRE role is common in large enterprises, but smaller businesses need it, too. +- [thenewstack.io: Where Site Reliability Engineering Overlaps with DevOps](https://thenewstack.io/where-the-site-reliability-engineer-role-overlaps-with-devops/)
[![cn do sre](images/CN-DO-SRE.png)](https://devops.com/sre-devops-cloud-native-server-cage-match/) diff --git a/docs/testops.md b/docs/testops.md index b6278d7c..de2de75d 100644 --- a/docs/testops.md +++ b/docs/testops.md @@ -15,6 +15,7 @@ ## Test Driven Development (TDD) - [guru99.com: What is Test Driven Development (TDD)? Tutorial with Example](https://www.guru99.com/test-driven-development.html) +- [functionize.com: Testers vs TDD](https://www.functionize.com/blog/testers-vs-tdd/) Test-driven development was supposed to eliminate the need for independent testing. Alas, it doesn’t go far enough.
[![testops and devops](images/TestOps-What-Does-This-Mean.jpg)](https://www.opcito.com/blogs/testops-how-to-automate-your-software-pipeline-at-the-speed-of-devops) diff --git a/docs/visual-studio.md b/docs/visual-studio.md index ac5165a3..785fa123 100644 --- a/docs/visual-studio.md +++ b/docs/visual-studio.md @@ -1,9 +1,11 @@ # Visual Studio Code - [VSCode](#vscode) + - [Updates](#updates) - [Visual Studio MarketPlace and Extensions](#visual-studio-marketplace-and-extensions) - [Publishers](#publishers) - [Extensions](#extensions) - [More Extensions](#more-extensions) + - [More Extensions (Blogs)](#more-extensions-blogs) - [Themes](#themes) - [DevOps Extensions](#devops-extensions) - [Azure DevOps Extensions](#azure-devops-extensions) @@ -24,6 +26,10 @@ * [With the Edge (Chromium) Tools for VS Code you can see the browser's Inspector and Dev Tools within VSCode, to debug your front-end code](https://gist.github.com/hxlnt/60d0e62efdb973e221e585e2b990bfd6) * [docker.com: How to Develop Inside a Container Using Visual Studio Code Remote Containers 🌟](https://www.docker.com/blog/how-to-develop-inside-a-container-using-visual-studio-code-remote-containers/) +### Updates +* [VSCode Updates](https://code.visualstudio.com/updates) +* [Flexible layout 🌟](https://code.visualstudio.com/updates/v1_46#_flexible-layout) + ## Visual Studio MarketPlace and Extensions * [marketplace.visualstudio.com](https://marketplace.visualstudio.com/) @@ -72,6 +78,9 @@ A simple extension to make indentation more readable * [GitHub Pull Requests and Issues](https://marketplace.visualstudio.com/items?itemName=GitHub.vscode-pull-request-github) * [React Pure To Class](https://marketplace.visualstudio.com/items?itemName=angryobject.react-pure-to-class-vscode) Convert pure react components to class components +#### More Extensions (Blogs) +* [Become a VS Code Ninja with these Extensions and Tools [2020]](https://dev.to/vikrantnegi/become-a-vs-code-ninja-with-these-extensions-and-tools-2020-1119) + #### Themes * [Material Icon Theme](https://marketplace.visualstudio.com/items?itemName=PKief.material-icon-theme) Material Design Icons for Visual Studio Code * [Lucy Theme](https://marketplace.visualstudio.com/items?itemName=juliettepretot.lucy-vscode) Soft but clear syntax theme diff --git a/docs/workfromhome.md b/docs/workfromhome.md index f039441e..97407173 100644 --- a/docs/workfromhome.md +++ b/docs/workfromhome.md @@ -15,5 +15,14 @@ - [Microsoft Teams](https://www.microsoft.com/microsoft-365/microsoft-teams/group-chat-software) - [atlassian.com/remote](https://www.atlassian.com/remote) Free collaboration tools to kickstart remote teamwork +## More Tools +- [Miro](https://miro.com/) Online Collaborative Whiteboard Platform + - [Summarising Top 10 API Testing Tools](https://miro.com/app/board/o9J_kqwfjqs=/) + ## Tips * [opensource.com: 10 tips for maintaining a DevOps mindset for distributed teams](https://opensource.com/article/20/6/devops-mindset) You can do DevOps while working from home; it's all about the right approach. + +--- +
+[![top 10 api testing tools](images/summarising_top_10_api_testing_tools.png){: style="width:50%"}](https://blog.testproject.io/2020/06/25/top-10-api-testing-tools-to-watch-in-2020/) +
\ No newline at end of file