{"id":17877131,"url":"https://github.com/herrjulz/eirini-director-dev","last_synced_at":"2026-01-16T01:41:43.560Z","repository":{"id":69923601,"uuid":"132999298","full_name":"herrjulz/eirini-director-dev","owner":"herrjulz","description":null,"archived":false,"fork":false,"pushed_at":"2018-05-16T16:43:40.000Z","size":118,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-08T15:14:05.652Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/herrjulz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-05-11T06:35:13.000Z","updated_at":"2018-05-16T16:43:42.000Z","dependencies_parsed_at":"2023-06-26T01:01:35.984Z","dependency_job_id":null,"html_url":"https://github.com/herrjulz/eirini-director-dev","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herrjulz%2Feirini-director-dev","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herrjulz%2Feirini-director-dev/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herrjulz%2Feirini-director-dev/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herrjulz%2Feirini-director-dev/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/herrjulz","download_url":"https://codeload.github.com/herrjulz/eirini-director-dev/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246916743,"owners_count":20854511,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-28T11:45:24.195Z","updated_at":"2026-01-16T01:41:43.522Z","avatar_url":"https://github.com/herrjulz.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# State Repository for Eirini-Director-Dev\n\n## Working with the director locally\n\n### Prereqs\n\n- Install [Bosh-CLI](https://bosh.io/docs/cli-v2/)\n- Get Softlayer VPN Access\n\n### Auth to director\n\n1. Connect with VPN!\n\n1. Update you /etc/hosts file with the following entry:\n\n  ```\n  \u003ceirini-dev-ip\u003e eirini-dev.softlayer.com\n  ```\n\n1. Export auth variables\n\n\n   ```\n   $ export BOSH_CLIENT=admin \u0026\u0026 export BOSH_CLIENT_SECRET=`bosh int ./environments/softlayer/director/eirini-dev/vars.yml --path /admin_password`\n   ```\n\n1. Alias you environment (if not happend already)\n\n   ```\n   bosh -e eirini-dev.softlayer.com --ca-cert \u003c(bosh int ./environments/softlayer/director/eirini-dev/vars.yml --path /director_ssl/ca) alias-env eirini-dev)\n   ```\n\n1. Do a quick test with `bosh -e eirini-dev vms`\n\n\n### SSH to some cf component\n\n1. Setup ssh tunnel\n\n  ```\n  $ ssh -4 -D 5001 -fNC jumpbox@eirini-dev.softlayer.com -i ./environments/softlayer/director/eirini-dev/jumpbox.key\n  ```\n\n1. Use BOSH_ALL_PROXY env variable to ssh \n\n  ```\n  $ BOSH_ALL_PROXY=socks5://localhost:5001 bosh -e eirini-dev -d cf ssh cube\n  ```\n\n## Initial Director Setup\n\nWhen a director was setup, you will need to add two `iptable` rules to the NAT table, which redirect requests to the eirni `registry` and `sync` process:\n\n1. SSH to the director \n\n  ```\n  $ ssh root@eirini-dev.softlayer.com\n  ```\n\n  INFO: Password can be looked up in SL\n  INFO: In case you get a \"too many authentication failures for user root\", you will need clear ssh hosts: `$ ssh-add -D`\n\n1. Update iptables\n\n```\n# SYNC\n$ iptables -t nat -I PREROUTING 2 -p tcp --dport 8090 -j DNAT --to 10.244.0.142:8085\n\n# REGISTRY\niptables -t nat -I PREROUTING 2 -p tcp --dport 8089 -j DNAT --to 10.244.0.142:8080\n```\n\n## Initial Kubernetes Setup\n\nAs long as we use our own eirni registry (which is not secure), we will need to add insecure-registry to the worker nodes. This can be done by running a container with privileged rights and the `/etc` direcotry of the host bin mounted. You can do that by running the following pod:\n\n```\napiVersion: v1\nkind: Pod\nmetadata:\n  name: privileged\nspec:\n  securityContext:\n    runAsUser: 0\n    fsGroup: 0\n  volumes:\n  - name: etc\n    hostPath:\n      path: /etc\n      type: Directory\n  containers:\n  - name: etc-try\n    command:\n    - \"/bin/bash\"\n    - \"-c\"\n    - \"--\"\n    args:\n    - \"while true; do sleep 30; done;\"\n    image: ubuntu\n    volumeMounts:\n    - name: etc\n      mountPath: /workspace/etc\n    securityContext:\n      allowPrivilegeEscalation: true\n      privileged: true\n      runAsUser: 0\n```\n\nLogin to the kubernetes cluster and run:\n\n```\n$ kubectl apply -f \u003ctheYamlFile\u003e\n```\n\nAttach to the running container:\n\n```\n$ kubectl exec -it privileged /bin/bash\n```\n\nGo to `/workspace/etc/docker/` and add the registry to the daemon.json (if it not exists create it):\n\n```\n{\n  \"insecure_registries\":[\"registry-endpoint\"]\n}\n```\n\n## Login to CF \n\n### Prereqs\n\n- Install CF CLI \n\n### Login\n\n1. Auth as admin using the admin password\n\n```\ncf auth admin $(bosh int ./cf-deployment/deployment-vars.yml --path /cf_admin_password)\n```\n\n1. If not happend, create a org and a space for eirini\n\n  ```\n  $ cf create-org eirini \n  $ cf target -o eirini \n  $ cf create-space dev\n  $ cf target -s dev \n  ```\n  otherwise you can simply target org and dev by executing:\n\n  ```\n  $ cf target -o eirini -s dev \n  ```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fherrjulz%2Feirini-director-dev","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fherrjulz%2Feirini-director-dev","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fherrjulz%2Feirini-director-dev/lists"}