-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Deployed 38f2d9c with MkDocs version: 1.6.1
- Loading branch information
Unknown
committed
Sep 19, 2024
0 parents
commit 9cab6b6
Showing
70 changed files
with
11,133 additions
and
0 deletions.
There are no files selected for viewing
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,142 @@ | ||
<!DOCTYPE html> | ||
<html class="writer-html5" lang="en" > | ||
<head> | ||
<meta charset="utf-8" /> | ||
<meta http-equiv="X-UA-Compatible" content="IE=edge" /> | ||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="author" content="Microsoft Azure Energy" /> | ||
<link rel="shortcut icon" href="/img/favicon.ico" /> | ||
<title>OSDU Developer</title> | ||
<link rel="stylesheet" href="/css/theme.css" /> | ||
<link rel="stylesheet" href="/css/theme_extra.css" /> | ||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/styles/github.min.css" /> | ||
<link href="/css/override.css" rel="stylesheet" /> | ||
|
||
<!--[if lt IE 9]> | ||
<script src="/js/html5shiv.min.js"></script> | ||
<![endif]--> | ||
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/highlight.min.js"></script> | ||
<script>hljs.highlightAll();</script> | ||
</head> | ||
|
||
<body class="wy-body-for-nav" role="document"> | ||
|
||
<div class="wy-grid-for-nav"> | ||
<nav data-toggle="wy-nav-shift" class="wy-nav-side stickynav"> | ||
<div class="wy-side-scroll"> | ||
<div class="wy-side-nav-search"> | ||
<a href="/." class="icon icon-home"> OSDU Developer | ||
</a><div role="search"> | ||
<form id ="rtd-search-form" class="wy-form" action="//search.html" method="get"> | ||
<input type="text" name="q" placeholder="Search docs" aria-label="Search docs" title="Type search term here" /> | ||
</form> | ||
</div> | ||
</div> | ||
|
||
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu"> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="/.">OSDU Developer</a> | ||
</li> | ||
</ul> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="/before_you_start/">Before you start</a> | ||
</li> | ||
</ul> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="/architecture/">Architecture</a> | ||
</li> | ||
</ul> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="/software/">Software Management</a> | ||
</li> | ||
</ul> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="/feature_flags/">Feature Flags</a> | ||
</li> | ||
</ul> | ||
<p class="caption"><span class="caption-text">Tutorials</span></p> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="/tutorial_cli/">Deploy using AZD</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="/tutorial_click/">Deploy using One Click</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="/tutorial_rest/">Test using REST scripts</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="/tutorial_vnet/">Using a Custom Network</a> | ||
</li> | ||
</ul> | ||
<p class="caption"><span class="caption-text">OSDU Services</span></p> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="/osdu_source/">Gitlab Source</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="/osdu_core/">Core Services</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="/osdu_reference/">Reference Services</a> | ||
</li> | ||
</ul> | ||
</div> | ||
</div> | ||
</nav> | ||
|
||
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"> | ||
<nav class="wy-nav-top" role="navigation" aria-label="Mobile navigation menu"> | ||
<i data-toggle="wy-nav-top" class="fa fa-bars"></i> | ||
<a href="/.">OSDU Developer</a> | ||
|
||
</nav> | ||
<div class="wy-nav-content"> | ||
<div class="rst-content"><div role="navigation" aria-label="breadcrumbs navigation"> | ||
<ul class="wy-breadcrumbs"> | ||
<li><a href="/." class="icon icon-home" aria-label="Docs"></a></li> | ||
<li class="wy-breadcrumbs-aside"> | ||
</li> | ||
</ul> | ||
<hr/> | ||
</div> | ||
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> | ||
<div class="section" itemprop="articleBody"> | ||
|
||
|
||
<h1 id="404-page-not-found">404</h1> | ||
|
||
<p><strong>Page not found</strong></p> | ||
|
||
|
||
</div> | ||
</div><footer> | ||
|
||
<hr/> | ||
|
||
<div role="contentinfo"> | ||
<!-- Copyright etc --> | ||
</div> | ||
|
||
Built with <a href="https://www.mkdocs.org/">MkDocs</a> using a <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>. | ||
</footer> | ||
|
||
</div> | ||
</div> | ||
|
||
</section> | ||
|
||
</div> | ||
|
||
<div class="rst-versions" role="note" aria-label="Versions"> | ||
<span class="rst-current-version" data-toggle="rst-current-version"> | ||
|
||
|
||
|
||
</span> | ||
</div> | ||
<script src="/js/jquery-3.6.0.min.js"></script> | ||
<script>var base_url = "/";</script> | ||
<script src="/js/theme_extra.js"></script> | ||
<script src="/js/theme.js"></script> | ||
<script src="/search/main.js"></script> | ||
<script> | ||
jQuery(function () { | ||
SphinxRtdTheme.Navigation.enable(true); | ||
}); | ||
</script> | ||
|
||
</body> | ||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,241 @@ | ||
<!DOCTYPE html> | ||
|
||
<html class="writer-html5" lang="en"> | ||
<head> | ||
<meta charset="utf-8"/> | ||
<meta content="IE=edge" http-equiv="X-UA-Compatible"/> | ||
<meta content="width=device-width, initial-scale=1.0" name="viewport"/><meta content="Microsoft Azure Energy" name="author"/> | ||
<link href="../img/favicon.ico" rel="shortcut icon"/> | ||
<title>Architecture - OSDU Developer</title> | ||
<link href="../css/theme.css" rel="stylesheet"/> | ||
<link href="../css/theme_extra.css" rel="stylesheet"/> | ||
<link href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/styles/github.min.css" rel="stylesheet"/> | ||
<link href="../css/override.css" rel="stylesheet"/> | ||
<script> | ||
// Current page data | ||
var mkdocs_page_name = "Architecture"; | ||
var mkdocs_page_input_path = "architecture.md"; | ||
var mkdocs_page_url = null; | ||
</script> | ||
<!--[if lt IE 9]> | ||
<script src="../js/html5shiv.min.js"></script> | ||
<![endif]--> | ||
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/highlight.min.js"></script> | ||
<script>hljs.highlightAll();</script> | ||
</head> | ||
<body class="wy-body-for-nav" role="document"> | ||
<div class="wy-grid-for-nav"> | ||
<nav class="wy-nav-side stickynav" data-toggle="wy-nav-shift"> | ||
<div class="wy-side-scroll"> | ||
<div class="wy-side-nav-search"> | ||
<a class="icon icon-home" href=".."> OSDU Developer | ||
</a><div role="search"> | ||
<form action="../search.html" class="wy-form" id="rtd-search-form" method="get"> | ||
<input aria-label="Search docs" name="q" placeholder="Search docs" title="Type search term here" type="text"/> | ||
</form> | ||
</div> | ||
</div> | ||
<div aria-label="Navigation menu" class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation"> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="..">OSDU Developer</a> | ||
</li> | ||
</ul> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="../before_you_start/">Before you start</a> | ||
</li> | ||
</ul> | ||
<ul class="current"> | ||
<li class="toctree-l1 current"><a class="reference internal current" href="#">Architecture</a> | ||
<ul class="current"> | ||
<li class="toctree-l2"><a class="reference internal" href="#desired-state-configuration">Desired State Configuration</a> | ||
</li> | ||
<li class="toctree-l2"><a class="reference internal" href="#desired-state-management">Desired State Management</a> | ||
</li> | ||
<li class="toctree-l2"><a class="reference internal" href="#command-sequence">Command Sequence</a> | ||
</li> | ||
<li class="toctree-l2"><a class="reference internal" href="#infrastructure">Infrastructure</a> | ||
<ul> | ||
<li class="toctree-l3"><a class="reference internal" href="#components">Components</a> | ||
</li> | ||
</ul> | ||
</li> | ||
<li class="toctree-l2"><a class="reference internal" href="#software">Software</a> | ||
<ul> | ||
<li class="toctree-l3"><a class="reference internal" href="#gitops-configuration">GitOps Configuration</a> | ||
</li> | ||
<li class="toctree-l3"><a class="reference internal" href="#gitops-advantages">GitOps Advantages</a> | ||
</li> | ||
</ul> | ||
</li> | ||
</ul> | ||
</li> | ||
</ul> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="../software/">Software Management</a> | ||
</li> | ||
</ul> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="../feature_flags/">Feature Flags</a> | ||
</li> | ||
</ul> | ||
<p class="caption"><span class="caption-text">Tutorials</span></p> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="../tutorial_cli/">Deploy using AZD</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="../tutorial_click/">Deploy using One Click</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="../tutorial_rest/">Test using REST scripts</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="../tutorial_vnet/">Using a Custom Network</a> | ||
</li> | ||
</ul> | ||
<p class="caption"><span class="caption-text">OSDU Services</span></p> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="../osdu_source/">Gitlab Source</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="../osdu_core/">Core Services</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="../osdu_reference/">Reference Services</a> | ||
</li> | ||
</ul> | ||
</div> | ||
</div> | ||
</nav> | ||
<section class="wy-nav-content-wrap" data-toggle="wy-nav-shift"> | ||
<nav aria-label="Mobile navigation menu" class="wy-nav-top" role="navigation"> | ||
<i class="fa fa-bars" data-toggle="wy-nav-top"></i> | ||
<a href="..">OSDU Developer</a> | ||
</nav> | ||
<div class="wy-nav-content"> | ||
<div class="rst-content"><div aria-label="breadcrumbs navigation" role="navigation"> | ||
<ul class="wy-breadcrumbs"> | ||
<li><a aria-label="Docs" class="icon icon-home" href=".."></a></li> | ||
<li class="breadcrumb-item active">Architecture</li> | ||
<li class="wy-breadcrumbs-aside"> | ||
</li> | ||
</ul> | ||
<hr/> | ||
</div> | ||
<div class="document" itemscope="itemscope" itemtype="http://schema.org/Article" role="main"> | ||
<div class="section" itemprop="articleBody"> | ||
<h1 id="architecture">Architecture</h1> | ||
<div class="admonition hint"> | ||
<p class="admonition-title">Hint</p> | ||
<p>OSDU Developer is built using the following principles from the Azure Well-Architeced Framework. | ||
For a deeper understanding, we recommend reading our article on Micosoft Learn | ||
<a href="https://learn.microsoft.com/en-us/azure/well-architected/">Azure Well-Architected Framework</a>. | ||
This provides valuable insights into best practices and design | ||
considerations of azure workloads.</p> | ||
</div> | ||
<h4 id="desired-state-configuration">Desired State Configuration</h4> | ||
<p>Bicep is a domain-specific language (DSL) for deploying Azure resources declaratively. It simplifies authoring ARM templates and allows you to define the desired state of your Infrastructure as Code (IaC). Azure Resource Manager (ARM) processes the Bicep file to ensure the Azure environment matches the defined desired state, correcting any drift through redeployment.</p> | ||
<div class="admonition note"> | ||
<p class="admonition-title">Note</p> | ||
<p>Microsoft recommends when developing with Bicep to use official <a href="https://azure.github.io/Azure-Verified-Modules/">Azure Verified Modules</a>.</p> | ||
</div> | ||
<h4 id="desired-state-management">Desired State Management</h4> | ||
<p><a href="https://opengitops.dev">GitOps</a> uses Git as a single source of truth for declarative components and applications. It ensures that the actual state of the components or application matches the desired state defined in the Git repository, automating updates through continuous monitoring and Git commits.</p> | ||
<h2 id="command-sequence">Command Sequence</h2> | ||
<p>This sequence diagram illustrates the interactions within the Azure CLI developer command structures.</p> | ||
<!--- https://diagrams.helpful.dev/ ---> | ||
<div class="mermaid">sequenceDiagram | ||
participant Azd as user | ||
participant Provision as command | ||
participant Azure as azure | ||
|
||
|
||
rect rgb(191, 223, 255) | ||
alt | ||
Note over Provision: featureCheck | ||
Note over Provision: credCheck | ||
end | ||
Azd->>+Provision: azd provision | ||
Provision->>Azure: arm deploy | ||
Provision-->>-Azd: complete | ||
alt | ||
Note over Provision: softwareCheck | ||
Note over Provision: entraAuth | ||
end | ||
end | ||
|
||
rect rgb(144,238,144) | ||
alt | ||
Note over Provision: firstUser | ||
Note over Provision: refreshToken | ||
end | ||
Azd->>Provision: azd deploy | ||
activate Provision | ||
Provision-->>Azd: complete | ||
deactivate Provision | ||
alt | ||
Note over Provision: settingsJson | ||
end | ||
end | ||
</div> | ||
<h2 id="infrastructure">Infrastructure</h2> | ||
<p>This diagram provides a visual representation of the infrastructure as deployed. It is intended to help illustrate the various components and interactions within Azure.</p> | ||
<p><img alt="[0]" src="../images/architecture.png" title="Architecture Diagram"/></p> | ||
<h3 id="components">Components</h3> | ||
<ol> | ||
<li>Azure Virtual Network - Illustrate the default network design.</li> | ||
<li>Kubernetes Node Pools - Illustrate the design for the cluster nodepools.</li> | ||
<li>Storage Resources - Illustrate how Storage Accounts and Cosmos Databases connect to the network.</li> | ||
<li>Ingress Load Balancers - Illustrate how the Load Balancers created by Istio Gateways are available in the network.</li> | ||
</ol> | ||
<h2 id="software">Software</h2> | ||
<p>In this workspace, we utilize a GitOps approach for efficient and reliable software management. This method leverages a Git repository as the source of truth for defining and updating the software configurations and deployments within the infrastructure.</p> | ||
<h3 id="gitops-configuration">GitOps Configuration</h3> | ||
<p>A GitOps configuration resides in this Git repository and uses a customized <a href="https://fluxcd.io/flux/guides/repository-structure/#repo-per-team">repo-per-team</a> pattern. This repository includes:</p> | ||
<ul> | ||
<li> | ||
<p><strong>Configuration Files</strong>: YAML files defining the desired state of our components and applications.</p> | ||
</li> | ||
<li> | ||
<p><strong>Charts</strong>: Helm charts used for defining, installing, and upgrading Kubernetes applications.</p> | ||
</li> | ||
</ul> | ||
<h3 id="gitops-advantages">GitOps Advantages</h3> | ||
<ul> | ||
<li><strong>Consistency and Standardization</strong>: Ensures consistent configurations across different environments.</li> | ||
<li><strong>Audit Trails</strong>: Every change is recorded in Git, providing a clear audit trail.</li> | ||
<li><strong>Rollbacks and Recovery</strong>: Every change is recorded in Git, providing a clear audit trail.</li> | ||
<li><strong>Enhanced Security</strong>: Changes are reviewed through pull requests, increasing security and collaboration.</li> | ||
</ul> | ||
<p>A GitOps approach simplifies the process of deploying and managing software, making it easier to maintain and update, as well as providing a configurable way of leveraging other software configurations by pointing to alternate repositories hosting other configurations. By leveraging this method, we ensure that our deployments can be extended to things that not only include the default software load.</p> | ||
<p><img alt="[1]" src="../images/architecture_2.png" title="Gitops Diagram"/></p> | ||
</div> | ||
</div><footer> | ||
<div aria-label="Footer Navigation" class="rst-footer-buttons" role="navigation"> | ||
<a class="btn btn-neutral float-left" href="../before_you_start/" title="Before you start"><span class="icon icon-circle-arrow-left"></span> Previous</a> | ||
<a class="btn btn-neutral float-right" href="../software/" title="Software Management">Next <span class="icon icon-circle-arrow-right"></span></a> | ||
</div> | ||
<hr/> | ||
<div role="contentinfo"> | ||
<!-- Copyright etc --> | ||
</div> | ||
|
||
Built with <a href="https://www.mkdocs.org/">MkDocs</a> using a <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>. | ||
</footer> | ||
</div> | ||
</div> | ||
</section> | ||
</div> | ||
<div aria-label="Versions" class="rst-versions" role="note"> | ||
<span class="rst-current-version" data-toggle="rst-current-version"> | ||
<span><a href="../before_you_start/" style="color: #fcfcfc">« Previous</a></span> | ||
<span><a href="../software/" style="color: #fcfcfc">Next »</a></span> | ||
</span> | ||
</div> | ||
<script src="../js/jquery-3.6.0.min.js"></script> | ||
<script>var base_url = "..";</script> | ||
<script src="../js/theme_extra.js"></script> | ||
<script src="../js/theme.js"></script> | ||
<script src="../search/main.js"></script> | ||
<script> | ||
jQuery(function () { | ||
SphinxRtdTheme.Navigation.enable(true); | ||
}); | ||
</script> | ||
<script type="module">import mermaid from "https://unpkg.com/[email protected]/dist/mermaid.esm.min.mjs"; | ||
mermaid.initialize({});</script></body> | ||
</html> |
Oops, something went wrong.