@umacloud/knowledge 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (418) hide show
  1. package/00-governance/governance-capabilities.md +557 -0
  2. package/00-governance/knowledge-map.md +39 -0
  3. package/00-governance/maintenance-policy.md +76 -0
  4. package/00-governance/review-checklist.md +81 -0
  5. package/README.md +13 -0
  6. package/ai/01-standards/agent-development-complete.md +691 -0
  7. package/ai/01-standards/llm-application-complete.md +488 -0
  8. package/ai/01-standards/mlops-complete.md +798 -0
  9. package/ai/01-standards/prompt-engineering-complete.md +646 -0
  10. package/ai/01-standards/rag-architecture-complete.md +649 -0
  11. package/ai/02-playbooks/llm-evaluation-playbook.md +847 -0
  12. package/ai/03-checklists/ai-project-checklist.md +215 -0
  13. package/ai/04-antipatterns/ai-antipatterns.md +661 -0
  14. package/ai/05-cases/case-rag-production.md +147 -0
  15. package/ai/06-glossary/ai-glossary.md +162 -0
  16. package/ai/agent-evaluation-benchmark.md +53 -0
  17. package/ai/ai-agent-memory-context-management.md +41 -0
  18. package/ai/ai-cost-capacity-optimization-playbook.md +42 -0
  19. package/ai/ai-data-security-and-compliance-playbook.md +37 -0
  20. package/ai/ai-domain-index-and-checklist.md +40 -0
  21. package/ai/ai-governance-maturity-model.md +50 -0
  22. package/ai/ai-model-selection-and-routing-strategy.md +47 -0
  23. package/ai/ai-observability-and-oncall-runbook.md +52 -0
  24. package/ai/ai-rag-engineering-playbook.md +42 -0
  25. package/ai/ai-red-team-and-safety-evaluation.md +42 -0
  26. package/ai/ai-release-readiness-and-rollback-gate.md +42 -0
  27. package/ai/llm-agent-engineering-deep-dive.md +57 -0
  28. package/ai/prompt-and-tool-guardrails.md +52 -0
  29. package/api/01-standards/enterprise-api-standards.md +198 -0
  30. package/api/01-standards/rest-api-design-guide.md +63 -0
  31. package/api/02-playbooks/api-pagination-playbook.md +93 -0
  32. package/api/02-playbooks/graphql-production-playbook.md +176 -0
  33. package/api/03-checklists/api-review-checklist.md +55 -0
  34. package/api/04-antipatterns/api-antipatterns.md +112 -0
  35. package/architecture/01-standards/api-gateway-patterns.md +496 -0
  36. package/architecture/01-standards/cloud-native-patterns.md +644 -0
  37. package/architecture/01-standards/distributed-systems-patterns.md +591 -0
  38. package/architecture/01-standards/event-driven-architecture.md +595 -0
  39. package/architecture/01-standards/microservices-patterns-complete.md +968 -0
  40. package/architecture/01-standards/microservices-patterns.md +495 -0
  41. package/architecture/01-standards/system-design-interview.md +664 -0
  42. package/architecture/02-playbooks/microservices-patterns-playbook.md +137 -0
  43. package/architecture/02-playbooks/migration-playbook.md +780 -0
  44. package/architecture/02-playbooks/system-design-playbook.md +779 -0
  45. package/architecture/03-checklists/architecture-decision-checklist.md +297 -0
  46. package/architecture/04-antipatterns/architecture-antipatterns.md +417 -0
  47. package/architecture/05-cases/case-netflix-microservices.md +413 -0
  48. package/architecture/06-glossary/architecture-glossary.md +164 -0
  49. package/architecture/adr-template-and-examples.md +38 -0
  50. package/architecture/api-gateway-deep-dive.md +1291 -0
  51. package/architecture/configuration-management.md +1162 -0
  52. package/architecture/distributed-transactions.md +1220 -0
  53. package/architecture/microservices-complete.md +735 -0
  54. package/architecture/resilience-and-disaster-patterns.md +37 -0
  55. package/architecture/service-governance.md +1198 -0
  56. package/architecture/system-architecture-deep-dive.md +37 -0
  57. package/backend/01-standards/analytics-and-growth.md +65 -0
  58. package/backend/01-standards/api-and-error-conventions.md +120 -0
  59. package/backend/01-standards/application-layering-and-packaging.md +160 -0
  60. package/backend/01-standards/auth-implementation.md +104 -0
  61. package/backend/01-standards/backend-framework-idioms.md +74 -0
  62. package/backend/01-standards/background-jobs-and-async.md +66 -0
  63. package/backend/01-standards/caching-strategies-complete.md +390 -0
  64. package/backend/01-standards/config-and-observability.md +77 -0
  65. package/backend/01-standards/data-modeling-and-persistence.md +94 -0
  66. package/backend/01-standards/django-complete.md +1765 -0
  67. package/backend/01-standards/email-and-notifications.md +64 -0
  68. package/backend/01-standards/fastapi-complete.md +925 -0
  69. package/backend/01-standards/file-upload-and-storage.md +66 -0
  70. package/backend/01-standards/graphql-api-complete.md +416 -0
  71. package/backend/01-standards/llm-application-standard.md +78 -0
  72. package/backend/01-standards/message-queue-patterns.md +379 -0
  73. package/backend/01-standards/microservices-and-distributed.md +78 -0
  74. package/backend/01-standards/nestjs-complete.md +2167 -0
  75. package/backend/01-standards/payment-integration.md +80 -0
  76. package/backend/01-standards/rate-limiting-complete.md +451 -0
  77. package/backend/01-standards/realtime-and-websocket.md +65 -0
  78. package/backend/01-standards/search-and-filtering.md +64 -0
  79. package/backend/01-standards/spring-boot-complete.md +445 -0
  80. package/backend/02-playbooks/api-design-playbook.md +718 -0
  81. package/backend/02-playbooks/email-send-playbook.md +130 -0
  82. package/backend/02-playbooks/file-upload-s3-playbook.md +153 -0
  83. package/backend/02-playbooks/typescript-enterprise-playbook.md +133 -0
  84. package/backend/02-playbooks/websocket-realtime-playbook.md +154 -0
  85. package/backend/03-checklists/api-launch-checklist.md +189 -0
  86. package/backend/04-antipatterns/backend-antipatterns.md +1051 -0
  87. package/blockchain/01-standards/blockchain-basics.md +557 -0
  88. package/blockchain/01-standards/smart-contract-development.md +1315 -0
  89. package/cicd/01-standards/deployment-and-delivery-standard.md +96 -0
  90. package/cicd/01-standards/github-actions-complete.md +473 -0
  91. package/cicd/01-standards/release-and-store-submission.md +75 -0
  92. package/cicd/02-playbooks/cicd-pipeline-playbook.md +144 -0
  93. package/cicd/02-playbooks/release-management-playbook.md +605 -0
  94. package/cicd/03-checklists/pipeline-security-checklist.md +168 -0
  95. package/cicd/04-antipatterns/cicd-antipatterns.md +589 -0
  96. package/cicd/05-cases/case-deployment-automation.md +221 -0
  97. package/cicd/05-cases/case-gitops-transformation.md +212 -0
  98. package/cicd/06-glossary/cicd-glossary.md +114 -0
  99. package/cicd/cicd-blueprint-deep-dive.md +38 -0
  100. package/cicd/release-readiness-gate.md +37 -0
  101. package/cloud-native/01-standards/container-security.md +741 -0
  102. package/cloud-native/01-standards/kubernetes-complete.md +812 -0
  103. package/cloud-native/02-playbooks/api-gateway-playbook.md +155 -0
  104. package/cloud-native/02-playbooks/gitops-with-argocd.md +760 -0
  105. package/cloud-native/02-playbooks/k8s-troubleshooting-playbook.md +1942 -0
  106. package/cloud-native/02-playbooks/message-queue-playbook.md +129 -0
  107. package/cloud-native/02-playbooks/multicloud-governance.md +726 -0
  108. package/cloud-native/02-playbooks/serverless-patterns.md +788 -0
  109. package/cloud-native/02-playbooks/service-mesh-playbook.md +612 -0
  110. package/cloud-native/02-playbooks/terraform-iac-playbook.md +143 -0
  111. package/cloud-native/03-checklists/container-security-checklist.md +431 -0
  112. package/cloud-native/03-checklists/k8s-production-readiness-checklist.md +460 -0
  113. package/cloud-native/04-antipatterns/container-antipatterns.md +660 -0
  114. package/cloud-native/04-antipatterns/k8s-antipatterns.md +743 -0
  115. package/cloud-native/05-cases/case-k8s-migration.md +478 -0
  116. package/cloud-native/05-cases/case-k8s-scaling.md +642 -0
  117. package/cloud-native/05-cases/case-k8s-security-incident.md +397 -0
  118. package/cloud-native/06-glossary/cloud-native-glossary.md +337 -0
  119. package/cross-platform/01-standards/cross-platform-frameworks.md +83 -0
  120. package/cross-platform/01-standards/platform-selection-and-architecture.md +77 -0
  121. package/data/01-standards/elasticsearch-complete.md +2098 -0
  122. package/data/01-standards/postgresql-complete.md +1613 -0
  123. package/data/01-standards/redis-complete.md +1527 -0
  124. package/data/02-playbooks/database-optimization-playbook.md +403 -0
  125. package/data/02-playbooks/elasticsearch-production-playbook.md +132 -0
  126. package/data/03-checklists/database-launch-checklist.md +187 -0
  127. package/data/04-antipatterns/database-antipatterns.md +873 -0
  128. package/data/05-cases/case-database-migration.md +310 -0
  129. package/data/06-glossary/database-glossary.md +440 -0
  130. package/data/data-governance-and-modeling-deep-dive.md +39 -0
  131. package/data-engineering/01-standards/airflow-complete.md +523 -0
  132. package/data-engineering/01-standards/kafka-complete.md +1521 -0
  133. package/data-engineering/02-playbooks/spark-etl-playbook.md +496 -0
  134. package/data-engineering/03-checklists/pipeline-launch-checklist.md +194 -0
  135. package/data-engineering/04-antipatterns/data-pipeline-antipatterns.md +684 -0
  136. package/data-engineering/05-cases/case-real-time-pipeline.md +355 -0
  137. package/data-engineering/06-glossary/data-engineering-glossary.md +429 -0
  138. package/database/01-standards/database-schema-standards.md +147 -0
  139. package/database/02-playbooks/postgresql-optimization-quick.md +52 -0
  140. package/database/02-playbooks/postgresql-performance-optimization.md +58 -0
  141. package/database/02-playbooks/postgresql-production-playbook.md +146 -0
  142. package/database/02-playbooks/redis-caching-playbook.md +117 -0
  143. package/database/03-checklists/database-review-checklist.md +50 -0
  144. package/database/04-antipatterns/database-antipatterns.md +112 -0
  145. package/design/01-standards/ui-design-system-complete.md +423 -0
  146. package/design/02-playbooks/design-handoff-playbook.md +254 -0
  147. package/design/02-playbooks/design-review-playbook.md +388 -0
  148. package/design/03-checklists/design-review-checklist.md +246 -0
  149. package/design/04-antipatterns/design-antipatterns.md +378 -0
  150. package/design/05-cases/case-design-system-adoption.md +328 -0
  151. package/design/06-glossary/design-glossary.md +329 -0
  152. package/design/ui-full-lifecycle-cross-platform-playbook.md +571 -0
  153. package/design/ux-system-deep-dive.md +38 -0
  154. package/design-systems/00-craft-rules.md +71 -0
  155. package/design-systems/aesthetic-families.md +43 -0
  156. package/design-systems/anti-ai-slop.md +162 -0
  157. package/design-systems/bold-geometric.md +120 -0
  158. package/design-systems/brutalist-bold.md +103 -0
  159. package/design-systems/editorial-clean.md +109 -0
  160. package/design-systems/glass-aurora.md +108 -0
  161. package/design-systems/modern-minimal.md +145 -0
  162. package/design-systems/premium-luxury.md +106 -0
  163. package/design-systems/product-type-design-map.md +48 -0
  164. package/design-systems/soft-warm.md +123 -0
  165. package/design-systems/tech-utility.md +113 -0
  166. package/desktop/01-standards/desktop-app-standard.md +72 -0
  167. package/desktop/01-standards/desktop-design.md +71 -0
  168. package/development/00-governance/document-template.md +41 -0
  169. package/development/01-standards/api-versioning-strategies.md +432 -0
  170. package/development/01-standards/authentication-patterns-complete.md +479 -0
  171. package/development/01-standards/css-architecture-complete.md +550 -0
  172. package/development/01-standards/database-migration-strategies.md +484 -0
  173. package/development/01-standards/elasticsearch-complete.md +347 -0
  174. package/development/01-standards/git-complete.md +371 -0
  175. package/development/01-standards/golang-complete.md +1565 -0
  176. package/development/01-standards/graphql-complete.md +298 -0
  177. package/development/01-standards/javascript-bundlers-complete.md +469 -0
  178. package/development/01-standards/javascript-typescript-complete.md +528 -0
  179. package/development/01-standards/jest-complete.md +275 -0
  180. package/development/01-standards/linux-complete.md +234 -0
  181. package/development/01-standards/logging-observability-complete.md +526 -0
  182. package/development/01-standards/microservices-communication.md +502 -0
  183. package/development/01-standards/mongodb-complete.md +406 -0
  184. package/development/01-standards/oauth2-complete.md +285 -0
  185. package/development/01-standards/performance-optimization-complete.md +289 -0
  186. package/development/01-standards/playwright-complete.md +247 -0
  187. package/development/01-standards/postgresql-complete.md +456 -0
  188. package/development/01-standards/pytest-complete.md +340 -0
  189. package/development/01-standards/python-async-programming.md +902 -0
  190. package/development/01-standards/python-complete.md +956 -0
  191. package/development/01-standards/python-decorators-complete.md +799 -0
  192. package/development/01-standards/python-design-patterns.md +2854 -0
  193. package/development/01-standards/python-packaging-distribution.md +420 -0
  194. package/development/01-standards/python-testing-strategies.md +607 -0
  195. package/development/01-standards/python-web-frameworks-comparison.md +471 -0
  196. package/development/01-standards/redis-complete.md +317 -0
  197. package/development/01-standards/rest-api-complete.md +316 -0
  198. package/development/01-standards/rust-complete.md +578 -0
  199. package/development/01-standards/typescript-advanced-types.md +1513 -0
  200. package/development/01-standards/web-security-complete.md +292 -0
  201. package/development/02-playbooks/api-design-playbook.md +810 -0
  202. package/development/02-playbooks/database-migration-playbook.md +580 -0
  203. package/development/02-playbooks/debugging-playbook.md +692 -0
  204. package/development/02-playbooks/feature-delivery-playbook.md +430 -0
  205. package/development/02-playbooks/incident-hotfix-playbook.md +387 -0
  206. package/development/02-playbooks/performance-optimization-playbook.md +531 -0
  207. package/development/02-playbooks/performance-tuning-playbook.md +652 -0
  208. package/development/02-playbooks/refactor-playbook.md +403 -0
  209. package/development/02-playbooks/release-playbook.md +469 -0
  210. package/development/03-checklists/architecture-review-checklist.md +168 -0
  211. package/development/03-checklists/data-migration-checklist.md +157 -0
  212. package/development/03-checklists/oncall-handover-checklist.md +173 -0
  213. package/development/03-checklists/pr-checklist.md +158 -0
  214. package/development/03-checklists/production-readiness-checklist.md +190 -0
  215. package/development/03-checklists/release-readiness-checklist.md +154 -0
  216. package/development/03-checklists/security-review-checklist.md +182 -0
  217. package/development/04-antipatterns/api-antipatterns.md +657 -0
  218. package/development/04-antipatterns/architecture-antipatterns.md +686 -0
  219. package/development/04-antipatterns/backend-antipatterns.md +648 -0
  220. package/development/04-antipatterns/cicd-antipatterns.md +540 -0
  221. package/development/04-antipatterns/code-smell-antipatterns.md +571 -0
  222. package/development/04-antipatterns/data-antipatterns.md +658 -0
  223. package/development/04-antipatterns/database-antipatterns.md +578 -0
  224. package/development/04-antipatterns/frontend-antipatterns.md +635 -0
  225. package/development/04-antipatterns/reliability-antipatterns.md +700 -0
  226. package/development/04-antipatterns/security-antipatterns.md +747 -0
  227. package/development/05-cases/case-api-version-migration.md +428 -0
  228. package/development/05-cases/case-authorization-hardening.md +383 -0
  229. package/development/05-cases/case-bluegreen-rollback.md +466 -0
  230. package/development/05-cases/case-cache-snowball-protection.md +485 -0
  231. package/development/05-cases/case-ci-cd-pipeline.md +544 -0
  232. package/development/05-cases/case-database-scaling.md +500 -0
  233. package/development/05-cases/case-db-hotspot-optimization.md +487 -0
  234. package/development/05-cases/case-incident-mttr-reduction.md +563 -0
  235. package/development/05-cases/case-microservice-migration.md +375 -0
  236. package/development/05-cases/case-performance-optimization.md +406 -0
  237. package/development/05-cases/case-security-incident-response.md +345 -0
  238. package/development/06-glossary/full-stack-glossary.md +166 -0
  239. package/development/09-maturity/quarterly-audit-template.md +35 -0
  240. package/development/11-ui-excellence/ui-aesthetic-system.md +41 -0
  241. package/development/11-ui-excellence/ui-engineering-excellence.md +435 -0
  242. package/development/12-scenarios/development-scenarios-guide.md +565 -0
  243. package/development/13-implementation-assets/implementation-toolkit.md +282 -0
  244. package/development/13-implementation-assets/knowledge-gates-execution.md +43 -0
  245. package/development/14-full-lifecycle/software-lifecycle-gates.md +511 -0
  246. package/development/15-lifecycle-templates/project-templates-collection.md +791 -0
  247. package/development/api-contract-and-versioning-guide.md +36 -0
  248. package/development/api-governance-complete.md +43 -0
  249. package/development/backend-engineering-complete.md +43 -0
  250. package/development/code-review-quality-complete.md +43 -0
  251. package/development/concurrency-reliability-complete.md +43 -0
  252. package/development/database-engineering-complete.md +43 -0
  253. package/development/engineering-effectiveness-complete.md +43 -0
  254. package/development/engineering-standards-deep-dive.md +38 -0
  255. package/development/frontend-engineering-complete.md +43 -0
  256. package/development/performance-capacity-complete.md +43 -0
  257. package/development/refactor-migration-complete.md +42 -0
  258. package/development/refactoring-and-techdebt-playbook.md +37 -0
  259. package/development/security-in-development-complete.md +43 -0
  260. package/devops/01-standards/cicd-pipeline-complete.md +262 -0
  261. package/devops/01-standards/docker-complete.md +1490 -0
  262. package/devops/01-standards/github-actions-complete.md +337 -0
  263. package/devops/01-standards/kubernetes-complete.md +638 -0
  264. package/devops/01-standards/terraform-complete.md +2117 -0
  265. package/devops/02-playbooks/docker-compose-playbook.md +233 -0
  266. package/devops/02-playbooks/docker-k8s-production-playbook.md +186 -0
  267. package/devops/02-playbooks/docker-production-playbook.md +952 -0
  268. package/edge-iot/01-standards/edge-iot-complete.md +473 -0
  269. package/experts/architect/api-design.md +178 -0
  270. package/experts/architect/methodology.md +124 -0
  271. package/experts/architect/security.md +75 -0
  272. package/experts/backend-lead/methodology.md +216 -0
  273. package/experts/devops/methodology.md +160 -0
  274. package/experts/frontend-lead/methodology.md +178 -0
  275. package/experts/product-manager/industry/ecommerce.md +43 -0
  276. package/experts/product-manager/industry/saas.md +40 -0
  277. package/experts/product-manager/methodology.md +97 -0
  278. package/experts/qa-lead/methodology.md +123 -0
  279. package/experts/qa-lead/test-strategy.md +128 -0
  280. package/experts/uiux-designer/methodology.md +125 -0
  281. package/frontend/01-standards/accessibility-complete.md +532 -0
  282. package/frontend/01-standards/accessibility-standard.md +74 -0
  283. package/frontend/01-standards/admin-dashboard-and-crud.md +72 -0
  284. package/frontend/01-standards/design-tokens-complete.md +444 -0
  285. package/frontend/01-standards/forms-and-validation.md +77 -0
  286. package/frontend/01-standards/frontend-architecture-and-layering.md +119 -0
  287. package/frontend/01-standards/i18n-and-localization.md +65 -0
  288. package/frontend/01-standards/nextjs-complete.md +451 -0
  289. package/frontend/01-standards/react-complete.md +713 -0
  290. package/frontend/01-standards/react-hooks-complete-guide.md +1100 -0
  291. package/frontend/01-standards/react-hooks-complete.md +1171 -0
  292. package/frontend/01-standards/seo-and-web-vitals.md +77 -0
  293. package/frontend/01-standards/state-management-complete.md +444 -0
  294. package/frontend/01-standards/vue-complete.md +499 -0
  295. package/frontend/01-standards/vue3-complete.md +2002 -0
  296. package/frontend/01-standards/web-framework-best-practices.md +64 -0
  297. package/frontend/01-standards/web-performance-complete.md +495 -0
  298. package/frontend/02-playbooks/accessibility-a11y-playbook.md +161 -0
  299. package/frontend/02-playbooks/frontend-performance-playbook.md +707 -0
  300. package/frontend/02-playbooks/i18n-internationalization-playbook.md +120 -0
  301. package/frontend/02-playbooks/performance-optimization-playbook.md +163 -0
  302. package/frontend/02-playbooks/react-nextjs-production-playbook.md +167 -0
  303. package/frontend/02-playbooks/react-state-management-playbook.md +173 -0
  304. package/frontend/03-checklists/component-quality-checklist.md +166 -0
  305. package/frontend/03-checklists/frontend-launch-checklist.md +299 -0
  306. package/frontend/04-antipatterns/frontend-antipatterns.md +886 -0
  307. package/frontend/05-cases/case-performance-optimization.md +274 -0
  308. package/harmony/01-standards/harmonyos-arkts-standard.md +75 -0
  309. package/harmony/01-standards/harmonyos-design.md +65 -0
  310. package/high-quality-engineering-playbook.md +54 -0
  311. package/incident/01-standards/incident-response-complete.md +303 -0
  312. package/incident/02-playbooks/chaos-engineering-playbook.md +883 -0
  313. package/incident/02-playbooks/postmortem-playbook.md +398 -0
  314. package/incident/03-checklists/incident-readiness-checklist.md +181 -0
  315. package/incident/04-antipatterns/incident-antipatterns.md +490 -0
  316. package/incident/05-cases/case-cascade-failure.md +176 -0
  317. package/incident/06-glossary/incident-glossary.md +114 -0
  318. package/incident/postmortem-and-response-deep-dive.md +39 -0
  319. package/industries/ecommerce/ecommerce-complete.md +631 -0
  320. package/industries/education/education-complete.md +555 -0
  321. package/industries/fintech/fintech-complete.md +501 -0
  322. package/industries/gaming/gaming-complete.md +587 -0
  323. package/industries/healthcare/healthcare-complete.md +452 -0
  324. package/low-code/01-standards/low-code-complete.md +944 -0
  325. package/miniprogram/01-standards/ai-common-mistakes.md +61 -0
  326. package/miniprogram/01-standards/miniprogram-custom-navbar-capsule.md +77 -0
  327. package/miniprogram/01-standards/miniprogram-design.md +61 -0
  328. package/miniprogram/01-standards/miniprogram-standard.md +81 -0
  329. package/mobile/01-standards/android-material-design.md +70 -0
  330. package/mobile/01-standards/flutter-complete.md +384 -0
  331. package/mobile/01-standards/ios-design-hig.md +78 -0
  332. package/mobile/01-standards/mobile-app-standard.md +85 -0
  333. package/mobile/01-standards/react-native-complete.md +352 -0
  334. package/mobile/02-playbooks/mobile-cross-platform-playbook.md +175 -0
  335. package/mobile/02-playbooks/mobile-performance.md +473 -0
  336. package/mobile/03-checklists/mobile-release-checklist.md +234 -0
  337. package/mobile/04-antipatterns/mobile-antipatterns.md +798 -0
  338. package/mobile/05-cases/case-app-performance.md +500 -0
  339. package/mobile/05-cases/case-app-startup-optimization.md +218 -0
  340. package/mobile/06-glossary/mobile-glossary.md +484 -0
  341. package/observability/01-standards/observability-standards.md +103 -0
  342. package/observability/02-playbooks/prometheus-grafana-playbook.md +135 -0
  343. package/observability/02-playbooks/structured-logging-playbook.md +73 -0
  344. package/observability/03-checklists/observability-checklist.md +54 -0
  345. package/observability/04-antipatterns/observability-antipatterns.md +106 -0
  346. package/operations/01-standards/prometheus-monitoring-complete.md +1578 -0
  347. package/operations/02-playbooks/capacity-planning-playbook.md +620 -0
  348. package/operations/03-checklists/production-launch-checklist.md +365 -0
  349. package/operations/04-antipatterns/operations-antipatterns.md +664 -0
  350. package/operations/05-cases/case-sre-practices.md +581 -0
  351. package/operations/06-glossary/operations-glossary.md +120 -0
  352. package/operations/aiops-anomaly-detection.md +758 -0
  353. package/operations/capacity-planning.md +1061 -0
  354. package/operations/chaos-engineering.md +659 -0
  355. package/operations/incident-command-system.md +38 -0
  356. package/operations/observability-complete.md +442 -0
  357. package/operations/slo-sli-playbook.md +517 -0
  358. package/operations/sre-operations-deep-dive.md +39 -0
  359. package/package.json +8 -0
  360. package/performance/01-standards/performance-and-scalability.md +80 -0
  361. package/performance/01-standards/performance-standards.md +156 -0
  362. package/performance/02-playbooks/query-optimization-playbook.md +103 -0
  363. package/performance/03-checklists/performance-checklist.md +56 -0
  364. package/performance/04-antipatterns/performance-antipatterns.md +146 -0
  365. package/product/01-standards/product-management-complete.md +285 -0
  366. package/product/02-playbooks/feature-launch-playbook.md +207 -0
  367. package/product/02-playbooks/user-research-playbook.md +532 -0
  368. package/product/03-checklists/feature-launch-checklist.md +275 -0
  369. package/product/04-antipatterns/product-antipatterns.md +355 -0
  370. package/product/05-cases/case-mvp-to-scale.md +384 -0
  371. package/product/06-glossary/product-glossary.md +462 -0
  372. package/product/feature-prioritization-framework.md +40 -0
  373. package/product/kpi-and-metric-tree.md +37 -0
  374. package/product/product-discovery-and-prd-deep-dive.md +41 -0
  375. package/quantum/01-standards/quantum-complete.md +1186 -0
  376. package/security/01-standards/api-security-complete.md +511 -0
  377. package/security/01-standards/container-runtime-security.md +574 -0
  378. package/security/01-standards/data-protection-gdpr.md +543 -0
  379. package/security/01-standards/owasp-top10-complete.md +1890 -0
  380. package/security/01-standards/secure-coding-baseline.md +90 -0
  381. package/security/01-standards/supply-chain-security.md +441 -0
  382. package/security/01-standards/web-security-checklist.md +108 -0
  383. package/security/01-standards/zero-trust-architecture.md +521 -0
  384. package/security/02-playbooks/auth-sso-playbook.md +166 -0
  385. package/security/02-playbooks/incident-response-security-playbook.md +588 -0
  386. package/security/02-playbooks/owasp-api-security-playbook.md +129 -0
  387. package/security/02-playbooks/payment-integration-playbook.md +119 -0
  388. package/security/02-playbooks/penetration-testing-playbook.md +517 -0
  389. package/security/03-checklists/security-audit-checklist.md +356 -0
  390. package/security/04-antipatterns/security-coding-antipatterns.md +580 -0
  391. package/security/05-cases/case-log4shell-incident.md +537 -0
  392. package/security/05-cases/case-major-breaches.md +468 -0
  393. package/security/06-glossary/security-glossary.md +212 -0
  394. package/security/compliance-automation.md +993 -0
  395. package/security/container-security.md +680 -0
  396. package/security/devsecops-complete.md +426 -0
  397. package/security/sast-dast-sca.md +775 -0
  398. package/security/secrets-management.md +594 -0
  399. package/security/security-architecture-deep-dive.md +37 -0
  400. package/security/threat-modeling-stride-playbook.md +40 -0
  401. package/seed-templates/auth-system.md +59 -0
  402. package/seed-templates/blog-content.md +94 -0
  403. package/seed-templates/dashboard.md +89 -0
  404. package/seed-templates/docs-site.md +73 -0
  405. package/seed-templates/e-commerce.md +50 -0
  406. package/seed-templates/saas-landing.md +92 -0
  407. package/seed-templates/settings-page.md +51 -0
  408. package/testing/01-standards/test-strategy-and-layering.md +83 -0
  409. package/testing/01-standards/testing-strategy-complete.md +422 -0
  410. package/testing/01-standards/unit-testing-best-practices.md +118 -0
  411. package/testing/02-playbooks/e2e-testing-playbook.md +988 -0
  412. package/testing/02-playbooks/testing-strategy-playbook.md +126 -0
  413. package/testing/03-checklists/test-strategy-checklist.md +208 -0
  414. package/testing/04-antipatterns/testing-antipatterns.md +718 -0
  415. package/testing/05-cases/case-testing-transformation.md +300 -0
  416. package/testing/06-glossary/testing-glossary.md +110 -0
  417. package/testing/risk-based-test-matrix.md +36 -0
  418. package/testing/testing-strategy-deep-dive.md +37 -0
@@ -0,0 +1,760 @@
1
+ ---
2
+ title: GitOps ArgoCD 作战手册
3
+ version: 1.0.0
4
+ last_updated: 2025-03-20
5
+ owner: platform-team
6
+ tags: [gitops, argocd, continuous-deployment, kubernetes]
7
+ status: production
8
+ domain: cloud-native
9
+ difficulty: intermediate
10
+ quality_score: 70
11
+ ---
12
+
13
+ # 开发:Excellent(11964948@qq.com)
14
+ # 功能:GitOps 与 ArgoCD 实施作战手册
15
+ # 作用:指导使用 ArgoCD 实现声明式持续部署
16
+ # 创建时间:2025-03-20
17
+ # 最后修改:2025-03-20
18
+
19
+ ## 目标
20
+
21
+ 建立 GitOps 标准化部署流程,确保:
22
+ - Git 作为单一事实来源
23
+ - 声明式配置管理
24
+ - 自动化同步和漂移检测
25
+ - 安全可控的发布流程
26
+
27
+ ## 适用场景
28
+
29
+ - Kubernetes 应用持续部署
30
+ - 多环境配置管理
31
+ - 基础设施即代码
32
+ - 多集群统一管理
33
+
34
+ ## 执行清单
35
+
36
+ ### 部署前准备
37
+
38
+ - [ ] 确定 Git 仓库结构(单仓库 vs 多仓库)
39
+ - [ ] 配置 Git 访问凭证
40
+ - [ ] 规划环境隔离策略
41
+ - [ ] 设计目录结构
42
+ - [ ] 制定回滚流程
43
+
44
+ ### ArgoCD 安装
45
+
46
+ - [ ] 安装 ArgoCD 控制平面
47
+ - [ ] 配置 SSO 集成
48
+ - [ ] 创建项目和权限
49
+ - [ ] 配置仓库访问
50
+ - [ ] 安装 CLI 工具
51
+
52
+ ### 应用接入
53
+
54
+ - [ ] 创建 Application 资源
55
+ - [ ] 配置同步策略
56
+ - [ ] 配置健康检查
57
+ - [ ] 设置自动同步
58
+ - [ ] 配置通知
59
+
60
+ ## 核心配置
61
+
62
+ ### 1. ArgoCD 安装
63
+
64
+ ```bash
65
+ # 创建命名空间
66
+ kubectl create namespace argocd
67
+
68
+ # 安装 ArgoCD
69
+ kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
70
+
71
+ # 获取初始密码
72
+ kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d
73
+ ```
74
+
75
+ ### 2. ArgoCD 配置
76
+
77
+ ```yaml
78
+ # argocd-cm 配置
79
+ apiVersion: v1
80
+ kind: ConfigMap
81
+ metadata:
82
+ name: argocd-cm
83
+ namespace: argocd
84
+ labels:
85
+ app.kubernetes.io/name: argocd-cm
86
+ app.kubernetes.io/part-of: argocd
87
+ data:
88
+ # URL 配置
89
+ url: https://argocd.example.com
90
+ # 禁用内置用户(使用 SSO)
91
+ accounts.enabled: "false"
92
+ # SSO 配置
93
+ dex.config: |
94
+ connectors:
95
+ - type: oidc
96
+ id: okta
97
+ name: Okta
98
+ config:
99
+ issuer: https://your-org.okta.com
100
+ clientID: $oidc.okta.clientID
101
+ clientSecret: $oidc.okta.clientSecret
102
+ preferredEmailDomains:
103
+ - example.com
104
+ # 资源剔除
105
+ resource.exclusions: |
106
+ - apiGroups:
107
+ - ""
108
+ kinds:
109
+ - Event
110
+ clusters:
111
+ - "*"
112
+ # 仓库凭证模板
113
+ repositories: |
114
+ - url: https://github.com/org/k8s-configs
115
+ name: k8s-configs
116
+ type: git
117
+ ```
118
+
119
+ ```yaml
120
+ # argocd-rbac-cm 配置
121
+ apiVersion: v1
122
+ kind: ConfigMap
123
+ metadata:
124
+ name: argocd-rbac-cm
125
+ namespace: argocd
126
+ data:
127
+ policy.csv: |
128
+ # 只读用户组
129
+ g, read-only, role:readonly
130
+ # 开发者组 - 特定命名空间权限
131
+ g, developers, role:developer
132
+ # 管理员组
133
+ g, admins, role:admin
134
+ # 项目级别策略
135
+ p, role:developer, applications, get, production/*, allow
136
+ p, role:developer, applications, sync, staging/*, allow
137
+ policy.default: role:readonly
138
+ ```
139
+
140
+ ### 3. 项目配置
141
+
142
+ ```yaml
143
+ apiVersion: argoproj.io/v1alpha1
144
+ kind: AppProject
145
+ metadata:
146
+ name: production
147
+ namespace: argocd
148
+ spec:
149
+ description: Production environment project
150
+ # 源仓库
151
+ sourceRepos:
152
+ - https://github.com/org/k8s-configs
153
+ - https://github.com/org/helm-charts
154
+ # 目标集群和命名空间
155
+ destinations:
156
+ - namespace: production
157
+ server: https://kubernetes.default.svc
158
+ - namespace: monitoring
159
+ server: https://kubernetes.default.svc
160
+ # 允许的资源
161
+ clusterResourceWhitelist:
162
+ - group: ''
163
+ kind: Namespace
164
+ - group: rbac.authorization.k8s.io
165
+ kind: ClusterRole
166
+ - group: rbac.authorization.k8s.io
167
+ kind: ClusterRoleBinding
168
+ # 命名空间资源白名单
169
+ namespaceResourceWhitelist:
170
+ - group: '*'
171
+ kind: '*'
172
+ # 同步窗口(维护窗口)
173
+ syncWindows:
174
+ - kind: deny
175
+ schedule: '0 0 * * *'
176
+ duration: 1h
177
+ namespaces:
178
+ - production
179
+ # 角色配置
180
+ roles:
181
+ - name: developer
182
+ description: Developer access
183
+ policies:
184
+ - p, proj:production:developer, applications, get, production/*, allow
185
+ - p, proj:production:developer, applications, sync, production/*, allow
186
+ groups:
187
+ - developers
188
+ ```
189
+
190
+ ### 4. Application 配置
191
+
192
+ ```yaml
193
+ apiVersion: argoproj.io/v1alpha1
194
+ kind: Application
195
+ metadata:
196
+ name: production-app
197
+ namespace: argocd
198
+ finalizers:
199
+ - resources-finalizer.argocd.argoproj.io
200
+ spec:
201
+ project: production
202
+ source:
203
+ repoURL: https://github.com/org/k8s-configs
204
+ targetRevision: main
205
+ path: apps/production/api-service
206
+ helm:
207
+ valueFiles:
208
+ - values.yaml
209
+ - values-production.yaml
210
+ parameters:
211
+ - name: image.tag
212
+ value: v1.2.3
213
+ destination:
214
+ server: https://kubernetes.default.svc
215
+ namespace: production
216
+ syncPolicy:
217
+ automated:
218
+ prune: true
219
+ selfHeal: true
220
+ allowEmpty: false
221
+ syncOptions:
222
+ - Validate=true
223
+ - CreateNamespace=true
224
+ - PrunePropagationPolicy=foreground
225
+ - PruneLast=true
226
+ retry:
227
+ limit: 5
228
+ backoff:
229
+ duration: 5s
230
+ factor: 2
231
+ maxDuration: 3m
232
+ ignoreDifferences:
233
+ - group: apps
234
+ kind: Deployment
235
+ jsonPointers:
236
+ - /spec/replicas
237
+ info:
238
+ - name: Team
239
+ value: Backend Team
240
+ - name: On-call
241
+ value: backend@example.com
242
+ ```
243
+
244
+ ### 5. ApplicationSet(多环境)
245
+
246
+ ```yaml
247
+ apiVersion: argoproj.io/v1alpha1
248
+ kind: ApplicationSet
249
+ metadata:
250
+ name: multi-environment-apps
251
+ namespace: argocd
252
+ spec:
253
+ generators:
254
+ - list:
255
+ elements:
256
+ - cluster: staging
257
+ url: https://staging.kubernetes.local
258
+ namespace: staging
259
+ - cluster: production
260
+ url: https://production.kubernetes.local
261
+ namespace: production
262
+ template:
263
+ metadata:
264
+ name: '{{cluster}}-api-service'
265
+ spec:
266
+ project: '{{cluster}}'
267
+ source:
268
+ repoURL: https://github.com/org/k8s-configs
269
+ targetRevision: main
270
+ path: apps/api-service
271
+ helm:
272
+ valueFiles:
273
+ - values.yaml
274
+ - 'values-{{cluster}}.yaml'
275
+ destination:
276
+ server: '{{url}}'
277
+ namespace: '{{namespace}}'
278
+ syncPolicy:
279
+ automated:
280
+ prune: true
281
+ selfHeal: true
282
+ ```
283
+
284
+ ### 6. Kustomize 应用
285
+
286
+ ```yaml
287
+ apiVersion: argoproj.io/v1alpha1
288
+ kind: Application
289
+ metadata:
290
+ name: kustomize-app
291
+ namespace: argocd
292
+ spec:
293
+ project: production
294
+ source:
295
+ repoURL: https://github.com/org/k8s-configs
296
+ targetRevision: main
297
+ path: apps/api-service/overlays/production
298
+ kustomize:
299
+ namePrefix: prod-
300
+ images:
301
+ - api-service=v1.2.3
302
+ commonLabels:
303
+ environment: production
304
+ patches:
305
+ - target:
306
+ kind: Deployment
307
+ name: api-service
308
+ patch: |-
309
+ - op: add
310
+ path: /spec/template/spec/containers/0/resources/limits/memory
311
+ value: 4Gi
312
+ destination:
313
+ server: https://kubernetes.default.svc
314
+ namespace: production
315
+ ```
316
+
317
+ ### 7. 通知配置
318
+
319
+ ```yaml
320
+ apiVersion: v1
321
+ kind: ConfigMap
322
+ metadata:
323
+ name: argocd-notifications-cm
324
+ namespace: argocd
325
+ data:
326
+ service.slack: |
327
+ token: $slack-token
328
+ template.app-deployed: |
329
+ email:
330
+ subject: Application {{.app.metadata.name}} deployed
331
+ slack:
332
+ attachments: |
333
+ [{
334
+ "title": "{{.app.metadata.name}}",
335
+ "title_link": "{{.context.argocdUrl}}/applications/{{.app.metadata.name}}",
336
+ "color": "#18be52",
337
+ "fields": [
338
+ {
339
+ "title": "Sync Status",
340
+ "value": "{{.app.status.sync.status}}",
341
+ "short": true
342
+ },
343
+ {
344
+ "title": "Revision",
345
+ "value": "{{.app.status.sync.revision}}",
346
+ "short": true
347
+ }
348
+ ]
349
+ }]
350
+ trigger.on-deployed: |
351
+ - description: Application deployed
352
+ send:
353
+ - app-deployed
354
+ when: app.status.operationState.phase in ['Succeeded']
355
+ subscriptions: |
356
+ - recipients:
357
+ - slack:deployments
358
+ triggers:
359
+ - on-deployed
360
+ - on-sync-failed
361
+ ```
362
+
363
+ ### 8. Image Updater 配置
364
+
365
+ ```yaml
366
+ apiVersion: argoproj.io/v1alpha1
367
+ kind: Application
368
+ metadata:
369
+ name: api-service
370
+ namespace: argocd
371
+ annotations:
372
+ argocd-image-updater.argoproj.io/image-list: api=registry.example.com/api-service
373
+ argocd-image-updater.argoproj.io/api.update-strategy: semver
374
+ argocd-image-updater.argoproj.io/api.allow-tags: regexp:^v(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$
375
+ argocd-image-updater.argoproj.io/write-back-method: git
376
+ argocd-image-updater.argoproj.io/git-branch: main
377
+ spec:
378
+ # ... Application spec
379
+ ```
380
+
381
+ ## 目录结构
382
+
383
+ ### 单仓库结构
384
+
385
+ ```
386
+ k8s-configs/
387
+ ├── apps/
388
+ │ ├── api-service/
389
+ │ │ ├── base/
390
+ │ │ │ ├── deployment.yaml
391
+ │ │ │ ├── service.yaml
392
+ │ │ │ ├── configmap.yaml
393
+ │ │ │ └── kustomization.yaml
394
+ │ │ └── overlays/
395
+ │ │ ├── staging/
396
+ │ │ │ ├── kustomization.yaml
397
+ │ │ │ └── patches/
398
+ │ │ └── production/
399
+ │ │ ├── kustomization.yaml
400
+ │ │ └── patches/
401
+ │ └── web-app/
402
+ │ └── ...
403
+ ├── infrastructure/
404
+ │ ├── monitoring/
405
+ │ ├── ingress-nginx/
406
+ │ └── cert-manager/
407
+ └── argocd/
408
+ ├── projects/
409
+ │ ├── production.yaml
410
+ │ └── staging.yaml
411
+ └── applications/
412
+ ├── production/
413
+ └── staging/
414
+ ```
415
+
416
+ ### Helm Chart 结构
417
+
418
+ ```
419
+ charts/
420
+ ├── api-service/
421
+ │ ├── Chart.yaml
422
+ │ ├── values.yaml
423
+ │ ├── values-staging.yaml
424
+ │ ├── values-production.yaml
425
+ │ └── templates/
426
+ │ ├── deployment.yaml
427
+ │ ├── service.yaml
428
+ │ ├── configmap.yaml
429
+ │ └── ingress.yaml
430
+ ```
431
+
432
+ ## 最佳实践
433
+
434
+ ### 1. 环境隔离
435
+
436
+ ```yaml
437
+ # 使用 Kustomize overlays 管理环境差异
438
+ # base/deployment.yaml
439
+ apiVersion: apps/v1
440
+ kind: Deployment
441
+ metadata:
442
+ name: api-service
443
+ spec:
444
+ replicas: 1
445
+ template:
446
+ spec:
447
+ containers:
448
+ - name: api
449
+ resources:
450
+ requests:
451
+ cpu: 100m
452
+ memory: 256Mi
453
+
454
+ ---
455
+ # overlays/production/kustomization.yaml
456
+ apiVersion: kustomize.config.k8s.io/v1beta1
457
+ kind: Kustomization
458
+ resources:
459
+ - ../../base
460
+ patchesStrategicMerge:
461
+ - deployment-patch.yaml
462
+
463
+ ---
464
+ # overlays/production/deployment-patch.yaml
465
+ apiVersion: apps/v1
466
+ kind: Deployment
467
+ metadata:
468
+ name: api-service
469
+ spec:
470
+ replicas: 5
471
+ template:
472
+ spec:
473
+ containers:
474
+ - name: api
475
+ resources:
476
+ requests:
477
+ cpu: 500m
478
+ memory: 1Gi
479
+ limits:
480
+ cpu: 2000m
481
+ memory: 4Gi
482
+ ```
483
+
484
+ ### 2. 渐进式发布
485
+
486
+ ```yaml
487
+ # 使用 Argo Rollouts 进行渐进式发布
488
+ apiVersion: argoproj.io/v1alpha1
489
+ kind: Rollout
490
+ metadata:
491
+ name: api-service
492
+ spec:
493
+ replicas: 10
494
+ strategy:
495
+ canary:
496
+ steps:
497
+ - setWeight: 5
498
+ - pause: {duration: 10m}
499
+ - setWeight: 20
500
+ - pause: {duration: 10m}
501
+ - setWeight: 50
502
+ - pause: {duration: 10m}
503
+ - setWeight: 80
504
+ - pause: {duration: 10m}
505
+ analysis:
506
+ templates:
507
+ - templateName: success-rate
508
+ startingStep: 2
509
+ args:
510
+ - name: service-name
511
+ value: api-service-canary
512
+ selector:
513
+ matchLabels:
514
+ app: api-service
515
+ template:
516
+ # Pod template
517
+ ```
518
+
519
+ ### 3. 密钥管理
520
+
521
+ ```yaml
522
+ # 使用 Sealed Secrets 或 External Secrets
523
+ apiVersion: external-secrets.io/v1beta1
524
+ kind: ExternalSecret
525
+ metadata:
526
+ name: api-secrets
527
+ namespace: production
528
+ spec:
529
+ refreshInterval: 1h
530
+ secretStoreRef:
531
+ name: vault-backend
532
+ kind: ClusterSecretStore
533
+ target:
534
+ name: api-secrets
535
+ creationPolicy: Owner
536
+ data:
537
+ - secretKey: db-password
538
+ remoteRef:
539
+ key: secret/data/production/api
540
+ property: db_password
541
+ ```
542
+
543
+ ### 4. 资源钩子
544
+
545
+ ```yaml
546
+ # PreSync 钩子 - 数据库迁移
547
+ apiVersion: batch/v1
548
+ kind: Job
549
+ metadata:
550
+ name: db-migration
551
+ annotations:
552
+ argocd.argoproj.io/hook: PreSync
553
+ argocd.argoproj.io/hook-delete-policy: HookSucceeded
554
+ spec:
555
+ template:
556
+ spec:
557
+ containers:
558
+ - name: migration
559
+ image: migration-tool:v1.0.0
560
+ command: ["./migrate.sh"]
561
+ restartPolicy: Never
562
+ backoffLimit: 0
563
+
564
+ ---
565
+ # PostSync 钩子 - 通知
566
+ apiVersion: batch/v1
567
+ kind: Job
568
+ metadata:
569
+ name: notify-deployment
570
+ annotations:
571
+ argocd.argoproj.io/hook: PostSync
572
+ argocd.argoproj.io/hook-delete-policy: HookSucceeded
573
+ spec:
574
+ template:
575
+ spec:
576
+ containers:
577
+ - name: notify
578
+ image: curlimages/curl
579
+ command:
580
+ - curl
581
+ - -X
582
+ - POST
583
+ - -H
584
+ - 'Content-Type: application/json'
585
+ - -d
586
+ - '{"text":"Deployment completed"}'
587
+ - https://hooks.slack.com/services/xxx
588
+ restartPolicy: Never
589
+ ```
590
+
591
+ ## 反模式
592
+
593
+ ### 禁止操作
594
+
595
+ ```yaml
596
+ # [FAIL] 禁止:手动修改集群资源
597
+ kubectl edit deployment api-service
598
+
599
+ # [FAIL] 禁止:禁用自动同步漂移检测
600
+ syncPolicy:
601
+ automated:
602
+ selfHeal: false # 应该为 true
603
+
604
+ # [FAIL] 禁止:直接提交 Secret 明文
605
+ apiVersion: v1
606
+ kind: Secret
607
+ metadata:
608
+ name: api-secret
609
+ stringData:
610
+ password: "plaintext-password" # 应使用 SealedSecret
611
+
612
+ # [FAIL] 禁止:使用 latest 标签
613
+ image: myapp:latest # 应使用固定版本
614
+
615
+ # [FAIL] 禁止:忽略资源冲突
616
+ ignoreDifferences:
617
+ - group: '*'
618
+ kind: '*' # 过于宽泛
619
+
620
+ # [FAIL] 禁止:生产环境自动同步无审批
621
+ syncPolicy:
622
+ automated:
623
+ prune: true
624
+ selfHeal: true # 生产环境应有审批流程
625
+ ```
626
+
627
+ ## 实战案例
628
+
629
+ ### 案例 1:紧急修复回滚
630
+
631
+ ```bash
632
+ # 1. 禁用自动同步
633
+ argocd app set production-api --sync-policy none
634
+
635
+ # 2. 回滚到上一个版本
636
+ argocd app rollback production-api
637
+
638
+ # 3. 或者回滚到特定版本
639
+ argocd app history production-api
640
+ argocd app rollback production-api <revision>
641
+
642
+ # 4. 修复代码并推送
643
+ git revert <commit>
644
+ git push
645
+
646
+ # 5. 重新启用自动同步
647
+ argocd app set production-api --sync-policy automated
648
+ ```
649
+
650
+ ### 案例 2:多集群部署
651
+
652
+ ```yaml
653
+ # 添加远程集群
654
+ apiVersion: v1
655
+ kind: Secret
656
+ metadata:
657
+ name: cluster-production-useast
658
+ namespace: argocd
659
+ labels:
660
+ argocd.argoproj.io/secret-type: cluster
661
+ type: Opaque
662
+ stringData:
663
+ name: production-useast
664
+ server: https://production-useast.example.com
665
+ config: |
666
+ {
667
+ "bearerToken": "<token>",
668
+ "tlsClientConfig": {
669
+ "insecure": false,
670
+ "caData": "<base64-ca>"
671
+ }
672
+ }
673
+
674
+ ---
675
+ # ApplicationSet 多集群部署
676
+ apiVersion: argoproj.io/v1alpha1
677
+ kind: ApplicationSet
678
+ metadata:
679
+ name: multi-cluster-apps
680
+ namespace: argocd
681
+ spec:
682
+ generators:
683
+ - clusters:
684
+ selector:
685
+ matchLabels:
686
+ environment: production
687
+ template:
688
+ metadata:
689
+ name: '{{name}}-api-service'
690
+ spec:
691
+ project: production
692
+ source:
693
+ repoURL: https://github.com/org/k8s-configs
694
+ path: apps/api-service
695
+ targetRevision: main
696
+ destination:
697
+ server: '{{server}}'
698
+ namespace: production
699
+ ```
700
+
701
+ ### 案例 3:漂移检测和自愈
702
+
703
+ ```bash
704
+ # 手动触发漂移检测
705
+ argocd app diff production-api --refresh
706
+
707
+ # 查看差异详情
708
+ argocd app diff production-api --local ./manifests
709
+
710
+ # 强制同步修复漂移
711
+ argocd app sync production-api --force
712
+
713
+ # 查看同步状态
714
+ argocd app get production-api --refresh
715
+ ```
716
+
717
+ ## 检查清单
718
+
719
+ ### 初始部署检查
720
+
721
+ - [ ] Git 仓库可访问
722
+ - [ ] ArgoCD 项目配置正确
723
+ - [ ] RBAC 权限配置
724
+ - [ ] 仓库凭证配置
725
+ - [ ] Application 创建成功
726
+ - [ ] 首次同步成功
727
+
728
+ ### 日常运维检查
729
+
730
+ - [ ] 应用状态为 Healthy
731
+ - [ ] 同步状态为 Synced
732
+ - [ ] 无漂移告警
733
+ - [ ] 通知配置正常
734
+ - [ ] 日志正常输出
735
+ - [ ] 资源配额合理
736
+
737
+ ### 发布检查
738
+
739
+ - [ ] Git 分支策略正确
740
+ - [ ] PR 审核完成
741
+ - [ ] CI 测试通过
742
+ - [ ] 变更清单确认
743
+ - [ ] 回滚方案准备
744
+ - [ ] 监控告警配置
745
+
746
+ ### 安全检查
747
+
748
+ - [ ] RBAC 最小权限
749
+ - [ ] Secret 已加密
750
+ - [ ] Git 访问受控
751
+ - [ ] 审计日志启用
752
+ - [ ] SSO 集成正常
753
+
754
+ ## 参考资料
755
+
756
+ - [ArgoCD 官方文档](https://argo-cd.readthedocs.io/)
757
+ - [ArgoCD 最佳实践](https://argo-cd.readthedocs.io/en/stable/user-guide/best_practices/)
758
+ - [GitOps 原则](https://opengitops.dev/)
759
+ - [Kustomize 文档](https://kubectl.docs.kubernetes.io/guides/introduction/kustomize/)
760
+ - [Argo Rollouts](https://argoproj.github.io/argo-rollouts/)