본문으로 건너뛰기
cccskills
무료GitHub에 공개

hypershift:cluster

Create and destroy HyperShift clusters on AWS for testing Rossoctl platform. Manages ephemeral OpenShift clusters.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rossoctl/rossoctl스타 303(GitHub 303 + cccskills 0)
연동 도구AWS

실행 점수 미검증

설치 방법 보기

포함된 파일(1)

  • SKILL.md5.2 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

HyperShift Cluster Management Skill

Create, destroy, and manage HyperShift clusters on AWS for testing.

When to Use

  • Need to create a test OpenShift cluster on AWS
  • Destroying a cluster after testing
  • User asks "create hypershift cluster" or "destroy cluster"
  • Testing Rossoctl on real OpenShift (not Kind)

Prerequisites

Before creating clusters, ensure setup is complete:

# 1. Run preflight check
./.github/scripts/hypershift/preflight-check.sh

# 2. Setup credentials (first time only, requires IAM admin)
./.github/scripts/hypershift/setup-hypershift-ci-credentials.sh

# 3. Setup local tools (hcp CLI, ansible, etc.)
./.github/scripts/hypershift/local-setup.sh

Create Cluster

Quick Create (Default Suffix)

# Creates: rossoctl-hypershift-custom-<username>
./.github/scripts/hypershift/create-cluster.sh

Create with Custom Suffix

# Creates: rossoctl-hypershift-custom-pr529
./.github/scripts/hypershift/create-cluster.sh pr529

# Creates: rossoctl-hypershift-custom-mytest
./.github/scripts/hypershift/create-cluster.sh mytest

Create with Custom Configuration

# More worker nodes and larger instances
REPLICAS=3 INSTANCE_TYPE=m5.2xlarge ./.github/scripts/hypershift/create-cluster.sh

# Specific OCP version
OCP_VERSION=4.19.5 ./.github/scripts/hypershift/create-cluster.sh

Environment Variables

VariableDefaultDescription
REPLICAS2Number of worker nodes
INSTANCE_TYPEm5.xlargeAWS instance type
OCP_VERSION4.20.11OpenShift version
CLUSTER_SUFFIXusernameSuffix for cluster name
MANAGED_BY_TAGrossoctl-hypershift-customIAM scope prefix

Destroy Cluster

Quick Destroy

# Destroy by suffix
./.github/scripts/hypershift/destroy-cluster.sh <suffix>

# Examples:
./.github/scripts/hypershift/destroy-cluster.sh pr529
./.github/scripts/hypershift/destroy-cluster.sh ladas

Destroy by Full Name

./.github/scripts/hypershift/destroy-cluster.sh rossoctl-hypershift-custom-pr529

After Cluster Creation

The create script outputs next steps. Typical workflow:

# 1. Set kubeconfig to new cluster
export KUBECONFIG=~/clusters/hcp/<cluster-name>/auth/kubeconfig

# 2. Verify cluster access
oc get nodes
oc get clusterversion

# 3. Deploy Rossoctl platform
./.github/scripts/operator/30-run-installer.sh --env ocp
./.github/scripts/operator/41-wait-crds.sh

# 4. Deploy demo agents
./.github/scripts/operator/71-build-weather-tool.sh
./.github/scripts/operator/72-deploy-weather-tool.sh
./.github/scripts/operator/74-deploy-weather-agent.sh

# 5. Run E2E tests
export AGENT_URL="https://$(oc get route -n team1 weather-service -o jsonpath='{.spec.host}')"
export ROSSOCTL_CONFIG_FILE=deployments/envs/ocp_values.yaml
./.github/scripts/operator/90-run-e2e-tests.sh

Full Test Workflow

Use the full test script for complete workflow:

# Full test: create cluster -> deploy -> test -> keep cluster
./.github/scripts/local-setup/hypershift-full-test.sh --skip-cluster-destroy

# With custom suffix
./.github/scripts/local-setup/hypershift-full-test.sh pr123 --skip-cluster-destroy

# Include cleanup after test
./.github/scripts/local-setup/hypershift-full-test.sh --include-cluster-destroy

Cluster Naming

Clusters are named: ${MANAGED_BY_TAG}-${CLUSTER_SUFFIX}

MANAGED_BY_TAGUse CaseExample
rossoctl-hypershift-customLocal development (default)rossoctl-hypershift-custom-ladas
rossoctl-hypershift-ciCI/CD pipelinesrossoctl-hypershift-ci-pr529

Troubleshooting

Cluster Creation Stuck

# Check HostedCluster status (use management cluster kubeconfig)
source .env.rossoctl-hypershift-custom  # or .env.hypershift-ci
oc get hostedcluster -n clusters

# Check conditions
oc get hostedcluster -n clusters <cluster-name> -o jsonpath='{range .status.conditions[*]}{.type}{": "}{.status}{" - "}{.message}{"\n"}{end}'

# Check NodePool
oc get nodepool -n clusters <cluster-name>

Cluster Deletion Stuck

# Debug AWS resources
./.github/scripts/hypershift/debug-aws-hypershift.sh <cluster-name>

# Force remove finalizer (only if AWS resources are cleaned)
oc patch hostedcluster -n clusters <cluster-name> -p '{"metadata":{"finalizers":null}}' --type=merge

Control Plane Namespace Issues

# If namespace is stuck terminating
oc delete ns clusters-<cluster-name> --wait=false
oc patch ns clusters-<cluster-name> -p '{"metadata":{"finalizers":null}}' --type=merge

Check AWS Quotas

# Before creating clusters, check capacity
./.github/scripts/hypershift/check-quotas.sh

Related Skills

  • hypershift:setup: Setup local environment for HyperShift
  • hypershift:preflight: Run pre-flight checks
  • hypershift:quotas: Check AWS quotas
  • hypershift:debug: Debug AWS resources for stuck clusters

Related Documentation

  • .github/scripts/local-setup/README.md - Local setup documentation
  • docs/hypershift-hcp-research.md - HyperShift research and architecture

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

auth

무료

Authentication and authorization patterns for Rossoctl services

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rossoctl/rossoctl3032026년 10월 25일 업데이트

Create confidential OAuth2 clients in Keycloak for server-to-service authentication

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rossoctl/rossoctl3032026년 10월 25일 업데이트

Configure MLflow with mlflow-oidc-auth plugin for Keycloak OIDC authentication

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rossoctl/rossoctl3032026년 10월 25일 업데이트

Configure OpenTelemetry Collector with OAuth2 authentication for trace export

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rossoctl/rossoctl3032026년 10월 25일 업데이트

ci

무료

CI pipeline monitoring, status checks, and PR validation workflows

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rossoctl/rossoctl3032026년 10월 25일 업데이트

Monitor running CI jobs, wait for completion, create tasks for results

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rossoctl/rossoctl3032026년 10월 25일 업데이트

rossoctl의 스킬 모두 보기

이 스킬의 문제 신고