Microsoft Azure アイコン

Drawlib は、drawlib.icons.azure および AzureIcon Enum を通じて、250 個の高解像度(512×512)な Microsoft Azure アーキテクチャサービスアイコンを提供します。あわせて アイコン概要、Google Cloud (GCP) アイコン、Amazon Web Services (AWS) アイコン、クラウド・オリジナルクラウドアイコン も参照してください。

azure_1
8 つのアーキテクチャ領域にわたる主要な Microsoft Azure サービス(drawlib.icons.azure)
Source Code
from drawlib.canvas import save, setup
from drawlib.icons import azure
from drawlib.shapes import rectangle
from drawlib.styles import Styles
from drawlib.text import text

setup(width=136, height=66)

row1 = [
    ("Virtual Machine", "Compute", azure.virtual_machine, Styles.Neutral),
    ("Azure AKS", "Containers", azure.kubernetes_services, Styles.PrimaryNeutral),
    ("Function Apps", "Serverless", azure.function_apps, Styles.Neutral),
    ("Storage Account", "Storage", azure.storage_accounts, Styles.SecondaryNeutral),
]

row2 = [
    ("Azure Cosmos DB", "Databases", azure.cosmos_db, Styles.Neutral),
    ("Front Door & CDN", "Networking", azure.front_door_and_cdn_profiles, Styles.Neutral),
    ("Microsoft Entra ID", "Identity", azure.entra_id, Styles.SecondaryNeutral),
    ("Azure OpenAI", "AI / Foundry", azure.openai, Styles.PrimaryNeutral),
]

for row_idx, items in enumerate([row1, row2]):
    cy = 48.0 if row_idx == 0 else 18.0
    for col_idx, (title, cat, icon_fn, card_st) in enumerate(items):
        cx = 20.5 + col_idx * 31.6
        rectangle((cx, cy), width=29.2, height=26.0, style=card_st.patch(shape_r=2))
        icon_fn((cx, cy + 5.0), width=8.5, style=Styles.Primary)
        text((cx, cy - 3.2), title, style=Styles.DarkBold.patch(text_size=10.0))
        text((cx, cy - 8.5), cat, style=Styles.Muted.patch(text_size=9.5))

save()

1. API シグネチャと AzureIcon Enum の使い方

drawlib.icons.azure のすべての Azure アイコン関数は中心アンカー (cx, cy) の呼び出しシグネチャを共有しており、ArchitectureDiagram および SequenceDiagram では強く型付けされた AzureIcon Enum をそのまま指定できます。

from drawlib.diagrams.architecture import ArchitectureDiagram, AzureIcon, Node
from drawlib.icons import azure
from drawlib.styles import Styles

# 1. Direct canvas icon rendering at center (cx, cy) with 1:1 square aspect ratio
azure.kubernetes_services((40, 25), width=10.0, style=Styles.Primary, variant="default")

# 2. High-level ArchitectureDiagram node using AzureIcon Enum
d = ArchitectureDiagram()
aks_node = d.add(
    Node("AKS Cluster", width=25, height=18, icon=AzureIcon.KUBERNETES_SERVICES, icon_size=7.5),
    xy=(10.0, 10.0),
)
パラメータ / Style 属性 型 デフォルト 説明
xy tuple[float, float] 必須 アイコンの中心座標 (cx, cy)(halign="center"、valign="center")。
width float 必須 キャンバス単位での水平幅。高さは自動スケーリングされます(1:1)。
style Style 必須 alpha(0.0–1.0 の不透明度)、angle(回転)、image_tint_color、image_border_* を制御します。
variant Literal["default"] "default" ビジュアルバリアント("default" は公式 Microsoft Azure アーキテクチャパレット)。
AzureIcon.<NAME> AzureIcon — azure.<name> に対応する大文字の StrEnum メンバー(例: AzureIcon.COSMOS_DB -> azure.cosmos_db)。

2. 主要 Azure サービスショーケース(全 250 正規アイコン)

以下の 12 カード(2×6)カタログでは、Microsoft Azure の基盤となる Web、ネットワーキング、データ、AI Foundry、セキュリティの各サービスを紹介しています。

azure_2
Microsoft Azure の基盤インフラ・データ・AI・セキュリティを代表する 12 アイコン
Source Code
from drawlib.canvas import save, setup
from drawlib.icons import azure
from drawlib.shapes import rectangle
from drawlib.styles import Styles
from drawlib.text import text

setup(width=148, height=66)

row1 = [
    ("App Gateways", "Ingress / WAF", azure.application_gateways, Styles.Neutral),
    ("API Mgmt", "API Gateway", azure.api_management_services, Styles.Neutral),
    ("App Services", "Web PaaS", azure.app_services, Styles.PrimaryNeutral),
    ("SQL Database", "Relational DB", azure.sql_database, Styles.SecondaryNeutral),
    ("Cache Redis", "In-Memory", azure.cache_redis, Styles.Neutral),
    ("Event Hubs", "Streaming", azure.event_hubs, Styles.Neutral),
]

row2 = [
    ("Service Bus", "Messaging", azure.service_bus, Styles.Neutral),
    ("Synapse", "Analytics", azure.synapse_analytics, Styles.SecondaryNeutral),
    ("AI Foundry", "GenAI Platform", azure.ai_foundry, Styles.PrimaryNeutral),
    ("Key Vaults", "Secrets / KMS", azure.key_vaults, Styles.Neutral),
    ("Sentinel", "SIEM / SecOps", azure.sentinel, Styles.Neutral),
    ("Azure Monitor", "Observability", azure.monitor, Styles.Neutral),
]

for row_idx, items in enumerate([row1, row2]):
    cy = 48.0 if row_idx == 0 else 18.0
    for col_idx, (title, sub, icon_fn, card_st) in enumerate(items):
        cx = 15.0 + col_idx * 23.6
        rectangle((cx, cy), width=21.8, height=26.0, style=card_st.patch(shape_r=2))
        icon_fn((cx, cy + 5.0), width=8.0, style=Styles.Primary)
        text((cx, cy - 3.2), title, style=Styles.DarkBold.patch(text_size=10.0))
        text((cx, cy - 8.5), sub, style=Styles.Muted.patch(text_size=9.5))

save()

2.1. 全 250 種類の Azure アイコン カテゴリ別リファレンス一覧

drawlib.icons.azure の全 250 個の正規関数は厳密な 1 対 1 の命名規則に従っています(AzureIcon には対応する大文字メンバーが存在します)。

カテゴリ 個数 正規関数 drawlib.icons.azure.<name>(AzureIcon.<NAME>)
コンピューティング・ハイブリッド 27 arc, arc_kubernetes, arc_machines, auto_scale, availability_sets, batch_accounts, cloud_shell, compute_fleet, compute_galleries, disks, disks_snapshots, images, linux, local, managed_service_fabric, migrate, operator_5g_core, operator_nexus, red_hat_openshift, service_fabric_clusters, sphere, spring_apps, stack_hci_premium, virtual_desktop, virtual_machine, vm_scale_sets, vmware_solution
コンテナ・サーバーレス 13 aks_automatic, app_service_environments, app_services, application_gateway_containers, container_apps_environments, container_instances, container_registries, container_storage, function_apps, kubernetes_services, logic_apps, static_apps, worker_container_app
ストレージ・バックアップ 18 backup_center, backup_vault, data_box, data_shares, data_sharing, data_transfer, databox_gateway, edge_storage_accelerator, fileshares, managed_file_shares, netapp_files, recovery_services_vaults, storage_accounts, storage_azure_files, storage_container, storage_mover, storage_queue, storage_sync_services
データベース・キャッシュ 18 cache_redis, cosmos_db, database_mariadb_server, database_migration_services, database_mysql_server, database_postgresql_server, documentdb, managed_database, managed_redis, oracle_database, sql, sql_data_warehouses, sql_database, sql_edge, sql_elastic_pools, sql_managed_instance, sql_server, sql_vm
ネットワーキング・CDN 34 access_point, application_gateways, bastions, cdn_profiles, communications_gateway, ddos_custom_policy, ddos_protection_plans, dns_private_resolver, dns_zones, expressroute_circuits, firewall_manager, firewall_policy, firewalls, front_door_and_cdn_profiles, hybrid_connectivity_hub, ip_address_manager, load_balancers, nat, network_security_groups, network_watcher, on_premises_data_gateways, private_link, private_link_service, public_ip_addresses, relays, route_tables, subnet, traffic_manager_profiles, virtual_network_gateways, virtual_networks, virtual_router, virtual_wan_hub, virtual_wans, web_application_firewall_policies_waf
アイデンティティ・セキュリティ・ガバナンス 38 ad_b2c, app_registrations, application_security_groups, azureattestation, blueprints, compliance, conditional_access, defender_easm, defender_for_cloud, defender_for_iot, enterprise_applications, entra_connect, entra_connect_health, entra_connect_sync, entra_domain_services, entra_global_secure_access, entra_id, entra_id_protection, entra_internet_access, entra_managed_identities, entra_private_access, entra_privleged_identity_management, entra_verified_id, external_id, external_identities, identity_governance, information_protection, key_vaults, managed_identities, multi_factor_authentication, multi_tenancy, multifactor_authentication, policy, security, sentinel, token_service, users, verifiable_credentials
分析・データ・メッセージング 26 analysis_services, api_center, api_for_fhir, api_management_services, api_proxy, communication_services, data_catalog, data_explorer_clusters, data_factories, data_lake_analytics, databricks, event_grid_domains, event_grid_topics, event_hub_clusters, event_hubs, hd_insight_clusters, notification_hub_namespaces, notification_hubs, power_bi_embedded, power_platform, pubsub, sendgrid_accounts, service_bus, signalr, stream_analytics_jobs, synapse_analytics
AI・ML・コグニティブサービス 32 agentic_web_apps, ai_at_edge, ai_foundry, ai_foundry_iq, ai_gateway, ai_studio, anomaly_detector, applied_ai_services, batch_ai, bonsai, bot_services, cognitive_search, cognitive_services, computer_vision, content_moderators, content_safety, custom_vision, face_apis, form_recognizers, foundry_agent_service, foundry_models, genomics, immersive_readers, language, language_understanding, machine_learning, metrics_advisor, openai, personalizers, qna_makers, speech_services, translator_text
DevOps・監視・IoT・管理 44 activity_log, advisor, alerts, app_configuration, app_testing, application_insights, automation_accounts, blockchain_applications, blockchain_service, chaos_studio, cost_management_and_billing, deployment_environments, device_provisioning_services, devops, devops_starter, devtest_labs, diagnostics_settings, digital_twins, endpoint_analytics, industrial_iot, iot_central_applications, iot_edge, iot_hub, iot_operations, lab_services, landing_zone, lighthouse, load_testing, log_analytics_workspaces, managed_devops_pools, managed_grafana, maps_accounts, media_service, mesh_applications, metrics, monitor, monitor_pipeline, remote_rendering, resiliency, resource_graph_explorer, spatial_anchor_accounts, toolchain_orchestrator, workbooks, workload_orchestration

3. Azure クラウドアーキテクチャ構成例(ArchitectureDiagram と AzureIcon)

ArchitectureDiagram と AzureIcon を組み合わせることで、ノードカードの自動レイアウトと直交コネクタの自動ルーティングを備えた Azure Virtual Network(VNet)トポロジを構築できます。

from drawlib.canvas import save, setup
from drawlib.diagrams.architecture import ArchitectureDiagram, AzureIcon, Node, NodeGroup
from drawlib.styles import Styles

setup(width=150, height=66)

d = ArchitectureDiagram(
    node_style=Styles.Primary,
    node_text_style=Styles.DarkBold.patch(text_size=10.0),
    edge_style=Styles.DarkBold,
    edge_text_style=Styles.DarkBold.patch(text_size=10.0),
    node_card_style=Styles.Neutral,
    title="Enterprise Azure AKS & OpenAI Microservice Topology",
)

fd = d.add(
    Node(
        "Azure Front\nDoor & CDN",
        width=23,
        height=18,
        icon=AzureIcon.FRONT_DOOR_AND_CDN_PROFILES,
        icon_size=7.5,
    ),
    xy=(14.0, 22.0),
)

vnet = d.add(NodeGroup(title="Production Azure VNet (eastus2)", padding=5.0), xy=(40.0, 4.0))
apim = vnet.add(
    Node("API\nManagement", width=23, height=18, icon=AzureIcon.API_MANAGEMENT_SERVICES, icon_size=7.5),
    xy=(16.5, 18.0),
)
aks = vnet.add(
    Node(
        "Azure AKS\nCluster",
        width=23,
        height=18,
        icon=AzureIcon.KUBERNETES_SERVICES,
        icon_size=7.5,
        card_style=Styles.PrimaryNeutral,
    ),
    xy=(50.0, 18.0),
)
aoai = vnet.add(
    Node(
        "Azure OpenAI\nService",
        width=23,
        height=18,
        icon=AzureIcon.OPENAI,
        icon_size=7.5,
        card_style=Styles.SecondaryNeutral,
    ),
    xy=(85.0, 29.0),
)
cosmos = vnet.add(
    Node("Azure\nCosmos DB", width=23, height=18, icon=AzureIcon.COSMOS_DB, icon_size=7.5),
    xy=(85.0, 7.0),
)

d.connect(fd, apim, label="HTTPS", padding=1.5)
d.connect(apim, aks, padding=1.5)
aks.fork([aoai, cosmos], at_x=107.5, padding=1.5)

d.draw(xy=(4.0, 4.0))
save()
azure_3
ArchitectureDiagram と AzureIcon を用いたエンタープライズ Azure AKS・AI マイクロサービス構成図