[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6FFAQJ1HM9A4EW9THVT7NDA":3,"skill-same:01M6FFAQJ1HM9A4EW9THVT7NDA":48},{"skillNo":4,"name":5,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":21,"linkOnly":22,"markdownContent":23,"markdownBody":23,"frontMatter":24,"refName":25,"commitSha":26,"skillDirectory":27,"forksCount":28,"repositoryHtmlUrl":29,"repositoryHomepageUrl":30,"ownerHtmlUrl":31,"ownerBlogUrl":6,"ownerDescription":32,"updatedAt":33,"install":34,"resources":47},"01M6FFAQJ1HM9A4EW9THVT7NDA","istio-traffic-management",null,"ComeOnOliver\u002Fskillshub","ComeOnOliver","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F43215937?v=4","01M6E5JNFECJAAVFE0W7SMWWD2","Haoran Shu","01M6E5JNNDQS7AJZDYFQ8TPZCK",66,"MIT","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Frmyndharis\u002Fantigravity-skills\u002Fistio-traffic-management\u002FSKILL.md",[],[18,19,20],"istio","management","istio traffic management","2026-11-10 10:12:30",false,"# Istio Traffic Management\n\nComprehensive guide to Istio traffic management for production service mesh deployments.\n\n## Do not use this skill when\n\n- The task is unrelated to istio traffic management\n- You need a different domain or tool outside this scope\n\n## Instructions\n\n- Clarify goals, constraints, and required inputs.\n- Apply relevant best practices and validate outcomes.\n- Provide actionable steps and verification.\n- If detailed examples are required, open `resources\u002Fimplementation-playbook.md`.\n\n## Use this skill when\n\n- Configuring service-to-service routing\n- Implementing canary or blue-green deployments\n- Setting up circuit breakers and retries\n- Load balancing configuration\n- Traffic mirroring for testing\n- Fault injection for chaos engineering\n\n## Core Concepts\n\n### 1. Traffic Management Resources\n\n| Resource | Purpose | Scope |\n|----------|---------|-------|\n| **VirtualService** | Route traffic to destinations | Host-based |\n| **DestinationRule** | Define policies after routing | Service-based |\n| **Gateway** | Configure ingress\u002Fegress | Cluster edge |\n| **ServiceEntry** | Add external services | Mesh-wide |\n\n### 2. Traffic Flow\n\n```\nClient → Gateway → VirtualService → DestinationRule → Service\n                   (routing)        (policies)        (pods)\n```\n\n## Templates\n\n### Template 1: Basic Routing\n\n```yaml\napiVersion: networking.istio.io\u002Fv1beta1\nkind: VirtualService\nmetadata:\n  name: reviews-route\n  namespace: bookinfo\nspec:\n  hosts:\n    - reviews\n  http:\n    - match:\n        - headers:\n            end-user:\n              exact: jason\n      route:\n        - destination:\n            host: reviews\n            subset: v2\n    - route:\n        - destination:\n            host: reviews\n            subset: v1\n---\napiVersion: networking.istio.io\u002Fv1beta1\nkind: DestinationRule\nmetadata:\n  name: reviews-destination\n  namespace: bookinfo\nspec:\n  host: reviews\n  subsets:\n    - name: v1\n      labels:\n        version: v1\n    - name: v2\n      labels:\n        version: v2\n    - name: v3\n      labels:\n        version: v3\n```\n\n### Template 2: Canary Deployment\n\n```yaml\napiVersion: networking.istio.io\u002Fv1beta1\nkind: VirtualService\nmetadata:\n  name: my-service-canary\nspec:\n  hosts:\n    - my-service\n  http:\n    - route:\n        - destination:\n            host: my-service\n            subset: stable\n          weight: 90\n        - destination:\n            host: my-service\n            subset: canary\n          weight: 10\n---\napiVersion: networking.istio.io\u002Fv1beta1\nkind: DestinationRule\nmetadata:\n  name: my-service-dr\nspec:\n  host: my-service\n  trafficPolicy:\n    connectionPool:\n      tcp:\n        maxConnections: 100\n      http:\n        h2UpgradePolicy: UPGRADE\n        http1MaxPendingRequests: 100\n        http2MaxRequests: 1000\n  subsets:\n    - name: stable\n      labels:\n        version: stable\n    - name: canary\n      labels:\n        version: canary\n```\n\n### Template 3: Circuit Breaker\n\n```yaml\napiVersion: networking.istio.io\u002Fv1beta1\nkind: DestinationRule\nmetadata:\n  name: circuit-breaker\nspec:\n  host: my-service\n  trafficPolicy:\n    connectionPool:\n      tcp:\n        maxConnections: 100\n      http:\n        http1MaxPendingRequests: 100\n        http2MaxRequests: 1000\n        maxRequestsPerConnection: 10\n        maxRetries: 3\n    outlierDetection:\n      consecutive5xxErrors: 5\n      interval: 30s\n      baseEjectionTime: 30s\n      maxEjectionPercent: 50\n      minHealthPercent: 30\n```\n\n### Template 4: Retry and Timeout\n\n```yaml\napiVersion: networking.istio.io\u002Fv1beta1\nkind: VirtualService\nmetadata:\n  name: ratings-retry\nspec:\n  hosts:\n    - ratings\n  http:\n    - route:\n        - destination:\n            host: ratings\n      timeout: 10s\n      retries:\n        attempts: 3\n        perTryTimeout: 3s\n        retryOn: connect-failure,refused-stream,unavailable,cancelled,retriable-4xx,503\n        retryRemoteLocalities: true\n```\n\n### Template 5: Traffic Mirroring\n\n```yaml\napiVersion: networking.istio.io\u002Fv1beta1\nkind: VirtualService\nmetadata:\n  name: mirror-traffic\nspec:\n  hosts:\n    - my-service\n  http:\n    - route:\n        - destination:\n            host: my-service\n            subset: v1\n      mirror:\n        host: my-service\n        subset: v2\n      mirrorPercentage:\n        value: 100.0\n```\n\n### Template 6: Fault Injection\n\n```yaml\napiVersion: networking.istio.io\u002Fv1beta1\nkind: VirtualService\nmetadata:\n  name: fault-injection\nspec:\n  hosts:\n    - ratings\n  http:\n    - fault:\n        delay:\n          percentage:\n            value: 10\n          fixedDelay: 5s\n        abort:\n          percentage:\n            value: 5\n          httpStatus: 503\n      route:\n        - destination:\n            host: ratings\n```\n\n### Template 7: Ingress Gateway\n\n```yaml\napiVersion: networking.istio.io\u002Fv1beta1\nkind: Gateway\nmetadata:\n  name: my-gateway\nspec:\n  selector:\n    istio: ingressgateway\n  servers:\n    - port:\n        number: 443\n        name: https\n        protocol: HTTPS\n      tls:\n        mode: SIMPLE\n        credentialName: my-tls-secret\n      hosts:\n        - \"*.example.com\"\n---\napiVersion: networking.istio.io\u002Fv1beta1\nkind: VirtualService\nmetadata:\n  name: my-vs\nspec:\n  hosts:\n    - \"api.example.com\"\n  gateways:\n    - my-gateway\n  http:\n    - match:\n        - uri:\n            prefix: \u002Fapi\u002Fv1\n      route:\n        - destination:\n            host: api-service\n            port:\n              number: 8080\n```\n\n## Load Balancing Strategies\n\n```yaml\napiVersion: networking.istio.io\u002Fv1beta1\nkind: DestinationRule\nmetadata:\n  name: load-balancing\nspec:\n  host: my-service\n  trafficPolicy:\n    loadBalancer:\n      simple: ROUND_ROBIN  # or LEAST_CONN, RANDOM, PASSTHROUGH\n---\n# Consistent hashing for sticky sessions\napiVersion: networking.istio.io\u002Fv1beta1\nkind: DestinationRule\nmetadata:\n  name: sticky-sessions\nspec:\n  host: my-service\n  trafficPolicy:\n    loadBalancer:\n      consistentHash:\n        httpHeaderName: x-user-id\n        # or: httpCookie, useSourceIp, httpQueryParameterName\n```\n\n## Best Practices\n\n### Do's\n- **Start simple** - Add complexity incrementally\n- **Use subsets** - Version your services clearly\n- **Set timeouts** - Always configure reasonable timeouts\n- **Enable retries** - But with backoff and limits\n- **Monitor** - Use Kiali and Jaeger for visibility\n\n### Don'ts\n- **Don't over-retry** - Can cause cascading failures\n- **Don't ignore outlier detection** - Enable circuit breakers\n- **Don't mirror to production** - Mirror to test environments\n- **Don't skip canary** - Test with small traffic percentage first\n\n## Debugging Commands\n\n```bash\n# Check VirtualService configuration\nistioctl analyze\n\n# View effective routes\nistioctl proxy-config routes deploy\u002Fmy-app -o json\n\n# Check endpoint discovery\nistioctl proxy-config endpoints deploy\u002Fmy-app\n\n# Debug traffic\nistioctl proxy-config log deploy\u002Fmy-app --level debug\n```\n\n## Resources\n\n- [Istio Traffic Management](https:\u002F\u002Fistio.io\u002Flatest\u002Fdocs\u002Fconcepts\u002Ftraffic-management\u002F)\n- [Virtual Service Reference](https:\u002F\u002Fistio.io\u002Flatest\u002Fdocs\u002Freference\u002Fconfig\u002Fnetworking\u002Fvirtual-service\u002F)\n- [Destination Rule Reference](https:\u002F\u002Fistio.io\u002Flatest\u002Fdocs\u002Freference\u002Fconfig\u002Fnetworking\u002Fdestination-rule\u002F)\n",{},"main","def8531e65114c0fca8fb8551c1871ee0eed705c","skills\u002Frmyndharis\u002Fantigravity-skills\u002Fistio-traffic-management",24,"https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub","https:\u002F\u002Fskillshub.wtf","https:\u002F\u002Fgithub.com\u002FComeOnOliver","AI & Blockchain Engineer\r\n","2026-06-24 22:07:19",{"source":7,"skillName":5,"commands":35,"prompt":45,"zipAvailable":46},[36,39,42],{"tool":37,"command":38},"npx","npx skills add ComeOnOliver\u002Fskillshub --skill istio-traffic-management",{"tool":40,"command":41},"bunx","bunx skills add ComeOnOliver\u002Fskillshub --skill istio-traffic-management",{"tool":43,"command":44},"pnpm","pnpm dlx skills add ComeOnOliver\u002Fskillshub --skill istio-traffic-management","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Frmyndharis\u002Fantigravity-skills\u002Fistio-traffic-management\u002FSKILL.md",true,[],[49,63,73,82,88,95],{"skillNo":50,"name":51,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":52,"categories":53,"keywords":59,"publishedAt":21},"01M6FKJN13GMG4KY57J3QD8GY5","model-hierarchy-skill","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzscole\u002Fmodel-hierarchy-skill\u002Fmodel-hierarchy-skill\u002FSKILL.md",[54],{"categoryNo":55,"categoryName":56,"taxonomyType":57,"taxonomyTypeDesc":58},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[60,61,62],"model","model hierarchy","model hierarchy skill",{"skillNo":64,"name":65,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":66,"categories":67,"keywords":69,"publishedAt":21},"01M6FKJJJ6GCAMR4PPPRD12M5X","zoom-mcp","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-mcp\u002FSKILL.md",[68],{"categoryNo":55,"categoryName":56,"taxonomyType":57,"taxonomyTypeDesc":58},[70,71,72],"MCP","zoom","zoom mcp",{"skillNo":74,"name":75,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":76,"categories":77,"keywords":78,"publishedAt":21},"01M6FKJE3KYT3KPEZMEEHYKA6K","zoom-apps-sdk","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-apps-sdk\u002FSKILL.md",[],[79,80,81,71],"sdk","zoom apps sdk","apps",{"skillNo":83,"name":84,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":87,"publishedAt":21},"01M6FKJ9EDH9Q5VWDF8HAJRSP0","windows","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwindows\u002FSKILL.md",[],[84],{"skillNo":89,"name":90,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":91,"categories":92,"keywords":94,"publishedAt":21},"01M6FKJ666BEEFC3AE9GJ72Q93","whiteboard","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwhiteboard\u002FSKILL.md",[93],{"categoryNo":55,"categoryName":56,"taxonomyType":57,"taxonomyTypeDesc":58},[90],{"skillNo":96,"name":97,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":98,"categories":99,"keywords":100,"publishedAt":21},"01M6FKJ21WFCDGTJQ2Q91T9DVW","websockets","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwebsockets\u002FSKILL.md",[],[97]]