Skip to content

Reprovision the linuxone s390x machines #2080

Description

@AshCripps

The current linuxone machines *-rhel72-s390x-* will be switched off in the new year and we are being migrated to a new data (EDIT(sam): "new datacentre's") machines

We have been given access to the five replacement machines and work is being undertaken to ansible them and set them up for ci

Activity

  1. AshCripps commented on Dec 13, 2019

    @AshCripps
    MemberAuthor

    All five machine have been ansibled and a build+test passes.

    Next steps:

    • Add machines to Jenkins
    • Test builds pass on the release and test machines
    • Begin to switch over the jobs to these new machines (will need new jobs I think)
    • Deprovision the old s390x machines as they will be turned off by the end of the year
  2. richardlau commented on Dec 13, 2019

    @richardlau
    Member
    • Begin to switch over the jobs to these new machines (will need new jobs I think)

    We shouldn't need new jobs.

  3. sam-github commented on Dec 18, 2019

    @sam-github
    Contributor

    Note: need to change the /data reference to:

    /home/iojs/git/io.js.reference

    in the main job when I switch the labels.

  4. sam-github commented on Dec 18, 2019

    @sam-github
    Contributor

    Failed:

    10:03:04 Started by upstream project "node-test-commit-linuxone-sam-github" build number 8
    10:03:04 originally caused by:
    10:03:04  Started by user Sam Roberts
    10:03:04 Running as SYSTEM
    10:03:04 [EnvInject] - Loading node environment variables.
    10:03:04 Building remotely on test-ibm-rhel7-s390x-4 (7.7 s390x-RedHatEnterprise RedHatEnterprise-7.7 rhel7-s390x s390x-RedHatEnterprise-7.7 RedHatEnterprise s390x) in workspace /home/iojs/build/workspace/node-test-commit-linuxone-sam-github/nodes/rhel7-s390x
    10:03:04 Also:   hudson.remoting.Channel$CallSiteStackTrace: Remote call to JNLP4-connect connection from 148.100.86.94/148.100.86.94:38882
    10:03:04 java.lang.NoClassDefFoundError: Could not initialize class com.sun.proxy.$Proxy11
    10:03:04 Caused: java.io.IOException: Remote call on JNLP4-connect connection from 148.100.86.94/148.100.86.94:38882 failed
    

    Tried again, I think https://ci.nodejs.org/computer/test-ibm-rhel7-s390x-4 is broken, taking it offline.

  5. sam-github commented on Dec 18, 2019

    @sam-github
    Contributor

    not ok 2109 sequential/test-timers-throw-reschedule # TODO : Fix flaky test

    ci-release:

    If builds are PASS on all the machines, I will change the build label in node-test-commit-linuxone from rhel72-s390x to rhel7-s390x. Once that's green for a while, we'll remove the old machines.

  6. richardlau commented on Dec 18, 2019

    @richardlau
    Member

    If builds are PASS on all the machines, I will change the build label in node-test-commit-linuxone from rhel72-s390x to rhel7-s390x. Once that's green for a while, we'll remove the old machines.

    We will need to update the other jobs that build on Linux One (e.g. CITGM, libuv, V8, node-addons-api) before removing the old machines. I can start updating some of those in a few hours time.

  7. sam-github commented on Dec 18, 2019

    @sam-github
    Contributor

    Thanks for the reminder, and that'd be great, thanks.

    Switch node-test-commit-linuxone to the new machines:

  8. richardlau commented on Dec 19, 2019

    @richardlau
    Member
  9. 41 remaining items

  10. sam-github commented on Dec 31, 2019

    @sam-github
    Contributor

    Took the old rhel s390x machine offline in ci-release.

    The last step I need someone from @nodejs/releasers to check: is the release ssh key setup correctly?

    Please try:

    ssh release-ibm-rhel7-s390x-1
    

    I'm not on releasers, so I don't have the private key, so I can't confirm. I can ssh in use the IBM mgmt key, so I copied the authorized ssh key from the AIX machines.

    I think that's all the release specific setup needed.

  11. targos commented on Dec 31, 2019

    @targos
    Member

    Releasers don't ssh into release machines. I'm not aware of having access to any of the existing ones

  12. sam-github commented on Dec 31, 2019

    @sam-github
    Contributor

    I looked more closely, it looks like the only people with ssh access to all the release machines are:

    % ls .gpg 
    'bugs@bergstroem.nu'         'reis@janeasystems.com'
    'michael_dawson@ca.ibm.com'  'rod@vagg.org'
    

    @jbergstroem @joaocgreis @rvagg @mhdawson --- can one of you confirm that ssh release-ibm-rhel7-s390x-1 works for you with the nodejs_build_release private key?

  13. joaocgreis commented on Jan 3, 2020

    @joaocgreis
    Member

    @sam-github it does not work for me (other release servers work though).

  14. sam-github commented on Jan 3, 2020

    @sam-github
    Contributor

    @joaocgreis do you think you could fix that? I'm not a member of the releasers team, so I don't have access to the secrets, so I'm not in a great position to put those secrets on the machine. If my copy of the .ssh authorized keys across didn't work, I'm not sure what else I can do.

  15. sam-github commented on Jan 3, 2020

    @sam-github
    Contributor

    @joaocgreis contacted me offline, and helped get the correct releasers key onto the release box, so any with release infrastructure access should be able to ssh in.

  16. mhdawson commented on Jan 6, 2020

    @mhdawson
    Member

    @sam-github ssh-d into the the release rhel7 with the nodejs_build_release key.

  17. sam-github commented on Jan 13, 2020

    @sam-github
    Contributor
  18. sam-github commented on Jan 13, 2020

    @sam-github
    Contributor

    https://ci.nodejs.org/computer/test-ibm-rhel7-s390x-1/ -- does anybody know where the labels come from?

    rhel7-s390x is explicitly configured in https://ci.nodejs.org/computer/test-ibm-rhel7-s390x-1/configure, and it is used, all the others are unused (they have no jobs that use them). I was going to clean up the unused lables, but I don't see how. Its messy and confusing, but it doesn't cause any operational problems.

  19. sam-github commented on Jan 13, 2020

    @sam-github
    Contributor

    Nothing left to do, the label cleanup is unrelated tidying.

  20. richardlau commented on Jan 13, 2020

    @richardlau
    Member

    https://ci.nodejs.org/computer/test-ibm-rhel7-s390x-1/ -- does anybody know where the labels come from?

    rhel7-s390x is explicitly configured in https://ci.nodejs.org/computer/test-ibm-rhel7-s390x-1/configure, and it is used, all the others are unused (they have no jobs that use them). I was going to clean up the unused lables, but I don't see how. Its messy and confusing, but it doesn't cause any operational problems.

    I think they're coming from this plugin: https://github.com/jenkinsci/platformlabeler-plugin
    image

  21. sam-github commented on Jan 13, 2020

    @sam-github
    Contributor

    @richardlau OK, that makes sense. I'll assume we are using that.

  22. richardlau commented on Jan 13, 2020

    @richardlau
    Member

    @richardlau OK, that makes sense. I'll assume we are using that.

    We are. When I first posted I was searching through the list of plugins installed in our Jenkins for the word label and picked out the most plausible sounding one (after reading the description on the linked page). I've subsequently found the configuration page where it's enabled and posted the screenshot as an edit to my previous comment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions